Commit graph

806 commits

Author SHA1 Message Date
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
oliverschmidt
6fd3b0dbae Removed CTK_CONF_HYPERLINK from shared code as its use is still unclear (and the implementation was incomplete anyway). 2007-12-15 11:34:59 +00:00
oliverschmidt
b32f0643ab Moved stuff into sys subdir to clean up the apple2enh dir (and because the corresponding shared res. cpu stuff is in the sys dir as well). 2007-12-15 11:04:11 +00:00
oliverschmidt
b89a08be8b Allow Cygwin based Win32 platform to be used for 'project builds' (in the sense of the Contiki 2.x build system) beside the exsisting 'platform build'. 2007-12-15 00:00:34 +00:00
oliverschmidt
3a3a98fc0f Made pc-6001 behave as before. 2007-12-14 23:49:14 +00:00
oliverschmidt
4519240466 Made ethernut2 behave as before. 2007-12-14 23:45:56 +00:00
oliverschmidt
7ad283bfe1 Made ethernut1 behave as before. 2007-12-14 23:44:49 +00:00
oliverschmidt
e4e608bd1d Made gtk behave as before. 2007-12-14 23:40:41 +00:00
fros4943
c028df7ecf not using mempcy for ack crc 2007-12-13 16:57:31 +00:00
fros4943
afb1cb28d3 initializing rimeaddr from nodeid similar to sky platform (!= esb platform) 2007-12-13 16:11:22 +00:00
nvt-se
54bef4bea3 added back initializations that were missing in the previous commit. 2007-12-13 13:10:02 +00:00
nvt-se
665c58fd2a Contributions from Michael Baar:
CC1020

o   Turns off only after transmission has ended and not in between

o   Using events for DMA takes too long. It should use a callback when
    DMA finishes to turn off the transmit mode as early as possible.

Core/UART

o   Added profiling and energest initialization

o   Changed low-power mode from LPM1 to LPM3
2007-12-13 12:51:38 +00:00
nvt-se
b1d87bf0d3 Removed deprecated rules. 2007-12-13 11:29:12 +00:00
fros4943
0fc2178857 added queuebuf conf 2007-12-13 08:00:51 +00:00
nvt-se
486ea95b4f Limited support for energy estimation. 2007-12-10 12:49:08 +00:00
oliverschmidt
70321f690f Made error_exit() implementation target-specific. 2007-12-08 22:16:43 +00:00
oliverschmidt
fec41a0f44 Clarify that the driver support RR-Net only on RR as other carts tend to differ in clockport activation. 2007-12-08 21:07:34 +00:00
oliverschmidt
32ae3317a6 Several minor changes and reformatting. 2007-12-06 22:09:56 +00:00
oliverschmidt
88136ca271 Added ETH64. 2007-11-30 12:39:34 +00:00
oliverschmidt
026ba0801f Added LANceGS. 2007-11-30 12:35:18 +00:00
adamdunkels
f9fdafd858 Removed unused vnc client 2007-11-29 07:56:46 +00:00
fros4943
3bfa34f4c3 removed the symbols dummy target 2007-11-29 04:57:04 +00:00
adamdunkels
b2f030897c Removed unused file rom.c 2007-11-28 23:31:53 +00:00
adamdunkels
be300d6765 Removed inclusion of unused file cxmac.h 2007-11-28 23:28:35 +00:00
nifi
867f87d35a removed local watchdog (conflicts with cpu/msp430/watchdog.c) 2007-11-28 22:04:56 +00:00
nifi
c40a2071f0 changed to use radio_sensor directly instead of a variable depending on interrupts 2007-11-28 21:28:03 +00:00
nifi
377ad07d77 return the last decoded value instead of the last value read during an interrupt 2007-11-28 21:26:35 +00:00
nifi
0b44c75e94 added compiler error when compiled without nodeid=<the ID of the node> 2007-11-28 19:53:09 +00:00
oliverschmidt
d6deb82df8 Fixed typo. 2007-11-28 17:57:52 +00:00
oliverschmidt
2bec16e07d Added some info on the apple2enh plattform. 2007-11-28 17:55:43 +00:00
oliverschmidt
bb5c0b3c73 Added some info on the c64 plattform. 2007-11-28 17:55:11 +00:00