Commit graph

246 commits

Author SHA1 Message Date
adamdunkels
e34eb54960 A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:

* Separates the Contiki low-layer network stack into four layers:
  network (e.g. sicslowpan / rime), Medium Access Control MAC
  (e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
  radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
  that specify what mechanism/protocol/driver to use at the four
  layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
  NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
  the fate of a transmitted packet: if the packet was not possible to
  transmit, the cause of the failure is reported, and if the packets
  was successfully transmitted, the number of tries before it was
  finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
  which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
  efficient radio duty cycling protocols: channel check, pending
  packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
  #defines.
2010-02-18 21:48:39 +00:00
joxe
3a2eec2b1a fixed ext-sensor for jcreate 2010-02-13 11:20:48 +00:00
adamdunkels
6414bf3a55 Enabled sicslowpan fragmentation and reassembly by default on the sky platform 2010-02-08 22:12:29 +00:00
nifi
978d383395 Corrected include path 2010-02-08 00:02:39 +00:00
joxe
1da7c3eccd convert registers upto 9 instead of upto 4 2010-02-06 18:28:26 +00:00
adamdunkels
3717c39431 Updated the ext-sensor to use the new sensor API; patch by Jesper Karlsson 2010-02-06 14:41:24 +00:00
adamdunkels
aaab082f27 Correctly print out the aaaa: address, if enabled 2010-02-06 10:00:49 +00:00
adamdunkels
37f7770bd8 Made it possible to override the SICSLOWPAN_CONF_FRAG option. Increased the default uIP buffer size on IPv6 to provide some room for fragmented packets 2010-02-06 10:00:25 +00:00
nifi
18f5ef71f0 added missing include 2010-02-03 20:30:07 +00:00
adamdunkels
a9c742402c Use cxmac for IP, xmac for non-IP. Increased uIP buffer size for IPv6 to accomodate ICMP packets 2010-02-03 16:48:04 +00:00
adamdunkels
f9e991c0dd Turning of the MAC protocol in the IPv4-over-mesh actually made performance worse due to broadcasts being received multiple times, which interfered with SLIP I/O 2010-02-03 01:20:47 +00:00
joxe
09c3ba2753 minor cleanup 2010-02-02 21:17:44 +00:00
joxe
fd4aebdf7f refactored some ADC code into sky-sensors and made it possible to turn off sensors to save energy 2010-02-02 20:59:45 +00:00
adamdunkels
88fb1c80c9 Do not activate the sensors by default: sensors should be activated by the applications that need them 2010-02-02 16:25:30 +00:00
adamdunkels
d0d52638b8 Disable (debugging-) initialiation of aaaa:: address; add CSMA MAC for IPv6/6lowpan 2010-02-01 11:55:04 +00:00
adamdunkels
f63f6a7a88 Added default configuration options for the cxmac driver 2010-01-31 18:48:41 +00:00
adamdunkels
ba2c445676 Reduce the TCP MSS so that it runs nicely over IPv6/802.15.4 2010-01-28 13:38:40 +00:00
adamdunkels
5922402b3e Added the CSMA MAC mechanism on top of the default duty cycling
mechanism X-MAC. The CSMA is configurable with a MAC_CSMA define, just
like the MAC protocol is configurable with the MAC_DRIVER define.
2010-01-25 11:48:16 +00:00
adamdunkels
11362d0489 Remove the default list of sensors from the main() file to save space - those apps that need them can use them directly in any case 2010-01-21 11:17:08 +00:00
nifi
c9a48aa752 Updated to match the new sensors API 2010-01-15 21:37:15 +00:00
nifi
467df8ad4c reverted accidental commit 2010-01-14 22:26:38 +00:00
nvt-se
d2655eac7a make watchdog management slightly more abstract to simplify porting 2010-01-14 21:16:58 +00:00
adamdunkels
46753473fa Added constants for light sensor values 2010-01-14 20:23:02 +00:00
adamdunkels
9ae29c3be5 Added light, sht11, battery sensors; restored light and battery activation since rtimers don't work without them (at present) 2010-01-14 20:18:23 +00:00
adamdunkels
bb63085f60 Added SHT11 sensor API for Tmote Sky 2010-01-14 20:16:52 +00:00
nifi
dbe56e4666 Updated to match the new sensors API 2010-01-14 20:01:18 +00:00
joxe
3c0dcb45c7 fixed for updated sensors API 2010-01-14 15:50:13 +00:00
joxe
31ea888b75 fixed Sky platform for new sensor APIs 2010-01-14 14:00:38 +00:00
joxe
4a3953204f changed sky sensors to new api 2010-01-14 13:53:06 +00:00
adamdunkels
e3fed27f4a Broke out the CC2420 SFD interrupt into a separate file to allow easier overloading with project-specific files 2009-12-05 19:42:56 +00:00
nifi
bb0ffe0478 moved rime initialization into rime router so it is easier to switch IPv6 routing module 2009-11-18 13:51:55 +00:00
adamdunkels
d3131e1811 Print link-local IPv6 address when booting the node 2009-10-29 22:10:59 +00:00
adamdunkels
f03caa357e Allow reprogramming invidual nodes with 'make file.upload MOTE=x' where x is the mote number just like with make login 2009-10-29 22:10:21 +00:00
fros4943
99a540fd0d macro renamed to SPI_IS_ENABLED() to avoid confusions 2009-10-27 15:33:24 +00:00
fros4943
6b36cd9de9 added macro for checking whether SPI is ENABLED 2009-10-27 15:25:02 +00:00
adamdunkels
29e8dae88c Added X-MAC support for IPv6/SICSlowpan nodes, added 802.15.4 default framing to X-MAC 2009-10-19 20:55:52 +00:00
adamdunkels
79d7c366a3 Rime polite announcements should be used when IPv6 is enabled, and not used otherwise 2009-10-18 07:15:33 +00:00
nifi
d4b619bcc5 Renamed SPI_WAITFOREOTxBUF to SPI_WAITFORTxREADY for clarity and generalized SPI transmission status checks to work with both AVR and MSP430 2009-09-07 11:31:26 +00:00
nifi
3a8ee769cb Changed to monitor the UART transmitter buffer ready flag instead of the UART transmitter empty flag. This almost doubles the speed of transmitting data to CC2420. Patch by James Brown. 2009-08-31 12:06:34 +00:00
nvt-se
ebd91b9f9d Removed deprecated dir cache macro. 2009-08-30 20:36:32 +00:00
adamdunkels
b71faae330 ext-sensor: new driver for external sensors (e.g. Phidgets) on the Sentilla JCreate, developed by Marcus Lunden 2009-08-25 16:24:49 +00:00
nvt-se
b0431cc688 removed obsolete offset type definitions. 2009-07-13 20:02:16 +00:00
nvt-se
1e0ca9ceac Made the use of micro logs configurable to make file modifications
more efficient on storage types that support inline updates.

The sky platform uses logs, and the native platform uses no logs.
2009-06-29 13:30:16 +00:00
nifi
05d4bc4532 allow UIP_CONF_ROUTER to be set as compilation flag 2009-06-29 09:54:39 +00:00
joxe
1cc33ac451 configured routing to off for sky-IPv6 2009-06-26 12:01:23 +00:00
joxe
e16d4b0f06 fixed IPV6 flags for sky 2009-06-26 12:00:49 +00:00
nvt-se
b912a41ea3 use polite announcements when running Rime over UDP. 2009-06-24 16:44:26 +00:00
nifi
912aba7280 added init function in MAC driver for easier configuration 2009-06-22 11:14:11 +00:00
fros4943
d54176205c decreased default elfloader memory usage for sky platform 2009-05-18 10:32:56 +00:00
adamdunkels
bc6c9410cc Print out the gateway's IP address more prominently 2009-05-12 17:32:49 +00:00