Commit graph

369 commits

Author SHA1 Message Date
nvt-se b47221672a switched cfs offset type to signed long to allow backward movements with cfs_seek. 2009-02-28 13:41:16 +00:00
nvt-se 9f8f773b43 use unsigned long as cfs offset type. 2009-02-27 14:53:15 +00:00
adamdunkels d761dfebd1 Bugfix: reduced the size of the uIP buffer to account for MAC header space 2009-02-25 10:23:03 +00:00
adamdunkels 7781bbea58 Enabled X-MAC announcements by default, disabled polite broadcast announcements by default 2009-02-14 22:52:24 +00:00
adamdunkels 585620c102 Reverted the recent change from random_rand() to rand(). It turned out that
since libc rand() returns a signed int, there were frequently problems with
timer values wrapping. By reverting to random_rand(), we can provide a
random generator that returns an unsigned and the timer problems are solved.
2009-02-11 11:08:53 +00:00
fros4943 f1fc4c879f cfs_coffee_get_fd_set() was renamed 2009-02-09 10:09:13 +00:00
nvt-se d0a546b049 A long refactoring session yielded the following.
Technical changes:

* Factored out file specific information from the file descriptor
  structure into a new file structure.

  - Useful file metadata can be stored after the file is closed.
  - File descriptors become much smaller.
  - Significantly reduces the need to scan for the file end.

* Use correct types in all function signatures.
* Removed the directory cache.

Results:

* Enormous speed increase when opening cached files (10x-20x.)
* Multiple fd:s pointing to the same file have the correct semantics.
* About 100 bytes smaller ROM size.
* Slightly smaller static RAM size.
2009-02-08 17:08:13 +00:00
adamdunkels 440899e4cb Seed rand() with the node ID + MAC address 2009-02-07 16:49:36 +00:00
adamdunkels 5cf0c25ca6 A few more minor fixes 2009-02-04 20:58:05 +00:00
adamdunkels 96882c402a Fixed conformance to Contiki code style :) 2009-02-04 20:55:41 +00:00
joxe 9689a579be added DCO/CPU speed re-synch each 30 seconds 2009-02-04 19:32:20 +00:00
fros4943 c16921f108 checkpointing library implemented for the sky platform (cfs interface is currently not optimized) 2009-02-04 17:51:49 +00:00
joxe e5f0d786a8 fixed sky platform to use the new uart1_active api to avoid messing up last chars transmitted 2009-01-31 12:45:03 +00:00
fros4943 603740b13b removed compiler warning by returning 0 at undefined value 2009-01-23 17:08:17 +00:00
fros4943 ebcaf8eec8 removed compilation warning due to unused is_gateway variable (outside uIP mode) 2009-01-19 13:44:04 +00:00
adamdunkels e70b45c102 Updated to make use of the tmote-bsl instead of msp430-bsl (needed for the Sentilla JCreate) if it exists 2009-01-15 22:12:46 +00:00
adamdunkels 29fe3d8741 Added acc-sensor.c, dDriver for the acceleromenter sensors on the Sentilla JCreate board 2009-01-15 21:07:03 +00:00
adamdunkels 9f0006fde0 Driver for the acceleromenter sensors on the JCreate board 2009-01-15 21:06:02 +00:00
fros4943 5f3c1a0e12 elfloader executing loaded programs from ram (not rom) by default on msp430 platforms. 2009-01-15 09:04:04 +00:00
joxe 55280131fc added printout of MAC protocol name 2008-11-24 14:31:08 +00:00
fros4943 720357bc60 added log_message() implementation 2008-11-21 10:35:46 +00:00
adamdunkels 83155d48f9 Moved the network gateway logic to the uip-over-mesh module. 2008-11-09 12:22:04 +00:00
nvt-se 0c4f7bed8f temporary fix to get sicslowpan.c working on the Sky platform:
conventional MAC implementations require a call to the MAC driver's
read function.
2008-11-06 20:45:06 +00:00
nvt-se 21e4b4be80 map rime address to mac address for ipv6 2008-11-06 15:14:24 +00:00
nvt-se c5d9795f92 added initialization for uip6 2008-11-05 15:34:04 +00:00
nvt-se d1d09ea1fd added IPV6 configuration. 2008-11-05 14:31:06 +00:00
nvt-se aff141f56e reduced default sizes 2008-10-09 14:56:53 +00:00
nvt-se 10639bc982 use abstract types for offsets and pages so that we can easily port it to
very large or small memories.
2008-10-03 19:27:28 +00:00
joxe 1a1ddd0bd5 removed energest-arch from sky and esb platforms 2008-09-29 12:38:18 +00:00
joxe 5b1c229754 fixed battery sensor for sky platform 2008-09-18 21:29:06 +00:00
joxe 5d860b1df2 changed sleep to go into LPM3 2008-09-18 17:58:21 +00:00
joxe 8aa8e26c54 removed redundant sensor initialization, added comment 2008-09-14 20:47:30 +00:00
nvt-se 2b68f88e77 moved platform independent definitions 2008-07-11 21:39:26 +00:00
nvt-se e8a85b3726 moved platform independent code to the right place 2008-07-11 21:35:10 +00:00
adamdunkels 8e5d255b5b Moved initialization of the SHT11 until after other initialization: this seems to fix a bug where the SHT11 temperature and humidity values started varying wildly. 2008-07-08 08:23:24 +00:00
adamdunkels 84e4bf7a15 Changed order of initialization to make light sensors work again: a previous change to irq.c seems to have conflicted with light sensor initialization 2008-07-07 23:44:58 +00:00
adamdunkels 64b6663b11 moved energest from lib/ to sys/ 2008-07-03 23:59:20 +00:00
adamdunkels 51f4ab8b2c Changed type from off_t (that potentially conflicts with existing types.h typedefs) to unsigned long 2008-07-03 23:12:10 +00:00
adamdunkels 28331191b3 Changed name of simple-cc2420 to cc2420 2008-07-02 09:38:06 +00:00
adamdunkels 66876625d4 Changed name of the simple-cc2420 module to cc2420: changed all function names and variable names from simple_cc2420_* to cc2420_*. 2008-07-02 09:05:40 +00:00
adamdunkels dafa1d89a2 Added cc2420-aes.c (functions for interfacing the build-in AES support of the CC2420) 2008-07-02 08:47:05 +00:00
adamdunkels 1586d8f36f Changed filename of the CC2420 driver from simple-cc2420 to cc2420. 2008-07-01 21:02:51 +00:00
adamdunkels d134a1fcb1 Moved sky-specific make targets from the tools/sky/Makefile to the more natural platform/sky/Makefile.sky. Added a number of convenient targets for accessing the serial port. 2008-05-29 20:15:49 +00:00
adamdunkels 1263eb8455 Moved old unused files to backyard 2008-05-27 13:16:34 +00:00
adamdunkels 8b4179cf45 Moved ctimer_init() so that MAC protocols can use ctimers in their initialization code 2008-05-19 12:07:49 +00:00
adamdunkels 31ea41d8db Changed the name of UIP_CONF_TCP_FORWARD to UIP_CONF_IP_FORWARD since forwarding is done at the IP level 2008-05-14 19:19:28 +00:00
nvt-se 776f377a69 Configuration for the Sky platform. 2008-04-28 10:34:33 +00:00
adamdunkels c38d43c387 Change order of initialization so that Rime is initialized before uIP-over-Rime. Send out a new gateway command if a spurious (erroneous) gateway command is received. (Note for the future: this will cause a ping-pong problem with two correct gateways in the network; need to come up with a better solution for this.) 2008-03-03 20:23:53 +00:00
fros4943 3b5fa2d8e5 added 5 second delay before actually burning the node id (may otherwise cause problems with the .upload script) 2008-02-25 16:34:56 +00:00
adamdunkels 412facb831 This is an initial commit of an implementation of the Chameleon
architecture for the Rime stack for Contiki. The Chameleon
architecture separates the header processing from the Rime protocol
logic. Instead of having each protocol create its own part of the
packet header, protocols use packet attributes. Before sending a
packet, a special Chameleon header processing module creates a packet
header from the packet attributes. The same Chameleon module parses
incoming packets and creates packet attributes from the header.

The details are in our SenSys 2007 paper:

Adam Dunkels, Fredrik Osterlind, Zhitao He. An Adaptive Communication
Architecture for Wireless Sensor Networks. In Proceedings of the Fifth
ACM Conference on Networked Embedded Sensor Systems (SenSys 2007),
Sydney, Australia, November 2007.

