Commit Graph

312 Commits

Author SHA1 Message Date
George Oikonomou
1ba2eac5cb Use slip_write to slip_send 2017-11-24 12:31:21 +00:00
George Oikonomou
f9e17a6c76 Document slip_write 2017-11-24 12:31:20 +00:00
George Oikonomou
3e93e21646 Change return type of slip_send to void
The return value was not checked anywhere in the code
2017-11-24 12:31:20 +00:00
George Oikonomou
38df9fdfb2 Change slip_write return type and use it where possible 2017-11-24 12:31:20 +00:00
George Oikonomou
8f2fa80401 Make SLIP stats properly configurable 2017-11-24 12:31:20 +00:00
George Oikonomou
7fd76dc23e Change variables to static 2017-11-24 12:31:20 +00:00
George Oikonomou
4522b5b942 Tidy-up file structure and code style 2017-11-24 12:31:20 +00:00
George Oikonomou
24b17e58b1 Remove dead code and obsolete comments 2017-11-24 12:31:20 +00:00
George Oikonomou
80bfbe67e8 Include headers unconditionally 2017-11-21 15:13:57 +00:00
Joakim Eriksson
a5039634d5 fixed rpl-classic bug and moved the two lifetime loops into one 2017-11-17 11:58:17 -08:00
Simon Duquennoy
cbdc3e4569 RPL non-storing mode: increase routing state lifetime by one period (60s) so as to ensure no link espired before its avertised lifetime 2017-11-17 11:58:17 -08:00
Simon Duquennoy
faf526b441
Merge branch 'develop' into contrib/remove-mt 2017-11-17 19:40:06 +01:00
Simon Duquennoy
83fb4b68b5
Merge branch 'develop' into contrib/traceroute 2017-11-17 17:26:17 +01:00
Atis Elsts
a211cb6e31 Allow to set a different number of MAC retransmissions for different classes of packets 2017-11-17 14:13:20 +00:00
Simon Duquennoy
0bd107b0a0 uIP6 forwarding: clearer log messages 2017-11-14 10:04:31 +01:00
Simon Duquennoy
071f542078 uIP6: check MTU, check and update TTL even in the case of routing header forwarding 2017-11-13 16:37:23 +01:00
Xenofon (Fontas) Fafoutis
f206ee6fe6 Bugfix in HAL for LEDs. Static variable leds removed.
Bugfix in HAL for LEDs. Inline function show_leds removed.
2017-11-13 15:10:23 +00:00
Xenofon (Fontas) Fafoutis
828ed7a9c6 Bugfix in HAL for LEDs. Static variable leds did not get updated. 2017-11-13 13:05:08 +00:00
Simon Duquennoy
0952960b91 Removing multi-threading support 2017-11-11 15:28:11 +01:00
Simon Duquennoy
80ddae94d0
Merge branch 'develop' into develop 2017-11-09 16:13:15 +01:00
Simon Duquennoy
1a4efcd38d
TSCH: when not sending KA, issue LOG_ERR rather than LOG_INFO 2017-11-09 16:13:00 +01:00
Simon Duquennoy
f5511dfbd5 Doxygen: add more descriptions in rpl-lite/rpl-types.h 2017-11-07 15:46:36 +01:00
Simon Duquennoy
ae9aaf7632 Doxygen: fix glitch that caused some of the rpl-lite not to be included in the documentation 2017-11-07 15:46:36 +01:00
Michael Karlsson
c33c10540a Avoid tsch crash when loosing timesource 2017-11-07 01:43:54 +01:00
Niclas Finne
36362a49d3 Added energest configuration to viewconf 2017-11-02 00:10:56 +01:00
Simon Duquennoy
1275c4cb9e
Merge pull request #139 from nfi/contrib/energest-deep-lpm
New energest type for deep sleep plus configurable type for Energest time source
2017-10-31 23:24:12 +01:00
George Oikonomou
73544572cf Change all calls to adhere to new prototype 2017-10-31 21:56:38 +00:00
George Oikonomou
e1df7be496 Change slip_arch_init prototype
All current platforms ignore the ubr argument, so we remove it
2017-10-31 21:56:38 +00:00
Niclas Finne
e6ba2664b8 energest: removed include of energest from contiki.h to avoid circular dependency 2017-10-31 22:18:17 +01:00
Niclas Finne
cffe0c59f2 energest: activate energest type CPU at init 2017-10-31 22:18:17 +01:00
Niclas Finne
1c4622bad6 energest: Added new energest type ENERGEST_TYPE_DEEP_LPM to support
energy estimations of both sleep and deep sleep CPU modes.

