Commit graph

95 commits

Author SHA1 Message Date
Simon Duquennoy
defcc639ce Use no metric container when having MRHOF with ETX, as specified in RFC6719. Renamed rpl-of-etx to rpl-mrhof. 2013-07-23 19:36:38 +02:00
Nicolas Tsiftes
a445c4020d Merge pull request #153 from darconeous/pull-requests/cpu-avr-bootloader
avr/bootloader.c: Now compatible with bootloaders which always run first
2013-05-20 05:49:13 -07:00
Robert Quattlebaum
3e0666265d avr-ravenusb/cdc_task: Fix compile issues.
A lot more changes are in the pipeline, but compiling is a good start.
2013-05-19 11:31:01 -07:00
Robert Quattlebaum
9c17a542a7 avr/bootloader.c: Now compatible with bootloaders which always run first.
The boot loader now knows when to go into bootstrap mode by
looking for a specific EEPROM value. Also updated code style
to match Contiki code style guidelines.
2013-05-19 08:21:16 -07:00
Robert Quattlebaum
535e90343c Merge pull request #144 from darconeous/pull-requests/settings-for-all-targets
core/lib/settings: Generalized settings manager to work on any platform
2013-05-18 12:03:09 -07:00
Robert Quattlebaum
28a1e40ebd core/lib/settings: Generalized Settings Manager to work on any platform
This commit moves the Settings Manager from the AVR codebase
into the Contiki core library. Any platform that implements
the Contiki EEPROM API can now use the Settings Manager's
key-value store for storing their persistent configuration info.

The Settings Manager is a EEPROM-based key-value store. Keys
are 16-bit integers and values may be up to 16,383 bytes long.
It is intended to be used to store configuration-related information,
like network settings, radio channels, etc.

 * Robust data format which requires no initialization.
 * Supports multiple values with the same key.
 * Data can be appended without erasing EEPROM.
 * Max size of settings data can be easily increased in the future,
   as long as it doesn't overlap with application data.

The format was inspired by the [OLPC manufacturing data format][].

Since the beginning of EEPROM often contains application-specific
information, the best place to store settings is at the end of EEPROM
(the "top"). Because we are starting at the end of EEPROM, it makes
sense to grow the list of key-value pairs downward, toward the start of
EEPROM.

Each key-value pair is stored in memory in the following format:

Order    | Size     | Name         | Description
--------:|---------:|--------------|-------------------------------
       0 |        2 | `key`        | 16-bit key
      -2 |        1 | `size_check` | One's-complement of next byte
      -3 |   1 or 2 | `size`       | The size of `value`, in bytes
-4 or -5 | variable | `value`      | Value associated with `key`

The end of the key-value pairs is denoted by the first invalid entry.
An invalid entry has any of the following attributes:

 * The `size_check` byte doesn't match the one's compliment of the
   `size` byte (or `size_low` byte).
 * The key has a value of 0x0000.