http://www.sics.se/~adam/dunkels07adaptive.pdf

This is a rewrite of the code that was developed for the paper.
2008-02-25 02:14:34 +00:00
adamdunkels 9c57e5e272 Moved old Makefile (non-working) from platform/sky to backyard/platform/sky 2008-02-24 22:22:17 +00:00
adamdunkels 307fc41646 Detect if node is attached to a SLIP line to set node to become the network's gateway 2008-02-24 21:13:03 +00:00
adamdunkels 5bcd0ab60b Reduced uIP buffer size to allow for TCP data over Rime mesh routing protocol 2008-02-24 21:11:35 +00:00
adamdunkels 6740d95bfa Initialize serial line with 115200 bps for SLIP 2008-02-11 10:44:12 +00:00
adamdunkels fbcf9b6fcf Disable watchdog while burning node ID 2008-02-11 10:43:47 +00:00
adamdunkels 8058a49d21 Code style fix 2008-02-11 10:43:31 +00:00
adamdunkels cb6bc45350 Added code for routing IP packets over low-power radios using the Rime mesh module 2008-02-03 21:03:19 +00:00
adamdunkels dc43a9713d Added uIP destimation unreachable message, removed defailt XMAC timer definitions (for now), turned profiling off(for now), added process event number configuration, reduced data memory size for the ELF loader 2008-02-03 21:01:36 +00:00
adamdunkels 68523814c5 Moved from examples/sky into generic platform/sky/apps so that all examples can use it 2008-01-23 20:34:37 +00:00
adamdunkels c2ef303c24 Updated for the new simple_cc2420 API 2008-01-23 14:58:01 +00:00
nvt-se 6005437b27 Disable the watchdog during the whole erase operation. 2008-01-21 10:40:26 +00:00
nvt-se bed0963769 Call watchdog_periodic before erasing each sector, because this operation
takes approximately 1s.
2008-01-21 10:28:44 +00:00
adamdunkels 685de41feb Fixed buggy build 2008-01-19 06:57:44 +00:00
adamdunkels 34bd11905c Rewrote the timesynch code to use the Rime sniffer interface instead of the kludge of running timesynch as a MAC layer 2008-01-14 14:50:01 +00:00
adamdunkels 02ee418313 Moving timesynch.[ch] from sys/ to core/net/rime as they have more to do with Rime than with the kernel 2008-01-14 14:22:16 +00:00
adamdunkels f935be10c9 Added initalization of the serial library. Changed LPM3 to LPM2 since the current serial driver does not work with LPM3 yet (we need to add start edge detection interrupt support to fix that). 2008-01-08 08:21:03 +00:00
adamdunkels 690805ebe7 Added configuration for upcoming shell improvements, removed PROCESS_CONF_FASTPOLL 2008-01-08 08:19:56 +00:00
adamdunkels 959c4f3ee2 Removed ENERGEST_CONF_ON which is present in contiki-conf.h anyway 2008-01-08 08:18:00 +00:00
oliverschmidt 00d75c8d16 Made use of uip_ipaddr_to_quad(). 2008-01-04 23:28:33 +00:00
nvt-se 692da8fd47 swapped the currents for lpm and cpu. 2007-12-17 18:47:17 +00:00
adamdunkels 381f5dc4cc Initialize Rime address from hardware MAC address if no node ID has been configured. Be more explicit on how Rime address is assigned from node ID. Set time synch authority level from Rime address rather than node ID. Fix bug that put CPU in LPM2 instead of LPM3. 2007-12-17 12:35:23 +00:00
adamdunkels 2b4f33a4dd Enabled support for CC2420 timestamps 2007-12-16 15:05:04 +00:00
adamdunkels d13648292e Added initialization of the time synchronization module 2007-12-16 15:03:35 +00:00
adamdunkels b2f030897c Removed unused file rom.c 2007-11-28 23:31:53 +00:00
adamdunkels be300d6765 Removed inclusion of unused file cxmac.h 2007-11-28 23:28:35 +00:00
adamdunkels f21225eb1c More reasonable current draw numbers + multiply by voltage 2007-11-28 17:06:55 +00:00
adamdunkels 40d9045a2d Moved energy estimation initialization before starting processes so that processes may turn things on and off without messing up the energy estimates 2007-11-28 14:45:22 +00:00
nifi d16836d9bb changed to show Contiki version, node id, and autostarted processes at startup 2007-11-21 16:41:44 +00:00
adamdunkels 58d442ab2f Removed buggy button.c that is and should not be used 2007-11-18 12:02:49 +00:00
adamdunkels ff45f9d2c4 Added watchdog support 2007-11-17 10:29:33 +00:00
adamdunkels f1271464fd Turned on energy estimation and profiling by default 2007-11-13 21:10:50 +00:00
adamdunkels 2140576ac9 Added battery-sensor.c 2007-11-13 20:37:18 +00:00
adamdunkels d34f8e0dcc Preliminary untested code for the internal MSP430 battery sensor 2007-11-13 20:29:07 +00:00
adamdunkels b51977a693 Added Doxygen documentation 2007-11-10 20:45:29 +00:00
adamdunkels ca6abb286b Added LEDs notification. THe program won't compile without a nodeid=XXX now 2007-11-10 20:45:00 +00:00
adamdunkels d5430dc4dc Added better boot-up behaviour of the LEDs - they can now be used to determine where in the boot sequence the node hangs (if it hangs) 2007-11-10 20:44:30 +00:00
adamdunkels 0ce1708c76 #ifdef around RF_CHANNEL 2007-11-06 20:28:09 +00:00
adamdunkels dd8469ee4a Added inclusion of Tmote Sky bulk upload makefile 2007-10-25 13:28:15 +00:00
adamdunkels d2f90802de Compile profiling support only if PROFILE_CONF_ON is defined 2007-10-25 10:21:48 +00:00
adamdunkels a9e4287cbe Changed the energy estimation type ENERGEST_TYPE_RECEIVE to ENERGEST_TYPE_LISTEN to highlight that energy is spent on idle listening, not just the actual reception of packets 2007-10-25 09:30:39 +00:00
adamdunkels 910c9ea161 Added profiling support, made rime/mac initialization nicer 2007-10-23 21:29:40 +00:00
nifi 217056b8bd sht11 architecture support for Sky 2007-10-23 08:53:50 +00:00
nvt-se 0c9db3caa3 Moved to core/dev. 2007-10-22 12:19:31 +00:00
nvt-se 406cc6d5a8 Set channel to RF_CHANNEL after simple_cc2420_init.
Otherwise the init function would reset the channel to 11.
2007-10-12 12:47:32 +00:00
nifi 9d75d6d153 enabled inline functions 2007-09-19 14:09:31 +00:00
bg- a20c9e6abb * Include msp430def.h for standard defines.
* Remove obsolete LPM_CONF_OFF definition.
2007-08-16 13:10:53 +00:00
bg- 0e515a5472 * Initialise rand package. 2007-06-04 18:09:14 +00:00
bg- 2e7c6b59fb * The sources for crtk.o and service.o have been retired. 2007-05-31 14:26:58 +00:00
bg- ceb423c007 * Add sht11_off. 2007-05-28 16:24:58 +00:00
adamdunkels be2a7e954c Added initialization of MAC and Rime 2007-05-25 08:08:36 +00:00
adamdunkels ca356ea2e2 Added CC2420 driver 2007-05-25 08:08:21 +00:00
adamdunkels dab63c4c6b Added energy estimation, leds instead of minileds to be able to do energy estimation on leds 2007-05-22 21:16:37 +00:00
adamdunkels 8811fe23fd Added sht11, energy estimation, xmac, diabled uIP (for now) 2007-05-22 21:13:26 +00:00
adamdunkels 1f835946ca Added X-MAC configuration, reduced ELF loader text memory size 2007-05-22 21:12:15 +00:00
bg- 95d95a63ac * s/uip-fw-service/uip-fw-drv/ 2007-05-21 14:22:05 +00:00
bg- a3f5123c44 * s/uip-fw-service/uip-fw-drv/ 2007-05-21 14:21:07 +00:00
oliverschmidt d4528e427f Changed Contiki File System (cfs) from a service to a plain library.
This change means that one needs to select _ONE_ cfs implementation at Contiki library link time. But this doesn't appear to be an issue as all platforms have their "favorite" implementation anyway.
2007-05-19 21:16:08 +00:00
adamdunkels 71573a4968 Added sht11 driver, energy estimation. Removed IP/SLIP support for now 2007-05-15 08:11:59 +00:00
adamdunkels d9a4c02fab Platform-specific energy estimation code 2007-05-15 07:42:22 +00:00
oliverschmidt 4fd1e3ece0 Added signed 32 bit data type. 2007-05-12 20:58:12 +00:00
bg- 242f8085be * Add cle_msp430.o 2007-04-26 13:39:52 +00:00
bg- 8754cbd4cd * Use mknmlist-ansi and sym.o. 2007-04-25 15:49:43 +00:00
bg- b32db9763e * Bump maximum number of udp sockets to 16.
* Remove unused stuff.
2007-04-11 15:22:05 +00:00
bg- 738a970660 * Also print channel number. 2007-04-11 10:13:59 +00:00
bg- 8f822c42b1 * Device driver for the SHT1x on the Tmote sky. 2007-04-04 12:48:50 +00:00
bg- 9205ceda12 * rm uip_log.
* more forced inclusions.
2007-04-04 11:41:38 +00:00
bg- 48c5cae451 * More routing and forwarding cache entries. 2007-04-04 11:39:49 +00:00
bg- 0d4799a415 * rm uip_log. 2007-04-04 11:38:35 +00:00
adamdunkels 04a5405540 Added initialization of rtimers 2007-04-03 19:04:50 +00:00
adamdunkels 576cb01fb4 Short description of the Tmote Sky platform 2007-03-29 23:13:39 +00:00
adamdunkels 913e33c434 Increased RAM for loadable modules 2007-03-25 21:54:06 +00:00
adamdunkels ea33b82b1a Set Rime address on boot up, activate button sensor 2007-03-25 17:21:49 +00:00
adamdunkels 6914fd8ae0 Removed loader/ subdirectory 2007-03-25 17:21:33 +00:00
nifi 14892592c6 changed to use msp430-bsl to upload programs 2007-03-23 16:27:14 +00:00
nifi 84413ddc99 restore of node id + changed to use cfs xmem (external flash) 2007-03-23 16:05:47 +00:00
nifi 09d8a870c7 Program for 'permanently' burning a node ID to external flash 2007-03-23 16:03:11 +00:00
nifi 52b9210b57 added cfs xmem size 2007-03-23 12:15:50 +00:00
nifi 54228ae6e4 Node IDs are stored in external memory and restored on bootup 2007-03-23 09:59:08 +00:00
adamdunkels 3950632b20 Removed non-functional cfs-xmem, replaced with cfs-ram 2007-03-23 00:00:29 +00:00
adamdunkels 4d9a716a50 ELF loader memory size, CFS RAM memory size 2007-03-23 00:00:15 +00:00
adamdunkels aea251f807 added radio-sensor 2007-03-22 23:59:54 +00:00
adamdunkels c5aeed9d00 Radio sensor (RSSI) interface 2007-03-22 23:53:56 +00:00
adamdunkels 630ec03ba1 Added IP/SLIP support 2007-03-22 19:04:43 +00:00
adamdunkels 67f08c398e Added CFS xmem 2007-03-21 23:26:34 +00:00
adamdunkels 70c1652c13 Added CFS xmem conf 2007-03-21 23:26:25 +00:00
adamdunkels 13938ab079 Added CFS xmem module 2007-03-21 23:26:12 +00:00
adamdunkels 8fe031f3de Fading LEDs 2007-03-21 23:17:28 +00:00
adamdunkels 9adc7dc49b Added LPM and IRQ configuration to make Tmote Sky port build with the Contiki build system 2007-03-15 21:59:44 +00:00
adamdunkels c50e402743 Added uip-ipchksum.o 2007-03-15 21:50:23 +00:00
adamdunkels de76880582 Button sensor driver 2007-03-15 21:44:51 +00:00
adamdunkels cccd13ca75 Files for incorporating the Tmote Sky port into the Contiki build system 2007-03-15 21:44:28 +00:00
bg- 429d41defd * General stuff for different baudrates:
- ubr argument to slip_arch_int

    - macros for calculating ubr

    - argument -Bbaudrate to tools tunslip and scat
