The official git repository for OSD-Contiki, the open source OS for the Internet of Things
Find a file
Oliver Schmidt 91beb8670f Added SLIP support to retro platforms.
The cc65 tool chain comes with V.24 drivers so it seems reasonable to use the existing Contiki SLIP driver to implement network access via SLIP as alternative to Ethernet.

Some notes:
- The Ethernet configuration was simplified in order to allow share it with SLIP.
- The Contiki SLIP driver presumes an interrupt driven serial receiver to write into the SLIP buffer. However the cc65 V.24 drivers aren't up to that. Therefore the main loops were extended to pull received data from the V.24 buffers and push it into the SLIP buffer.
- As far as I understand the serial sender is supposed to block until the data is sent. Therefore a loop calls the non-blocking V.24 driver until the data is sent.

On all platforms there's only one V.24 driver available. Therefore V.24 drivers are always loaded statically.

On the Apple][ the mouse driver is now loaded statically - independently from SLIP vs. Ethernet. After all there's only one mouse driver available. However there's a major benefit with SLIP: Here all drivers are loaded statically. Therefore the dynamic module loader isn't necessary at all. And without the loader the heap manager isn't necessary at all. This allows for a reduction in code size roughly compensating for the size of the SLIP buffer.
2017-02-15 23:43:28 +01:00
apps Orchestra: avoid a link error for nbr_routes 2017-01-19 13:55:08 +01:00
core Removed artifacts of former uip_appdata handling. 2017-02-05 23:20:39 +01:00
cpu Added SLIP support to retro platforms. 2017-02-15 23:43:28 +01:00
dev Merge pull request #1957 from alignan/pull/bme280-sensor 2016-12-10 18:37:21 +01:00
doc Update code-style.c 2016-12-03 12:21:04 +01:00
examples Merge pull request #2073 from cetic/pr-fix-send-na 2017-01-20 13:18:43 +01:00
lib Add support for the FAT file system 2016-11-27 22:50:44 +01:00
platform Added SLIP support to retro platforms. 2017-02-15 23:43:28 +01:00
regression-tests Merge pull request #2073 from cetic/pr-fix-send-na 2017-01-20 13:18:43 +01:00
tools Added SLIP support to retro platforms. 2017-02-15 23:43:28 +01:00
.gitattributes Add binary files file extension 2015-10-22 16:19:39 +02:00
.gitignore Merge pull request #1469 from wbober/nrf52dk-pr 2016-06-01 23:11:39 +02:00
.gitmodules Add sensniff as a submodule 2016-12-04 18:43:17 +00:00
.travis.yml frame802154: comply with IEEE 802.15.4-2015 on PAN ID Field Handling 2016-12-05 22:45:07 +01:00
CONTRIBUTING.md Updated CONTRIBUTING.md to reflect Contiki's new merging policy 2015-08-18 22:06:56 +02:00
LICENSE Removed the explicit year 2012 to make it more generic 2012-10-25 23:08:54 +02:00
Makefile.include Extended SOURCEDIRS variable with EXTRALDIRS variable in Makefile.include 2016-02-15 09:37:38 +01:00
README-BUILDING.md Rename to md 2013-03-26 23:15:37 +01:00
README-EXAMPLES.md Several minor consistency improvements. 2013-07-31 00:55:31 +02:00
README.md Travis icon in README.md: show build status of the current master rather than latest build status (can be any pull request) 2015-08-19 09:21:38 +02:00

The Contiki Operating System

Build Status

Contiki is an open source operating system that runs on tiny low-power microcontrollers and makes it possible to develop applications that make efficient use of the hardware while providing standardized low-power wireless communication for a range of hardware platforms.

Contiki is used in numerous commercial and non-commercial systems, such as city sound monitoring, street lights, networked electrical power meters, industrial monitoring, radiation monitoring, construction site monitoring, alarm systems, remote house monitoring, and so on.

For more information, see the Contiki website:

http://contiki-os.org