Added configurable type ENERGEST_TIME_T to re-add support for clocks with
wrapping time as energest time source.
2017-10-31 22:17:30 +01:00
Simon Duquennoy
d9ae1118ef
Merge pull request #137 from simonduq/pr/logging-fixes
Minor logging fixes
2017-10-31 22:04:46 +01:00
Simon Duquennoy
d494ee85c7 Fix logging in uip-ds6.c 2017-10-31 16:16:04 +01:00
Simon Duquennoy
3bb8123038 Fix RPL log message 2017-10-30 21:49:02 +00:00
George Oikonomou
d6872f8cd9 Extend documentation 2017-10-29 23:18:39 +00:00
Simon Duquennoy
0321da5e88 Main: initialize modules only after phase three 2017-10-29 23:18:39 +00:00
Simon Duquennoy
56d1f795ff Minor fixes to platform initialization 2017-10-29 23:18:38 +00:00
George Oikonomou
5cbb82b9e0 Remove definition of old startup verbosity macros 2017-10-29 23:18:38 +00:00
George Oikonomou
66aa99d78e Use the logging module (Main) 2017-10-29 23:18:37 +00:00
George Oikonomou
e9509be98c Extend the logging module to support the common main + platform-specific hooks 2017-10-29 23:18:37 +00:00
George Oikonomou
8de3ffbc2e Don't initialise the queuebuf unconditionally
Currently, it is only used by 6LoWPAN when fragmentation is enabled, by TSCH and by CSMA. Platforms that disable fragmentation and choose a different MAC layer (e.g. NULLMAC) will unnecessarily end up with the module linked in the image, wasting flash and/or RAM space.
2017-10-29 23:18:36 +00:00
George Oikonomou
adbe10881f Return a value in our main() 2017-10-29 23:18:36 +00:00
George Oikonomou
5d95f8bd54 Hand main()'s arguments over to the platform 2017-10-29 23:18:36 +00:00
George Oikonomou
c3c5668ccd Update documentation to use \os 2017-10-29 23:18:36 +00:00
George Oikonomou
f2ee2c706c Call startup sequence stage 3 later 2017-10-29 23:18:36 +00:00
George Oikonomou
f89da621d9 Allow our main to accept arguments 2017-10-29 23:18:36 +00:00
George Oikonomou
d776ba035b Allow the platform to provide its own main loop 2017-10-29 23:18:35 +00:00
George Oikonomou
476e311ea7 Initialise watchdogs in the common main 2017-10-29 23:18:35 +00:00
George Oikonomou
0ca938245f Add implementation of the common main routine 2017-10-29 23:18:35 +00:00
George Oikonomou
9c20dc37c2 Add header file and documentation for a common main 2017-10-29 23:18:34 +00:00
George Oikonomou
21f5ff8edf Fix RPL configuration in mcast scenarios 2017-10-28 21:46:46 +01:00
Simon Duquennoy
0f1dd71124 nbr-table: fix default value for NBR_TABLE_MAX_NEIGHBORS 2017-10-26 16:29:04 +02:00
George Oikonomou
521d5c5aec Make logging module/level prefix optional 2017-10-18 01:11:06 +01:00
Simon Duquennoy
882be25428 Merge pull request #94 from simonduq/pr/misc
Miscellaneous fixes
2017-10-14 09:24:45 +02:00
Simon Duquennoy
4d8277366d Merge pull request #97 from sics-iot/contrib/cleanup-energest
Made energest more configurable
2017-10-14 09:24:14 +02:00
Simon Duquennoy
12a953cd88 Merge pull request #98 from nvt/remove-arg-module
Remove obsolete argument buffer module
2017-10-14 09:19:45 +02:00
Joakim Eriksson
7af63c740c Merge pull request #96 from sics-iot/contrib/remove-radio-sensor
Removed obsolete radio-sensor API
2017-10-13 18:54:43 +02:00
Simon Duquennoy
40e6b4be61 Fix typo in comment 2017-10-13 16:55:59 +02:00
Nicolas Tsiftes
d0c7c7c0ec Remove obsolete argument buffer module. 2017-10-13 14:38:29 +02:00
Niclas Finne
c845ea7453 Removed obsolete library procinit 2017-10-13 13:23:23 +02:00
Niclas Finne
358385b450 Removed obsolete radio-sensor API 2017-10-13 01:06:47 +02:00
Niclas Finne
18b5f6d667 energest: made energest more configurable
* energest time defaults to rtimer but can be configured via
  ENERGEST_CONF_CURRENT_TIME and ENERGEST_CONF_SECOND.