2007-02-02 13:26:48 +00:00
bg- f96f17f629 * Use LEDS_ALL. 2007-02-01 14:34:10 +00:00
bg- f70131f7b4 * Make minimal use of explicit ../ references. 2007-01-29 14:28:10 +00:00
bg- 26f9d3847b * Tmote sky has a CC2420_RADIO. 2007-01-24 16:31:40 +00:00
bg- 6a56b5de79 * Switch to using cmod by default.
* FreeBSD 6 comment.
2007-01-12 18:24:51 +00:00
bg- c42988b78b * Change return type of i2c_start() to int.
* Move macros I2C_ENABLE() and I2C_DISABLE() to header file.
2007-01-12 13:41:57 +00:00
bg- 8adcee17c3 * Typo in comment.
* Use nm and awk to create namelist.
2006-12-20 13:46:14 +00:00
fros4943 bd2b6a9a53 bug fix:
&uip_buf[UIP_LLH_LEN]
may not always be equal to
 uip_buf
2006-12-11 15:19:34 +00:00
bg- d8e0b4eb26 * New rule for making .ko:s. 2006-12-05 16:19:43 +00:00
bg- 7b1dd9627a * Switch to channel 15.
* We are powered via USB and there is really no need to put the CPU to
  sleep when CPU is idle.
