Commit graph

836 commits

Author SHA1 Message Date
oliverschmidt 2ede893aa6 The feature set of gnumake is really frightening: This time I discovered 'target-specific variable values'... 2008-05-26 11:26:57 +00:00
oliverschmidt f74503c23c Replace non-fully-functional hack with the new gnumake variable CONTIKI_PROJECT. 2008-05-26 10:13:32 +00:00
oliverschmidt 356f5cfa04 The recent optimizations (usage of language card bank2 through new C-library, logging through ROM routine, removal of unused IP forwarding code) allowed to increase the number of concurrent HTTP conntections from 3 to 7 :-) 2008-05-23 23:13:41 +00:00
oliverschmidt a78a7dedbc Added make target 'disk' for creating a .dsk disk image using AppleCommander. 2008-05-22 22:21:43 +00:00
oliverschmidt 7120cf4404 Added make target 'disk' for creating a .d71 disk image using c1541. 2008-05-22 22:19:30 +00:00
oliverschmidt dc63b33956 Added make target 'disk' for creating a .d64 disk image using c1541. 2008-05-22 22:18:25 +00:00
oliverschmidt cd1608aa08 Activate uIP forwarding support. 2008-05-22 19:49:48 +00:00
oliverschmidt e914302e94 Removed check already done in Makefile.include. 2008-05-22 19:45:47 +00:00
oliverschmidt b750e8cc42 Moved platform/c64/contiki.cfg to tools/c64/sample.cfg 2008-05-21 08:13:04 +00:00
oliverschmidt 5dba39fab1 Moved platform/c128/contiki.cfg to tools/c128/sample.cfg 2008-05-21 08:09:46 +00:00
oliverschmidt a341f981aa Moved platform/apple2enh/contiki.cfg to tools/apple2enh/sample.cfg 2008-05-21 07:59:43 +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 7aa8508e0b Added display of radio status: a green ring appears around nodes with their radio turned on. Added a command that prints out a .fig file that shows the current network setup (press the 'd' key). 2008-05-14 19:22:57 +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
joxe 7be3aeeeb5 added sampling mode in sound sensor 2008-04-25 15:55:37 +00:00
fros4943 c4df31376e cooja hello world (+ include printf2log.h) 2008-04-22 13:07:49 +00:00
nvt-se 73978e3133 only include sdspi.h if WITH_SDC is on. 2008-03-31 14:33:23 +00:00
nvt-se acf01a0c58 fixed compilation error. 2008-03-31 14:32:00 +00:00
nifi f916c7b130 initialize ctimer after initialization of process 2008-03-31 14:01:26 +00:00
nvt-se 067e4c3c06 include contiki-conf.h for type definitions. 2008-03-31 13:48:03 +00:00
nvt-se f7b3d9fc99 moved files to sd/ 2008-03-31 13:45:52 +00:00
nvt-se fdcc145150 added missing file. 2008-03-31 13:43:34 +00:00
nvt-se 2822ff7ddb made more conform with contiki indentation. 2008-03-28 23:03:05 +00:00
nvt-se 10cabda581 lock wait function from Michael Baar. 2008-03-28 16:06:28 +00:00
nvt-se bd8809d35d print information about the SD card, if existent. 2008-03-28 16:02:01 +00:00
nvt-se 6486460e3f locking bugfix from Michael Baar. 2008-03-28 15:59:58 +00:00
nvt-se 3fec8ee5e7 synced with newer version by Michael Baar. 2008-03-28 15:58:43 +00:00
nvt-se d5c8b18fc2 added accelerometer test with moving average. 2008-03-27 13:08:35 +00:00
nvt-se 5631c92416 use three different input channels for the accelerometer. 2008-03-27 13:04:59 +00:00
oliverschmidt 85edbc01db Starting with the cc65-snapshot-2.11.9.20080316 the Apple2 C-library supports placing code in the Apple2 Language Card by choosing the code segment 'HIGHCODE'. By default the memory area 0xD400 - 0xE000 is used for HIGHCODE. If the application doesn't need the ProDOS 8 QUIT code then the memory area used for HIGHCODE may be extended to 0xD000 - 0xE000.
Contiki now leverages that feature to place process.o, etimer.o and uip_arp.o in HIGHCODE. These files were carefully chosen as:
- they are necessary for all Ethernet apps
- their size doesn't depend on configuration macros
- they fill the available space nicely (with a little reserve for changes in the source or the compiler)
2008-03-24 22:49:00 +00:00
fros4943 b5d09f3822 set default radio channel: 26
same as sky platform
2008-03-18 16:22:00 +00:00
fros4943 660bc5e991 changed ss values + added configurable csma mac 2008-03-17 09:48:00 +00:00
nifi ddcda4582e ctimer initialized by contiki-esb-main 2008-03-13 15:59:43 +00:00
nifi 3ecd955f01 energest needs to be initialized before network 2008-03-13 15:58:44 +00:00
nifi 79cb912f7c reduced memory usage, removed procinit, general cleanup of initialization, enabled watchdog 2008-03-07 17:54:22 +00:00
oliverschmidt 9071007e1e For the Win32 platform build we need to define AUTOSTART_ENABLE even for the Contiki library files to be able to autostart the program handler.
Note: For this to work the program handler needs to be the first autostart enabled application in the Contiki library. As the GNU archiver guarantees to preserve the order of the object files in a library this can be accomplished by having the program handler the first item in APPS.
2008-03-04 22:55:54 +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
adamdunkels 136443a387 Print out interface address 2008-03-03 20:21:59 +00:00
oliverschmidt 8a4890c9e5 Free up unused file descriptors. 2008-02-28 21:56:47 +00:00
oliverschmidt 368d389970 Free up unused file descriptors. 2008-02-28 21:36:37 +00:00
nvt-se 1d3bae48dd added sd card support. 2008-02-28 15:49:01 +00:00
nvt-se 2cc0135e35 cleaned up and fixed an error checking problem in the locking code. 2008-02-28 15:11:22 +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
oliverschmidt d74fd06536 Now that process initialization has been changed (back) to synchronous it needs to be called after reading the config file and setting the mouse sprite in order to preserve the existing logic. 2008-02-17 14:12:52 +00:00
oliverschmidt 93789de9dd Now that process initialization has been changed (back) to synchronous it needs to be called after reading the config file in order to preserve the existing logic. 2008-02-17 14:11:48 +00:00
oliverschmidt df441f50a3 Replaced (now obsolete) PROCESS_LOADABLE with AUTOSTART_ENABLE. 2008-02-15 16:51:06 +00:00
nvt-se a06b85f74b adjusted uIP parameters. 2008-02-13 15:41:04 +00:00
fros4943 27ac84d009 simlog function declaration 2008-02-11 18:45:18 +00:00
fros4943 4c56fce697 updated cfs_write arguments 2008-02-11 18:40:16 +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
oliverschmidt b252bb9fc9 Removed finally unnecessary cast (and reverted unintentionally commited change). 2008-02-10 22:52:41 +00:00
oliverschmidt 2632f8f937 Removed finally unnecessary cast. 2008-02-10 22:36:36 +00:00
oliverschmidt 0e96534ca8 Now that process initialization has been changed (back) to synchronous it needs to be called after adding program handler menu items in order to preserve the the existing program handler logic. 2008-02-10 19:14:48 +00:00
oliverschmidt 8823dfe250 Adjusted to the new shell. 2008-02-10 12:13:06 +00:00
oliverschmidt 2b1abd87af Replaced (now obsolete) PROCESS_LOADABLE with AUTOSTART_ENABLE (and use it now in the platform build to start the program handler). 2008-02-10 11:29:24 +00:00
oliverschmidt 034bc4ec66 Adjusted to the new shell. 2008-02-09 18:56:26 +00:00
oliverschmidt 614fa668cd Removed SELFSTART_PROCESS as AUTOSTART_ENABLE generally serves that purpose - and AUTOSTART_ENABLE gets already set as required :-) 2008-02-08 22:48:28 +00:00
oliverschmidt 0655839603 Removed superfluous semicolon. 2008-02-08 12:14:52 +00:00
oliverschmidt fe6a55d1a4 Accomodate for the now more complex shell output. 2008-02-07 23:06:03 +00:00
oliverschmidt 806f79bb03 Replaced (now obsolete) PROCESS_LOADABLE with SELFSTART_PROCESS. 2008-02-07 16:34:18 +00:00
oliverschmidt 155a27ff59 Switched from (now obsolete) 'process_load' to 'autostart_processes'. 2008-02-07 15:53:43 +00:00
oliverschmidt a105e1a40c Added 'const'. 2008-02-06 16:41:19 +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 f5b08ff115 Added a crude hack for drawing lines between nodes 2008-02-03 20:49:50 +00:00
adamdunkels 28a3a51f82 Added uIP ICMP destimation unreachable message generation 2008-01-24 23:09:40 +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
nifi 3e0e3d4965 added energest-arch.c 2008-01-18 18:26:02 +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 7a356d0fb5 Added support for (simulated) serial data input. Data written to netsim's standard input are now sent as serial data to the main node. 2008-01-14 09:38:16 +00:00
fros4943 4c131d6975 added max printf2log message size 2008-01-11 15:37:38 +00:00
adamdunkels 0cb1efe718 Added cfs-posix 2008-01-08 14:27:28 +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
adamdunkels bd9230b4b3 Added serial input from stdin, removed uIP initialization since uIP is not used anyway, made stdout unbuffered 2008-01-08 08:08:57 +00:00
adamdunkels b7ab95499f Added serial and cfs-posix-dir 2008-01-08 08:08:05 +00:00
oliverschmidt 26a554e7c2 Added C128 port. It runs the example webserver both in the cgi and cfs variant - although the latter only with a reduced MTU size due to memory constraints. 2008-01-05 22:30:23 +00:00
oliverschmidt a9a1a00f27 Moved GTK port to the backyard as it doesn't work for quite some time by now. 2008-01-05 21:06:38 +00:00
oliverschmidt 00d75c8d16 Made use of uip_ipaddr_to_quad(). 2008-01-04 23:28:33 +00:00
oliverschmidt 74fc3b4576 Made netsim gateway ip addr on Windows/Cygwin configurable at the command line. 2008-01-04 23:23:29 +00:00
oliverschmidt 5bff4631e4 Minor reformatting. 2008-01-04 23:09:03 +00:00
oliverschmidt f75d01a428 Log ip addr in the ordinary way. 2008-01-04 22:21:04 +00:00
oliverschmidt b96c9deebc Added "usual" comments. 2008-01-04 21:53:32 +00:00
oliverschmidt bb19396d21 Introduced yet another high-level config macro. 2008-01-01 19:47:03 +00:00
oliverschmidt 852d2c0283 Introduced very lightweight pfs implementation based on Apple ProDOS.
ProDOS requires for each opened file a user-supplied page-aligned 1024 byte i/o buffer. This makes the generic POSIX file i/o library contained in the cc65 C-library quite heavyweight.

