Smart supermarket toy implementation for Networked Embedded Systems exam on Launchpad CC2650 with contiki-ng
Go to file
adamdunkels 7165a3866f Significant rework of the Contiki data collection protocol:
* the new version makes use of MAC-layer feedback so that bad paths
  can be identified quicker and then avoided.

* the new code uses transport layer ACKs that contain feedback from
  the collect protocol: when a packet cannot be forwarded due to lack
  of resources, the ACK contains a flag that indicates that the packet
  could not be forwarded. ACKs also contain the routing metric of the
  sender, which improves agility in face of rapid path changes.

* loop detection and management has been improved: with higher path
  metric agility, the system is more prone to short-lived routing
  loops. Instead of dropping looping packets, the new version adjusts
  the routing metric for the routes that exhibit loops so that the
  risk for future loops is reduced.

* make use of packet attributes to inform the MAC layer of how many
  times packets should be retransmitted.
2010-02-28 09:18:01 +00:00
apps Enabled compilation without timesynch enabled 2010-02-23 18:22:44 +00:00
backyard Removed closing of stdin, stdout (and stderr on the Apple2). It was introduced in order to maximize the number of available file handles for the webserver. However none of the target machine DOSes allows to open a single file several times diminishing the intended effect very much. One the other hand not being able to "just printf() something" causes trouble over and again - i.e. hello-world seemingly not working...after all a typical case of german over-enigneering ;-) 2010-02-10 07:43:25 +00:00
core Significant rework of the Contiki data collection protocol: 2010-02-28 09:18:01 +00:00
cpu Enable radio stats in sensor cgi as default 2010-02-26 21:38:57 +00:00
doc Update to Contiki version number 2.4 2010-01-29 18:03:55 +00:00
examples fixed compiler warning 2010-02-23 23:06:04 +00:00
platform Enable radio stats in sensor cgi as default 2010-02-26 21:38:57 +00:00
tools Rewrite of the Sky shell collect test. The new test is better equipped 2010-02-28 08:25:36 +00:00
Makefile.include A null radio driver that does not do anything - useful in the native port and as a template for new radio drivers 2010-02-23 18:18:53 +00:00
README README 2007-03-29 23:42:18 +00:00
README-BUILDING Add some info on the DEFINES= / savedefines mechanism. 2008-06-12 22:13:59 +00:00
README-EXAMPLES Added hint on recently added example. 2010-02-10 23:53:35 +00:00

README

Contiki is an open source, highly portable, multi-tasking operating
system for memory-constrained networked embedded systems written by
Adam Dunkels at the Networked Embedded Systems group at the Swedish
Institute of Computer Science.

Contiki is designed for embedded systems with small amounts of
memory. A typical Contiki configuration is 2 kilobytes of RAM and 40
kilobytes of ROM. Contiki consists of an event-driven kernel on top of
which application programs are dynamically loaded and unloaded at
runtime. Contiki processes use light-weight protothreads that provide
a linear, thread-like programming style on top of the event-driven
kernel. Contiki also supports per-process optional preemptive
multi-threading, interprocess communication using message passing
through events, as well as an optional GUI subsystem with either
direct graphic support for locally connected terminals or networked
virtual display with VNC or over Telnet.

Contiki contains two communication stacks: uIP and Rime. uIP is a
small RFC-compliant TCP/IP stack that makes it possible for Contiki to
communicate over the Internet. Rime is a lightweight communication
stack designed for low-power radios. Rime provides a wide range of
communication primitives, from best-effort local area broadcast, to
reliable multi-hop bulk data flooding.

Contiki runs on a variety of platform ranging from embedded
microcontrollers such as the MSP430 and the AVR to old
homecomputers. Code footprint is on the order of kilobytes and memory
usage can be configured to be as low as tens of bytes.

Contiki is written in the C programming language and is freely
available as open source under a BSD-style license. More information
about Contiki can be found at the Contiki home page:
http://www.sics.se/contiki/