[OLPC manufacturing data format]: http://wiki.laptop.org/go/Manufacturing_data
2013-03-20 11:57:13 -07:00
Adam Dunkels
277a348f60 Changed the name of the IPv6 number of route entries configuration from UIP_CONF_DS6_ROUTE_NBU to UIP_CONF_MAX_ROUTES. 2013-03-18 11:12:44 +01:00
Robert Quattlebaum
d454a7ca96 httpd-simple-avr: 'isused' seems to not be used anymore. 2013-02-28 22:08:28 -08:00
Adam Dunkels
944537fccf Removed all old RCS tags in the Contiki source tree. Those RCS tags are not used any more, as we are now using git to manage the Contiki source tree 2012-10-26 15:54:49 +02:00
Ivan Delamer
b43dad00b0 Cleaned up RF230BB, and refactored FRAME_RETRIES and CSMA_RETRIES
#defines.
2012-09-04 11:12:18 -06:00
David Kopf
cac4e9a222 Add clock_delay_us and clock_set_seconds to clock.h. Modify clock_wait to use clock_time_t.
Remove the troublesome avr/dev/delay.* files.
Add PLATFORM_NAME and combine the confusing *_REVISION defines into a single PLATFORM_TYPE
2012-04-09 15:49:53 -04:00
Matthias Kovatsch
87cd18539b Eliminated RPL_CONF_ADJUST_LLH_LEN correction by using uip_l3_icmp_hdr_len instead of uip_l2_l3_icmp_hdr_len. 2012-03-08 00:48:04 +01:00
David Kopf
deb75d3d97 Several bugfixes 2012-02-21 11:14:52 -05:00
David Kopf
6e45dfe5ff PROGMEM changes needed for newer avr-gcc compiler 2012-02-21 11:10:57 -05:00
Nicholas J Humfrey
680225e99d Converted u8_t to uint8_t and u16_t to uint16_t in the platforms directory.
Added "These names are deprecated, use C99 names" warnings the contiki-conf.h files that were missing it.
2012-02-21 08:33:25 -05:00
Nicolas Tsiftes
0e32956a63 Merge remote-tracking branch 'sf/master' into rpl-patch 2011-11-21 14:59:31 +01:00
David Kopf
bdec65b889 Fix typos and file endings 2011-08-28 16:04:36 -04:00
David Kopf
dff77aea61 Correct typo 2011-08-25 14:37:12 -04:00
David Kopf
83e3b99d54 Let RPL examples enable platform RPL 2011-08-15 14:45:44 -04:00
David Kopf
50d1086553 Add changes needed for contikimac 2011-08-13 11:38:38 -04:00
David Kopf
f36c97a9a4 Get random seed from noisy ADC conversion at startup. 2011-08-13 11:31:20 -04:00
David Kopf
6355545ded Add template for AUTOSTART_PROCESS 2011-07-11 11:34:04 -04:00
Vincent Brillault
dc9cbe647d Changes in RPL implementation :
- Structural modification of RPL data storage.
- Support multiple gateways (multiple DODAG-ID with a unique InstanceID)
- Use Lollipop counters
- Add leaf-only configuration option for RPL
Bugfix :
- Correctly send "Grounded" flag in DIO
2011-07-11 16:52:45 +02:00
dak664
d6db9e4e86 Add project-conf.h to platform contiki-conf.h files.
Fix jackdaw comments.
2011-06-08 09:12:57 -04:00
dak664
4e8b4e408c Temporary fix for RNDIS enumeration before the mac address is set up.
(Turn on RS232 debug to bypass the enumeration wait and let the mac address get set first)
2011-03-27 14:21:47 -04:00
dak664
fcb41fa5c2 Refactor with settings manager and better usb enumeration for debug prints 2011-03-23 18:10:49 -04:00
dak664
a9cbbb4570 Add sneezer mode and tx power change 2011-03-23 18:08:07 -04:00
dak664
5dd7500d0b Add configurable auto cca threshold and implement driver cca call.
Show smallest rssi in jackdaw menu.
2011-03-21 11:10:30 -04:00
dak664
ef4bb08c3e Add stack monitor. Change internal uip address to 200 for RPL. 2011-02-23 14:14:21 -05:00
dak664
b33b89216f Delete obsolete file 2011-02-07 14:35:19 -05:00
dak664
b438b78097 Fix configuration for RPL build (no packet queuing, default no TCP) 2010-12-18 22:37:02 +00:00
dak664
9575daede2 Add working cx-max configuration values. 2010-12-18 20:53:36 +00:00
dak664
aa7ad8c807 Add rf230_listen_channel routine to force RX_ON state for sniffing and to read rssi for energy scan. 2010-12-15 16:50:44 +00:00
dak664
ced88c2eff Give jackdaw fe80::0 address and number webservers from fe80::1 2010-12-14 23:22:01 +00:00
dak664
1d2a5ca671 Minor format and comment changes 2010-12-14 22:51:04 +00:00
dak664
d8fe44645c Refactor, tune, add SICSLOWPAN_CONF_ACK_ALL defines for testing radio acks 2010-12-14 22:39:38 +00:00
dak664
a9dedfee4f Refactor contiki-conf files, remove obsolete defines. 2010-12-13 23:31:13 +00:00
dak664
35b2ce0cdb Add status page link, show correct rssi, fix indexing off array in ipv4 builds 2010-12-04 21:32:35 +00:00
dak664
58b7a19803 Hardware/software radio HAL patch from Roger Larsson.
Use CHANNEL_802_15_4 define for RF channel on all AVR platforms, default 26.
Remove hopefully unnecessary interrupt disable wrapper on eeprom reads and writes.
2010-12-03 20:42:01 +00:00
dak664
3d3ad9e2c2 Fixes to allow ipv4 (hello world) builds 2010-12-01 16:23:55 +00:00
dak664
5a4fa388da Refuse to play ping-pong with host interface 2010-11-29 21:22:41 +00:00
dak664
0735b431aa Enable RPL neighbor webserver page 2010-11-29 21:21:36 +00:00
dak664
dc028b3f85 Get rssi correctly in either rx mode, clean up radio driver debugging 2010-11-26 20:39:15 +00:00
dak664
880233a451 RSSI read fix (use ED register in AACK mode), add reduced power configuration for miniature mesh testing. 2010-11-24 18:46:57 +00:00
dak664
da8ad17c02 Save 256 bytes of RAM by excluding floating point routine 2010-11-21 17:56:36 +00:00
dak664
b3324c6d23 Add menu option to temporarily disable RS232 debug output for higher 6lowpan throughput.
Functional rpl with RNDIS/Ubuntu (tested on Raven single hops)
2010-11-19 20:02:25 +00:00
dak664
fe19719a16 Fix printf_P error 2010-11-18 14:33:10 +00:00
dak664
cc7fea92d2 Force ipv6 when building with fakeuip 2010-11-13 16:28:46 +00:00
dak664
72d49c20af Allow non-ipv6 build (hello world) 2010-11-12 20:49:03 +00:00
dak664
acd9d516d8 Add RPL neighbors and routes printout to Jackdaw menu 2010-11-05 20:35:15 +00:00