* Additional energest types can be added by platform and application
  using ENERGEST_CONF_PLATFORM_ADDITIONS and ENERGEST_CONF_ADDITIONS.

* Energest times are now 64 bit and thereby non-wrapping in most systems.

* Removed unused energest types for serial and sensors.
2017-10-13 00:17:30 +02:00
Niclas Finne
888a04e70f energest: removed support for ENERGEST_CONF_LEVELDEVICE_LEVELS 2017-10-13 00:05:31 +02:00
Niclas Finne
7317316942 energest: removed energest type ENERGEST_TYPE_IRQ 2017-10-12 23:57:38 +02:00
Niclas Finne
8b930bfa06 energest: removed energest types for reading/writing flash 2017-10-12 23:53:31 +02:00
Niclas Finne
68a8a0c445 energest: removed energest types for LEDs 2017-10-12 23:52:03 +02:00
Simon Duquennoy
663d1f121d Autoconfigure Orchestra whenever the module is included 2017-10-12 18:32:19 +02:00
Simon Duquennoy
81fe587574 Shell-commands: RPL commands are only compatible with rpl-lite. Disable them when rpl-lite is not used. 2017-10-12 17:09:29 +02:00
Simon Duquennoy
623fdf4a96 Shell tsch-set-coordinator: enable setting security 2017-10-12 17:09:26 +02:00
Simon Duquennoy
d26e5fb489 TSCH: automatically leave the network when setting as coordinator/node 2017-10-12 17:09:23 +02:00
Simon Duquennoy
741a1d5816 Shell: stop tsch_log at init 2017-10-12 17:09:13 +02:00
Simon Duquennoy
f14d6d4afe Shell: added command tsch-set-coordinator 2017-10-12 17:09:10 +02:00
Simon Duquennoy
9590b21888 TSCH: default Max EB period to 16s 2017-10-12 17:09:07 +02:00
Simon Duquennoy
c320717d9a tsch-log: fix autoconfiguration of TSCH_LOG_PER_SLOT 2017-10-12 17:09:01 +02:00
Simon Duquennoy
27e0357595 Shell: do not use tsch-logs when not enabled 2017-10-12 17:08:58 +02:00
Simon Duquennoy
a89df3b279 TSCH-RPL: configure callbacks automatically 2017-10-12 17:08:55 +02:00
Simon Duquennoy
1b97641e7f rpl-lite: simplify SRH insertion 2017-10-12 17:08:51 +02:00
Simon Duquennoy
02f5929ade insert_srh_header: return 0 when failing to insert SRH due too packet too long 2017-10-12 17:08:48 +02:00
Simon Duquennoy
a1f74d6568 Shell: start automatically whenver the module is included 2017-10-12 17:08:42 +02:00
Simon Duquennoy
bf8cc69252 contiki-default-conf.h: unfold definitions for more readable 'viewconf' 2017-10-12 08:42:45 +02:00
Simon Duquennoy
77cae0f45c Shell: prefix all lines with '#' 2017-10-11 17:43:26 +02:00
Simon Duquennoy
4c7d2a4bfc Minor changes to shell-commands 2017-10-11 17:26:39 +02:00
Simon Duquennoy
48997bb3ad Use 802.15.4 frames v2 by default only for TSCH, else fall back to v1 2017-10-11 17:26:08 +02:00
Simon Duquennoy
df01ebc219 Minor logging fixes 2017-10-11 17:25:07 +02:00
Simon Duquennoy
9d77bad2c2 sicslowpan: set SICSLOWPAN_COMPRESSION from .h file rather than .c, for integration with viewconf 2017-10-11 17:23:36 +02:00
Simon Duquennoy
c4f89ee44d Minor changes to contiki-default-conf.h 2017-10-11 17:22:13 +02:00
Simon Duquennoy
9087448dc4 Removing from contiki-default-conf.h configuration flags that are now set from Makefile exclusively 2017-10-10 21:04:36 +02:00
George Oikonomou
163ccafcba Fix erroneous comment 2017-10-08 17:03:04 +01:00
George Oikonomou
ab7b4676e0 Make CoAP more configurable 2017-10-08 17:00:37 +01:00
George Oikonomou
3a90439778 Make serial line special char values configurable 2017-10-08 17:00:37 +01:00
Simon Duquennoy
e81864e8d8 NullNet: move buffer variables from examples to os/net module 2017-10-08 14:56:47 +02:00
Simon Duquennoy
32e9c5067e Fix netstack.h comment 2017-10-08 14:50:07 +02:00
Simon Duquennoy
fb0de6dd7a Various fixes to netstack config 2017-10-08 14:47:34 +02:00
Joakim Eriksson
1143d6f5aa addressed some of the suggestions on the PR - naming and netstack MAC 2017-10-08 00:44:02 +02:00
Joakim Eriksson
761d19dafc fixed nullnet to work with new network interface 2017-10-08 00:44:02 +02:00
Joakim Eriksson
8cf65ed01a changed NETSTACK configuration on network layer 2017-10-08 00:44:02 +02:00
Joakim Eriksson
1b2b043f24 fixed nullnet and its examples 2017-10-08 00:44:02 +02:00
Joakim Eriksson
f73454071f added an example for packet processing - and added uipbuf module for header processing 2017-10-08 00:44:02 +02:00
Joakim Eriksson
0f9207640b added netstack-ip-processor 2017-10-08 00:44:02 +02:00
Joakim Eriksson
ac12496e6d added output function to network layer 2017-10-08 00:44:02 +02:00
Simon Duquennoy
a92319bbca Rename PROJECT_CONF_H to PROJECT_CONF_PATH for clarity and so as to avoid possible conflicts with guards in project-conf.h files 2017-10-07 09:45:41 +02:00
Simon Duquennoy
20559fd308 Auto-include project-conf.h whenever found 2017-10-07 09:45:38 +02:00
Simon Duquennoy
25d69965a4 Move some readme files to wiki 2017-10-06 16:28:26 +02:00
Simon Duquennoy
c851357800 Doxygen fixes 2017-10-06 14:26:59 +02:00
Simon Duquennoy
14779f29f8 Rework Doxygen modules 2017-09-29 22:18:48 +02:00
Niclas Finne
cb5df665a2 Added boundary checks when parsing CoAP packets.
Thanks to Stephan Zeisberg for reporting this issue.
2017-09-29 10:57:09 +02:00
Simon Duquennoy
a3afb0d13e Merge pull request #72 from simonduq/pr/ip-reorg
Restructure ip implementation
2017-09-28 12:02:14 +02:00
Simon Duquennoy
e0f5929849 Merge pull request #45 from nvt/new-docs
Major documentation update.
2017-09-28 11:56:10 +02:00
Simon Duquennoy
543408db68 Re-organzie ip stack implementation 2017-09-22 17:09:54 +02:00
Nicolas Tsiftes
3166e29af7 Various documentation updates, including a modified main page and
the removal of various obsolete platforms and modules.
2017-09-22 16:00:55 +02:00
Simon Duquennoy
d9f9138ed2 Added NullNet, a network layer for non-IP-enabled cases 2017-09-22 14:34:20 +02:00
Simon Duquennoy
7d262d6d89 Move no-framer from slip-radio to os, now named nullframer 2017-09-22 14:34:20 +02:00
Simon Duquennoy
9cde0886d6 Simplify framer configuration 2017-09-22 14:34:20 +02:00
Simon Duquennoy
117dbe44c8 Simplify radio driver configuration 2017-09-22 14:34:20 +02:00
Simon Duquennoy
0aa44c3c22 Homogenize NET layer config with MAC 2017-09-22 14:34:20 +02:00
Simon Duquennoy
1a8f04effc TSCH: move platform-specific configuration flags to platform configuration files 2017-09-22 14:34:20 +02:00
Simon Duquennoy
13f014f882 Update TSCH Readme file 2017-09-22 14:34:20 +02:00
Simon Duquennoy
ffc94f832c MAC layer configuration done from Makefile instead of .h files 2017-09-22 14:34:20 +02:00
Simon Duquennoy
3c9369737e Merge pull request #66 from yatch/pr/etsi-plugtest-2017
Project for ETSI Plugtest 2017
2017-09-16 09:18:02 +02:00
Nicolas Tsiftes
8ae774d413 Merge pull request #71 from simonduq/pr/rename-rpl
Rename old RPL implementation as rpl-legacy (update: rpl-classic)
2017-09-15 14:50:59 +02:00
Yasuyuki Tanaka
514a0365fe shell: add 6top command 2017-09-14 21:48:08 +09:00
Yasuyuki Tanaka
3a1cfc6f3e log: add a null check and fix indentation 2017-09-14 21:48:08 +09:00
Yasuyuki Tanaka
78a4d60584 sixtop: log fix 2017-09-14 21:48:08 +09:00
Simon Duquennoy
786cc13a95 Rename old RPL implementation as rpl-classic 2017-09-14 04:55:36 +02:00
Simon Duquennoy
af556985a8 Merge pull request #65 from yatch/pr/6p
6top protocol
2017-09-14 03:39:08 +02:00
Yasuyuki Tanaka
efd84940d8 sixtop: start transaction timer in its allocation process
While the timer is designed to get started on state transition from
SIXP_TRANS_STATE_INIT, the state transition may not happen in some
erroneous situation. This change makes sure that the timer is started
once it's allocated.
2017-09-13 14:38:06 +09:00
Yasuyuki Tanaka
57263042ae sixtop: use LOG APIs instead of PRINTF from net-debug.h 2017-09-13 14:38:06 +09:00
Yasuyuki Tanaka
7530c560c5 sixtop: support draft-ietf-6tisch-6top-protocol-07 2017-09-13 14:38:06 +09:00
Yasuyuki Tanaka
a5fadb2ebe sixtop: refactoring
- support draft-ietf-6tisch-6top-protocol-03
- maintain a sequence number per neighbor
- rename variables and constants
- reconsider file structure and file names
- make sf-simple part of example
- update sixtop/README.md
- add regression-tests for 6tisch
- apply C-DAC copyright notice
- bugfix + cleanup
2017-09-13 14:38:06 +09:00
Shalu-here
cc1c763db9 sixtop: 6top protocol implementation by CDAC
https://github.com/contiki-os/contiki/pull/1898
2017-09-13 14:38:06 +09:00
Yasuyuki Tanaka
69affad825 framer-802154: suppress src panid and put dest pan id by default 2017-09-13 14:38:05 +09:00
Simon Duquennoy
2817b9212a framer-802154: compress PANID by default 2017-09-13 14:38:05 +09:00
Yasuyuki Tanaka
e9951e9341 framer-802154: do away with "type" of create_frame()
The argument, "type", is not used effectively in create_frame(). In
addition, it's confusing because create() calls create_frame() with
FRAME802154_DATAFRAME as "type" though it does not always create a data
frame.
2017-09-13 14:38:05 +09:00
Yasuyuki Tanaka
4ba8b2e684 TSCH: add argument validation in tsch_schedule_add_link()
The purpose is to avoid allocating a meaningless link, which could cause
communication issue with a peer.
2017-09-13 14:38:05 +09:00
Yasuyuki Tanaka
4fdaef2694 TSCH: make tsch_packet_create_eb() use NETSTACK_FRAMER.create()
tsch_packet_create_eb() is changed to build an Enhanced Beacon in the
packetbuf directly. Along with this, its signature is updated by
removing buf and buf_size from the argument list.
2017-09-13 14:38:05 +09:00
Yasuyuki Tanaka
6e8c5906bc TSCH: remove duplicate code from tsch_packet_create_eack()
tsch_packet_create_eack() prepares a frame802154_t data by itself, which
is similar to what framer_802154_setup_params() does. In order to avoid
duplicate code, tsch_packet_create_eack() is going to use
framer_802154_setup_params() to have a ready-to-use frame802154_t data.
2017-09-13 14:38:05 +09:00
Yasuyuki Tanaka
a35c3cad08 framer-802154: introduce framer_802154_setup_params() 2017-09-13 14:37:56 +09:00
Simon Duquennoy
0758755dad Merge pull request #68 from yatch/pr/shell-reboot
reboot command
2017-09-11 12:08:16 +02:00
Simon Duquennoy
e0edcd9800 Merge pull request #67 from yatch/pr/log-fixes
Log Message Fixes
2017-09-11 10:49:15 +02:00
Yasuyuki Tanaka
58f37fe72e shell: add reboot command which causes reset by watchdog_reboot() 2017-09-11 15:08:19 +09:00
Simon Duquennoy
37b7c2e90b TSCH: log parsing errors even when security is not enabled 2017-09-11 15:07:17 +09:00
Simon Duquennoy
a11c2f4a1f TSCH: bugfix in tsch-adaptive-sync 2017-09-11 15:07:17 +09:00
Yasuyuki Tanaka
0fd22a425a TSCH: bugfix in frame encryption
Header IEs shouldn't be encrypted since they are part of the header.
2017-09-11 15:07:17 +09:00
Simon Duquennoy
d1a24b64ce IEEE 802.15.4 log fixes 2017-09-11 15:05:19 +09:00
Simon Duquennoy
3537d06cc8 RPL log fixes 2017-09-11 15:05:19 +09:00
Simon Duquennoy
e9610ec647 Fix IPv6 log 2017-09-11 15:05:19 +09:00
Simon Duquennoy
0f92c6ebfd Include contiki.h instead of contiki-conf.h so as to ensure consistent inclusion of contiki-default-conf.h 2017-09-08 14:20:59 +02:00
Simon Duquennoy
fc9e77b562 Move websocket implementation to os/net/app-layer/http-socket 2017-09-04 16:29:19 +02:00
Nicolas Tsiftes
65fe7a1bb3 Removed incomplete file system implementations that have not been used much. 2017-09-01 17:22:11 +02:00
Niclas Finne
2165978d14 Moved cfs-posix to native platform 2017-09-01 17:22:11 +02:00
Simon Duquennoy
ffe3b811b0 Move http to os/net/app-layer 2017-09-01 17:22:10 +02:00
Simon Duquennoy
1987b316fd Move mqtt to os/net/app-layer 2017-09-01 17:22:10 +02:00
Joakim Eriksson
08613960e2 moved CoAP, LWM2M and IPSO Objects 2017-09-01 17:22:04 +02:00
Simon Duquennoy
a3b87a46a5 Moving at-master to os/services 2017-09-01 16:12:57 +02:00
Nicolas Tsiftes
a7da684b4b Move unit-test to the services directory. 2017-09-01 16:09:29 +02:00
Simon Duquennoy
dfd2caf17a Move slip-cmd to os/services 2017-09-01 16:07:13 +02:00
Simon Duquennoy
bbd058a570 Move json to os/lib 2017-09-01 16:01:22 +02:00
Nicolas Tsiftes
c528562908 Moved Antelope to a new storage directory. 2017-09-01 15:52:11 +02:00
Nicolas Tsiftes
4a14896770 Moved CFS to a new storage directory. 2017-09-01 15:52:11 +02:00
Simon Duquennoy
c9906caf3c Moved orchestra to os/services 2017-09-01 15:43:25 +02:00
Simon Duquennoy
192f8ee582 Move shell from apps to os/services 2017-09-01 15:39:39 +02:00
Niclas Finne
2c86194ef8 Renamed core to os 2017-09-01 15:29:00 +02:00