In contrast the lightweight pfs implementation uses the uIP packet buffer as ProDOS i/o buffer. Therefore:
- Only one file may be open at any time.
- That file may not be open while the uIP packet buffer is used by uIP. The open()/read()/close() sequence should be completed before Contiki event scheduling or inside handling a single Contiki event.
- The uIP packet buffer must be large enough to hold the ProDOS I/O buffer. Depending on the position of the uIP buffer in memory this means between 1024 and 1024 + 256 bytes. Therefore in an Ethernet environment setting the MTU_SIZE to at least 1266 is safe (So the default of 1500 is just fine).
2008-01-01 18:49:50 +00:00
oliverschmidt 69faf1ff4d Set sprite color. 2007-12-24 15:01:49 +00:00
oliverschmidt 5592b1df6c Implement cfs API on preprocessor level using POSIX functions.. 2007-12-23 15:29:19 +00:00
oliverschmidt fda38428d9 Introduced some more high-level config macros. 2007-12-23 13:55:38 +00:00
oliverschmidt 14a8cf7200 Made use of the new high-level config macros. 2007-12-23 12:33:57 +00:00
oliverschmidt 125f261b7d Introduced high-level macros to be set on the make command line. They allow easy configuration of Contiki for typical (cc65-)project scenarios. 2007-12-23 12:32:43 +00:00
oliverschmidt 0564cc50fd Splitted POSIX based cfs implementation to avoid pulling in potentially large POSIX directory I/O functions without needing them at all. 2007-12-21 01:36:01 +00:00
oliverschmidt fe023c6d3e Introduced very lightweight log implementation not depending on any file I/O library. 2007-12-21 00:43:57 +00:00
oliverschmidt c36697fca9 Added target-specifc mouse configuration values. 2007-12-20 22:59:41 +00:00
oliverschmidt e63610e1c9 Added target-specifc mouse support (sprite handling). 2007-12-20 22:54:22 +00:00
oliverschmidt ff6622310f Added target-specifc mouse configuration values. 2007-12-20 22:52:18 +00:00
oliverschmidt eab988e84d Added target-specifc ctk (and www) configuration values. 2007-12-20 20:54:15 +00:00
nvt-se f0891be218 added clear channel assessment timeout. long to begin with. 2007-12-20 14:44:31 +00:00
fros4943 d8f6f03edc moving radio init to init-net files 2007-12-20 13:43:24 +00:00
fros4943 d0997c2dab major bugfix: padding synch with zero 2007-12-20 13:36:59 +00:00
nvt-se abb2731ed7 corrected comparison when bits don't need shifting. 2007-12-20 10:48:01 +00:00
nvt-se 7a6a9e62e4 improved logic. 2007-12-19 13:25:41 +00:00
nvt-se 1f00c20815 state variable must be volatile. 2007-12-19 13:09:01 +00:00
oliverschmidt 70fe24817e Added target-specifc ctk (and www) configuration values. 2007-12-18 17:51:20 +00:00
nvt-se b4a8641dda removed printf's. 2007-12-18 15:27:43 +00:00
nvt-se f9d24f0d24 Wake up from sleep in the interrupt when the receiver process is going
to be polled.
2007-12-18 15:26:25 +00:00
fros4943 d21572da02 configurable port 2007-12-18 11:55:01 +00:00
nvt-se ab115e4b10 Removed deprecated function. 2007-12-17 20:18:29 +00:00
nvt-se 1566f55e04 use smaller payload buffer size and provision for synchronization word in
the total buffer.
2007-12-17 20:15:53 +00:00
nvt-se bcefffb0e7 set ev to valid value. 2007-12-17 18:48:50 +00:00
nvt-se 692da8fd47 swapped the currents for lpm and cpu. 2007-12-17 18:47:17 +00:00
nvt-se 004143b6b8 set rxlen to zero before enabling interrupts. 2007-12-17 16:37:15 +00:00
nvt-se 2288cdecbb small cleanup. 2007-12-17 16:23:32 +00:00
nvt-se 2d5f331b34 new line. 2007-12-17 16:20:34 +00:00
fros4943 479d74ce6a added receiver process outside interrupt 2007-12-17 15:53:57 +00:00
fros4943 7886d51045 removed old dma_init 2007-12-17 15:47:55 +00:00
fros4943 3936e0c275 updated version 2007-12-17 15:47:40 +00:00
nvt-se 5f1ca4ccdf use synchronous transmission. 2007-12-17 15:26:47 +00:00
nvt-se 2a0351afb4 improved uip support and cleaned up the source. 2007-12-17 13:33:09 +00:00
nvt-se 86ce511469 Separate files for network initialization. 2007-12-17 13:20:54 +00:00
nifi babb455dae More explicit assignment of Rime address from node ID 2007-12-17 13:04:10 +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
nifi f4ddc371e8 changed the way that rime address is set 2007-12-17 12:17:23 +00:00
fros4943 4da695ce72 bugfix: adding cc1020_init again, node hangs at cc1020_on (calib) otherwise 2007-12-17 11:23:57 +00:00
nvt-se 6a42706847 removed duplicate. 2007-12-17 11:15:21 +00:00
nvt-se a305e3ccbb removed lpm_on. 2007-12-17 11:14:28 +00:00
fros4943 3969ea6f9d not using usb port to program the msb 2007-12-17 11:10:45 +00:00
oliverschmidt e991edc24d Added route handling to the Cygwin build. It is done similiar to the other builds by simply shelling out to 'route'. However the coding isn't placed in the driver but in the netsim node main method - and it is fully parametrized.
Cygwin doesn't seem to call exit functions on SIGTERM so I needed to go for a signal handler in order to delete the route.
2007-12-17 01:12:09 +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
oliverschmidt 8644822a34 Soe we're finally back at reducing the memory footprint be avoiding to pull in large C-library enitities. 2007-12-16 13:08:09 +00:00
oliverschmidt c7a24bf6cf Soe we're finally bak at reducing the memory footprint be avoiding to pull in large C-library enitities. 2007-12-16 13:07:35 +00:00
oliverschmidt 805f3f87d3 Make the "empty" error_exit implementation the default to be optionally overridden. 2007-12-16 13:05:23 +00:00
oliverschmidt 7b3d0559b3 Minimal reformatting. 2007-12-15 23:02:16 +00:00
oliverschmidt 21e343dc2f Don't depend on program handler for project builds. 2007-12-15 21:54:54 +00:00
oliverschmidt 0e8649e5ae Don't override www defaults for project builds. 2007-12-15 21:39:06 +00:00
oliverschmidt 97b1c95005 Activate mouse support for fullscreen mode. 2007-12-15 21:30:56 +00:00
oliverschmidt 9765b76455 Fixed typos. 2007-12-15 20:12:28 +00:00