|
Statistics |
|
Visitors: 1946100
|
|
|
Changelog
|
|
|
Written by Adam Dunkels,
Monday, 03 December 2007 |
Changelog for Contiki 2.4 (16 February 2010)
Main changes
- Significant improvements to power-saving low-power radio MAC protocols.
- Several bugfixes to uIP and the SICSlowpan code.
- New sensor API.
- Significant COOJA/MSPsim speedup.
- Two new experimental platforms: MicaZ and Sensinode 8051/CC2430.
Low-Power Radio MAC Protocols
- New CSMA MAC protocol, running on top of the low-power MAC layer protocols such as X-MAC, that performs retransmissions when it detects collisions or interference. Enabled by default on Tmote Sky.
- Significant improvements to X-MAC: the low-power operation now registers the phase of the neighbors and reduces the strobing period according to the phase of the receiver; broadcasts are transmitted more power-efficiently; frame format now compatible with 802.15.4.
- Streaming support for both LPP and X-MAC.
- New non-rtimer-based implementation of X-MAC, called CX-MAC, for platforms without rtimer support.
- New configuration option for easier tuning of low-power MAC channel check rate.
- Tmote Sky boot-up code now prints channel check rate by default.
uIP and Rime Networking
- SICSlowpan now with low-power MAC for Tmote Sky.
- Bugfix that allow 6lowpan fragmentation and reassembly with low-power MAC on the Tmote Sky.
- Bugfixes in uIP code: start timer if lost SYN; loss of SYNACK bugfix; avoid using floating point operations in IPv6 code.
- Bugfix in IPv4-over-mesh: work better over low-power MAC.
- Support for receiving IPv4 multicast.
- Runicast retransmission time configurable in contiki-conf.h.
- Improved Tmote Sky IPv6/6lowpan bridge setup.
API Changes
- Sensors API changed; Tmote Sky platform updated to match the new API.
COOJA
- 10x speed improvement through improved MSPSim integration.
- Introduced low-overhead debugging interface for MSPSim-based simulation.
- Simplified application-level simulation, with examples.
- Coffee filesystem integration.
- Improvements to Timeline and Visualizer plugins.
- Better support for MicaZ emulation.
Nightly Builds and Contiki Regression Test Suite
- Test configuration structure updated: test files are now self-contained.
- New uIPv6 routing test.
- Improved shell collect test.
- New shell netperf test.
Contiki Shell
- New shell modules: netperf for testing the communication performance between two neighbors, memdebug, with commands 'peek' and 'poke', for reading and setting memory locations from the shell - useful for debugging device drivers.
- Alignment bugfixes.
Drivers
- CC2420 now allows transmission power to be set on a per-packet basis.
- CC2420 timesynch bugfix.
- CC2420: Enabled SFD interrupts.
- Serial line improvements.
- Faster SPI driver.
Platforms
- New platforms: MicaZ (experimental), Sensinode 8051/CC2430. (experimental)
- Minimal-net now has IPv6 support.
- Significant improvements to Tmote Sky IPv6 support.
- 6502: Compatibility with cc65 version 2.13; 80 column screen on Apple2 and C128
- msb430: New SD driver written from scratch.
Other Changes
- Modules mmem and dhcpc are now compiled by default.
- New examples for email, irc, webserver, wget.
- Improved IPv4 and IPv6 examples for the Tmote Sky.
- Bugfixes in AVR ELF loader.
- Power profiling bugfix: energy was sometimes misattributed when peripheral was switched off when it was already off.
- New simplified rtimer code that only handles one rtimer.
- Rime examples now run on disjoint channels to avoid semantic interference.
- New Java-based maintenance tool for Coffee file system images.
- Improved makefsdata script.
Changelog for Contiki 2.3 (27 June 2009)
New features
- IPv6 routing layer
- Cooja TimeLine
- IPv6/6lowpan for Tmote Sky
- MSB430 port
- Many new shell commands
- Improved LPP power-saving MAC protocol
- Twitter client
uIP
- Support for UDP-based IPv6 routing protocols implemented with Rime
- New IPv6 multi-hop routing module using Rime's route discovery algorithm
- Made IPv6 routing modules easily replaceable
- Alignment problems in SICSlowpan fixes to make it work on MSP430
- IPv4 routing bugfixes
- Protosocket send bugfix significantly increase tcp throughput
Rime
- New packet queue module that keeps track of a packet queue
- collect: now maintains a queue of packets to be forwarded
- Multihop bugfix: avoid overwriting packet attributes
Duty-cyling power-saving MAC protocols
- Mac layer structure has init function to make configuration easier
- Many improvements and optimizations to LPP
- X-MAC now does not run rtimer when off, to avoid problems with serial communication on MSP430
Coffee
- Improved the garbage collection efficiency and correctness.
- Fixed a bug in file merges.
Power profiler
- Support for flash read and write
Shell
- New commands: netstat (show TCP connections), sendcmd (send command to a node), download (download file from a node), neighbors (show neighbors), unicast (send a unicast packet to a node), tweet (send Twitter message), sensortweet (send Twitter message with sensor data)
- New block size option to "read" command
Cooja
- Cooja TimeLine, new visualizer that shows radio communication and interaction
- New watchpoints on MSPSim-based nodes, visible in the TimeLine
- Simulation resolution changed from milliseconds to microseconds
- Simulation scripts are now integrated with the simulation configurations for easier scripted simulations
- Scheduling now fully event-based, resulting in faster simulations
- Various user interface updates: Cooja menu system, log and radio listeners, and source-code debugger
MSP430
- Default MSP430 CPU speed increased from 2.4 MHz to 3.9 MHz
- mspgcc memcpy bug workaround added
Tmote Sky / TelosB / Sentilla JCreate port
- Support for IPv6/6lowpan
- New bridge tool for seamless integration of IPv6 sensor networks and general-purpose IPv6 networks
- CC2420: optional timestamping with incoming packets
- New RSSI scanner example application
- Webserver now displays an Ajax-style spinner icon when loading sensor data
Atmel Raven port
- Bugfixes for the USB stick module
- HTML code moved to flash ROM and made W3C compliant
- Wildcard to display all files in file-stats cgi script
Instant Contiki
- Updated to latest Ubuntu packages
- Sentilla JCreate compatibility
- jpcap installed
Changelog for Contiki 2.2.3 (24 March 2009)
New features
- Checkpointing: stores the current execution state of a node in a CFS file from which it later can be rolled back (currently only on the Tmote Sky/TelosB/JCreate platform)
- Per-packet power profiling: allows fine-grained breakdown of a node's power consumption on a per-packet basis
- Announcements: announcements, such as route announcements and neighbor discoveries, are made independent of the applications and protocols, to allow rapid neighbor discovery and improved routing in face of mobility
- Deluge: a network protocol that disseminates a file to all nodes in the network
New platforms
Shell commands
- udpsend: sends a UDP packet to a specified receiver
- tcpsend: sets up a TCP connection to a specified receiver
- irc: participates in on-line IRC discussions
- The 'ping' command from 2.2.2 was renamed to 'rime-ping'
- The 'sniff' command has a new option, '-a', that displays packet attributes for sniffed packets
Internal changes
- rimebuf module renamed to packetbuf
- serial module renamed to serial-line
- CC2420 additional link-level CRC made optional; CC2420 time stamps made optional
- RSSI, link quality, and timestamp are now provided as packet attributes; Packet attributes now specify radio transmission power.
- Raven apps moved from apps/ to platform/avr-raven/apps/
Bugfixes
- httpd-cfs bugfix: TCP connections were prematurely timed out
- The previous random_rand() function was not random enough - switched to libc rand() instead
- Bugfixes to the collect protocol
Coffee changes
- Compiled code size decreased by 1kb.
- File metadata structures redesigned to improve file I/O semantics and to enable faster opening of files
CFS changes
- cfs_seek can now move file offsets backwards and to the end of the file.
Cooja changes
- Contiki motes more tightly integrated into the Contiki build system
- Added test editor for creating non-GUI tests
MSP430 changes
- Periodic resync of DCO to ensure stable CPU timing
- Set CPU to low power mode only when the UART is not transmitting
- Added ability for interrupt-driven UART transmission
- Unified the tick timer and real-time timers and both now uses timer A
x86 changes
- Multi-threading library now 64-bit compliant
Changelog for Contiki 2.2.2 (17 November 2008)
New features
- uIPv6 - the world's smallest fully compliant IPv6 stack
- SICSlowpan - IPv6 over 802.15.4
- Atmel AVR Raven port
- 802.15.4 MAC layer for the Atmel AVR Raven
- Two new shell commands for HTTP interaction: wget and httpd
- COOJA simulator significant speedup
- Improved integration between COOJA and MSPsim
- Automated testing mechanism in COOJA
- Binary packages for Tmote Sky/TelosB and Atmel AVR Raven
Bugfixes
- Major bugfix in the protosocket code that could cause packet corruption during retransmissions, and affected all TCP/protosockets-based apps
- Bugfix in Coffee EOF handling
Changelog for Contiki 2.2.1 (6 September 2008)
New features
- Better data presentation in the Contiki collect program
- Reduced power consumption for broadcast traffic with X-MAC
- Improved network performance for data collection
Bugfixes
- Fixed a severe bug in the data collection protocol that could make the network stop responding
- Added workaround for a problem with the CC2420 radio under high traffic load
- Bugfix in the Coffee flash file system
Changelog for Contiki 2.2 (12 July 2008)
New features
- Significantly improved command line shell with Unix-style pipelines, concurrent command execution, network-wide command execution, collect sensor data, see the power profile, network communication using the Rime stack, and file system interaction. The shell can be used over a serial line or over Telnet/TCP/IP.
- Coffee: a flash ROM file system.
- New program for displaying sensor data and network statistics from a network of wireless Contiki sensors.
- A simple network time synchronization mechanism.
- Instant Contiki: a full Contiki development environment in a single-file download. A VMWare Ubuntu Linux image with all necessary Contiki development tools installed.
- The Chameleon architecture for the Rime low-power radio stack. The Chameleon architecture that separates protocol headers and protocol logic. Packets are now tagged with packet attributes that follow them through the stack. [Dunkels et al, SenSys 2007]
- New experimental low-power MAC prototol: LPP, Low-Power Probing. [Musaloiu-Elefteri et al, IPSN 2008]
Example applications
- New AJAX-style web server example for the Tmote Sky / TelosB boards showing the current sensor readings and power profile on a web page that is continuously updated.
Kernel
- Improved process initialization handling that reduces event queue size.
- Moved power profiling module (energest) from lib/ to sys/
Libraries
- Added function for computing CRC16 over a data array
Rime
- Bugfixes and improvements to many protocols in the stack: neighbor discovery, trickle, data collection.
- Changed several module names into more descriptive ones: ibc -> broadcast, uc -> unicast, etc.
- Added a sniffer module functionality that allows callback functions to be called on all incoming and outgoing packets.
CFS
- Bugfixes in handling of CFS_APPEND flag.
uIP
- New configuration option that turns IP forwarding on or off: UIP_CONF_IP_FORWARD
MAC
- Bugfixes and improvements to X-MAC code: radio is turned off when sending broadcasts, broadcasts do not send probe packets.
- Added a string name to the struct mac interface to allow printing the name of the current MAC protocol for debugging.
MSP430
- Bugfixes in watchdog driver.
Tmote Sky / TelosB
- Updated CC2420 driver, changed name from simple-cc2420 to cc2420.
- Added experimental CC2420 AES encryption support.
ESB
- TR1001 driver now uses Rime statistics
Win32
- wpcap driver now handles IPv6 interfaces too.
6502
- Leveraged new cc65-2.12.0 apple2enh C-Library feature (using
Language Card bank 1).
Changelog for Contiki 2.1 (3 December 2007)
New features
- Energy profiling that provides measurements of how much energy is spent, and where
- Power-saving MAC layer for low-power radios based on the X-MAC protocol
- New platforms: MSB430, C64, enhanced Apple //e, PC-6001 (w/ 32kB RAM) and PC-6001 mkII
Build system
- All compiler warnings removed from the core code
- New parallel reprogramming mechanism for Tmote Sky that allows simultaneous reprogramming of all Tmote Sky boards connected to the PC
Example applications
- New energy profiling demo application for the Tmote Sky platform
- New Tmote Sky sensor and energy profiling data collection example
- New ESB demo applications
- Several new Rime examples
- Multi-threading library demo application
- CFS-based webserver
Kernel
- The service paradigm was removed because it was not as useful as was originally intended
- Machine-neutral multi-threading library implementation
- The rtimer module was updated; but we have found bugs when using multiple concurrent rtimers that will be fixed for the 2.2 release.
Rime
- Rime now maintains (optional) statistics
- Rime modules uabc and uibc changed name to polite and ipolite. The tree module changed name to collect.
- New hop-by-hop reliable multi-hop unicast forwarding module: rmh.
- Unicast multi-hop forwarding modules mh and rmh now invoke the upper layer protocol when doing forwarding, to allow user-defined routing protocols.
- The data collection module, collect, now uses the number of expected transmissions to the sink as the routing metric instead of hop count.
- New API for MAC protocols and radio drivers.
- Rime address size is now configurable.
- Routing table entries now refreshed upon every lookup.
- Bugfixes to the reliable single-hop unicast module, ruc.
- New reliable single-hop block transfer module, rucb.
- The reliable network flooding module, trickle, has been rewritten with the nf module.
CFS
- CFS service paradigm removed - all CFS drivers are now regular C functions.
- Prototypes updated to better match POSIX
CTK
- CTK service paradigm removed - all CTK drivers are now regular C functions.
uIP
- Packet driver service paradigm removed - all packet drivers now register themselves actively with the TCP/IP stack (the single packet driver service client)
MSP430
- Watchdog timer support
- A/D converter interrupts turned off because of too many interrupts; work is underway to fix.
Z80
- Z80 architecture-dependent multithreading library and native uIP checksum calculation
Tmote Sky
- New parallel reprogramming system
- SHT11 driver
Win32
- As an alternative to Microsoft Visual Studio 2005 there is now a build fully integrated with the Contiki build system using Cygwin & GCC
C64, enhanced Apple //e
- Generic Ethernet packet driver with dynamically loading, self-modifying Ethernet card device drivers for the CS8900A and the LAN91C96
PC-6001
- Multithread, serial communication, and SLIP networking are supported.
- Various build configurations enable running on very memory restricted environment.
|
Adam Dunkels
(contact)
|
|
Recent Popular Contiki Articles |
|
|
|