2006-12-01 14:58:58 +00:00
bg- b9f81cf915 Move to channel 15. 2006-12-01 14:57:19 +00:00
bg- 60e930a64d Kernel with static IP configuration. 2006-12-01 14:56:39 +00:00
bg- 5345925ce6 * Kernel ssd.c is gone.
* New kernel client.c with static IP configuration.

* Replace elfloader.c with new cle.c and elfloader_compat.c. Taken
  together they requires less ROM and RAM than the old version.
2006-12-01 14:55:15 +00:00
bg- fc368b6946 ssd is gone 2006-12-01 14:50:06 +00:00
bg- 9ead26e626 Like the dhclient.c kernel but with static IP configuration.
172.16.0.9/16 and default router 172.16.0.1.
2006-10-27 13:08:15 +00:00
bg- 2c85f3b19f Use leds_toggle rather than leds_(on|off). 2006-10-10 18:25:36 +00:00
bg- 3ccac34c3d Forgot to add sample kernel. 2006-10-10 08:30:48 +00:00
bg- 7b981562ad Use minileds by default. 2006-09-27 10:00:42 +00:00
bg- fa02e72526 Bit-banging I2C master. 2006-09-27 09:43:55 +00:00
bg- 4485e50351 Add ssd kernel and uip-udp-packet.o. 2006-09-26 15:52:37 +00:00
bg- fbd527bc8f Different and hopefully correct low power management. 2006-08-17 15:42:42 +00:00
oliverschmidt 62fa3b8c01 Changed the Contiki Interface declaration macros from CCI/CLI to CCIF/CLIF because of already existing macros: Both CCI and CLI :-( 2006-08-15 14:46:33 +00:00
oliverschmidt 48609fb3a3 Added defines for declaring functions/data which are part of the CCI (Contiki Core Interface) and CLI (Contiki Loadable Interface). Both defines are empty for all platforms but the upcoming Win32 port. 2006-08-13 15:06:08 +00:00
bg- 0bf3db5df7 Make malloc machine independent by relying on dependent sbrk(2). 2006-08-11 13:41:31 +00:00
bg- 361cd531b6 Assertions are useful. 2006-08-11 13:37:21 +00:00
bg- 7f7a6ae577 * Avoid using FASTSPI_TX to reduce size of object code.
* Use off_t to avoid overflows.
2006-08-10 16:42:11 +00:00
bg- fb94d50410 Change typedef of uip_ipaddr_t from a vector type to a union.
typedef union uip_ip4addr_t {
  u16_t u16[2];
  u8_t  u8[4];
} uip_ip4addr_t;

typedef uip_ip4addr_t uip_ipaddr_t;

This implies that one must consistently pass pointers to
uip_ipaddr_t:s and not mix and match pointers with
uip_ipaddr_t:s as was done earlier.
2006-08-09 16:13:39 +00:00
bg- 7b791de692 Import of files for the Tmote sky platform. 2006-08-02 14:44:46 +00:00