-
Notifications
You must be signed in to change notification settings - Fork 11
Home
Welcome to the Contiki wiki! The main sections are available from the table below, or from the sidebar at right, which appears on each page. So explore, you won't get lost. :-)
[Develop](#wiki-Develop) | Guides and tips on getting started, configuration and tuning |
[Platforms](#wiki-Platforms) | Guides to specific hardware |
[Internals](#Internals) | Details on Contiki's organization and subsystems |
[Community](#wiki-Community) | Links to Contiki-related projects and enhancements developed by users |
[Help](#wiki-Help) | Links to resources like the mailing list and issue tracker |
Have a tip or project to share? Add it to the wiki! All you need is a free GitHub account.
Have code you'd like to contribute? Great! See Code-Contributions to submit and include it in the Contiki tree.
Guides and tips on getting started, configuration and tuning.
- Contiki-Build-System
- Reducing Contiki OS firmware size
- Creating "out-of-tree" project, apps, and targets using Git Submodules
- File systems - how to use the CFS APIs and Coffee FS configuration parameters
- Coffee filesystem example - walkthrough of using Coffee FS
- Debugging System: Ideas on how to improve the debugging system
- Webserver nano_AJAX_streaming_Example_Guide
- Configuring HTTP Proxy
The repository includes ports for several hardware platforms. Drill down for implementation specifics.
- AVR
- mc13224v-based
- RL78 + ADF7023 sub-GHz platform - eval-adf7023 eval board from Analog Devices. See platform README for how to get started.
- Host Subprocesses (native, minimal-net)
- Java (Cooja motes)
- 8051-Based-Platforms (TI cc2530 DK and Sensinode/cc2430)
- Zolertia-z1-motes (MSP430x2 + CC2420 based)
- TI CC2538 Development Kit, documented in the README under the platform dir
There are also platforms that are no longer in the main tree:
Some routers and gateways run Contiki and others are simply useful for setting up 6LowPAN networks
- BR12 - embedded Linux based 6LoWPAN router (includes the BRamble 6LoWPAN administration frontend)
- red-IO Contiki-based router. Can run Mist(Nat64/DNS64) or 6lbr(native ipv6 routing)
Also see links to out of tree implementations in the Community section below.
Details on Contiki's organization and subsystems.
- Processes
- Timers
- Callback timer
- Memory allocation
- Input and output
- Libraries
- File systems
- The dynamic loader
- Multithreading
- RPL modes
- Radio duty cycling
- Change MAC or Radio Duty Cycling Protocols
- Information about ContikiMAC
Projects and enhancements developed by Contiki users, not in the main Contiki tree.
- Some projects are hosted/mirrored in the Contiki Projects repository on SourceForge.
- JenniSense NXP/Jennic JN51xx ieee802.15.4 SoC and open hardware schematics
- Contiki-Senslab Contiki port for Senslab nodes, including a CC1101 radio driver
- contiki-avr-zigduino
- contiki-arduino, contiki-arduino-2.2
- contiki-dspic Contiki port for Microchip dsPIC micro-controller (cpu + board support 'platform' for Dangerous Prototypes Web Platform)
- BatMote, a small size, low cost, WSN platform with Contiki support, based on Atmega128RFA1.
- Flexibity Sensors, DIY home sensors platform with Cosm integration based on MC13224V, Contiki and OpenWRT.
- Collection of Cooja and Contiki patches
- Contiki BBS: A simple telnet BBS server for the Commodore 64 homecomputer based on Contiki.
- Minilink: An improved linker for Contiki (for MSP430-based Nodes only).
- Migmem: A library to serialize applications and migrate their memory. Bases on the Minilink linker.
- Rudolph1 ported to unicast on top of Mesh
- 6LP-GW Implementation of a 6LoWPAN Neighbor Discovery Proxy gateway.
- 6LoWPAN-ND implementation. An implementation of the Neighbor Discovery Optimization for LLNs (draft-ietf-6lowpan-nd-18) for Contiki.
- 6LBR for RPL: an implementation of a RPL-friendly 6LoWPAN Border Router
- T-Res: a programming abstraction framework enabling re-configurable in-network processing in IoT-based WSNs.
- GDBStub for Sky Motes
- CoojaTrace: A framework to trace and log data using Cooja. Extensions are CoojaTracePlot to plot the data in Cooja and CoojaTraceSQLite to log the data to an SQLite database.
- Serial2pty: Creates a real serial device for a virtual mote.
- Mobility COOJA plugin: The Mobility plugin for Cooja allows using a data file with positions over time for the nodes in the simulation.
- Kleenet COOJA project: Integrate Kleenet into Cooja.
- RealSim tries to map a real network to Cooja. Can be used to configure DGRM over time, too.
- Headless Radio Logger: Generate PCAP files in headless mode.
- PPA for Ubuntu
- A slider to change the values of the light sensor
- Power Tracker A Cooja plugin that shows a window with the average duty cycle of the Tmote Sky radio. This can be used to measure the power consumption of the network as well as to assess the power overhead of a duty cycling MAC protocol.
- csc2svg extracts the network topology from a csc file and saves it as svg.
- cooja-dbus uses dbus to let external programs control the simulation.
- sky-boards-collect, an extension to contiki-collect-sky-2.5.
Website | Check the Contiki website |
Stackoverflow | Submit your questions with the Contiki tag on Stackoverflow |
Bug reports | Use the Issue Tracker provided by Github. |
Mailing List | For Contiki development discussion use the mailing list home or Gmane archive |
IRC | Join #contiki-os channel at irc.freenode.net for live community discussion |