Commit graph

681 commits

Author SHA1 Message Date
bg- 65d0a272d0 * Check that we are libc compliant. 2007-06-04 18:03:58 +00:00
bg- 1b61ae4d8b * Use __data_load_end to find unused ROM. 2007-06-04 17:51:41 +00:00
bg- 4e778d73e6 * Add cle_info argument to cle_write_reloc.
* Use cle_info to extract low order bits in pc-relative calculation.
2007-06-04 17:50:25 +00:00
bg- 0f3f14f159 * Add cle_info argument to cle_write_reloc. 2007-06-04 17:47:56 +00:00
bg- c22b261b12 * Add compile time assert CTASSERT. 2007-06-01 15:36:00 +00:00
bg- 709a5846a8 * Increase random cycle at marginal cost and make lower order bits
more random.
2007-06-01 15:28:02 +00:00
bg- f4a9e896fd * Put back code for sending fake RREPs in response to HEELOs but now
#ifdef:ed AODV_RESPOND_TO_HELLOS.
2007-06-01 14:49:54 +00:00
bg- 08d547780c * Some extra delay when broadcasting to break potential symmetries. 2007-06-01 14:37:02 +00:00
bg- e1cd724f37 * #ifndef NOINIT around NOINIT define. 2007-05-31 14:24:20 +00:00
bg- 81b684414d * Changed implementation for dealing with retransmissions to be
strictly event driven. The old implementation was rather process
  like and the new one is still implemented as a process.
2007-05-31 10:15:57 +00:00
bg- f528ff9fe2 * Increase MY_ROUTE_TIMEOUT but real value should be even larger.
* Honor ip::ttl when processing and forwarding RREQs.

* Fix obob for when to jump my_hseqno after a reboot.

* No longer send fake RREPs in response to HELLO messages.

* If we received a RERR message with flag UAODV_RERR_UNKNOWN set then
  clear flag and set bad routes seqno from our route.
2007-05-31 10:10:26 +00:00
bg- ad43dbf25f * Route lifetime is a 32 bit quantity. 2007-05-28 16:41:06 +00:00
bg- 67d94fd579 * Optional AODV BAD_HOP extension. 2007-05-28 16:32:43 +00:00
bg- 78eb449dc5 * Obob in assertion. 2007-05-28 16:22:15 +00:00
oliverschmidt d13a66e63a Fixed typo. 2007-05-27 11:11:28 +00:00
oliverschmidt a09d1d043c Finally moved service.[c|h] into backyard. The "only" user left in outside backyard is the CTK on GTK simulation layer - which needs to be updated to build / run again... 2007-05-26 23:23:28 +00:00
oliverschmidt 4aabfc10b3 Moved 6502 inline assmbler into backyard as it was never replaced by C code. 2007-05-26 22:00:12 +00:00
oliverschmidt 5e7ecef8ab Moved CTK terminal support into backyard as it depends on stuff recently moved in backyard as well. 2007-05-26 21:54:08 +00:00
oliverschmidt 4521c330d5 Moved into backyard as it was never ported to Contiki 2.x. 2007-05-26 21:46:00 +00:00
oliverschmidt 7beef070ca no message 2007-05-26 21:41:01 +00:00
oliverschmidt 9cb735180e Moved into backyard as it was never ported to Contiki 2.x. 2007-05-26 21:38:16 +00:00
oliverschmidt c5608ad99f Moved uIP ppp support into backyard as it was never ported to Contiki 2.x. 2007-05-26 07:14:15 +00:00
adamdunkels 52eb372890 Modified to use the new MAC layer API 2007-05-25 08:06:44 +00:00
adamdunkels f373c63532 Removed __ prefixes on symbols, which are reserved for C implementation; updated to new radio.h types 2007-05-25 08:06:15 +00:00
adamdunkels c8eecc5b02 Updated types to avoid reliance on uIP includes 2007-05-25 08:05:24 +00:00
adamdunkels b07cfde31b Generic API for MAC layers 2007-05-25 06:40:19 +00:00
oliverschmidt e025faf68f Moved network related stuff that depends on the service paradigm into backyard. 2007-05-23 23:27:57 +00:00
oliverschmidt 3bb7a21735 Moved RUNES CRTK Implementation into backyard as it depends on the service paradigm. 2007-05-23 23:23:08 +00:00
oliverschmidt 1fcece3f89 Moved CTK service related stuff into backyard. 2007-05-23 23:18:51 +00:00
oliverschmidt 6275ef313c Removed the empty PROCESS_NO_BROADCAST macro. 2007-05-23 22:16:05 +00:00
oliverschmidt 7904a7e294 Made it compile again. 2007-05-22 22:10:30 +00:00
adamdunkels b8b0dfaa5d Fixed type of energest_crrent_time to match the type in the .h file 2007-05-22 21:55:33 +00:00
adamdunkels 0e6b5e0099 Turn debug output off (which was inadvertedly left on) 2007-05-22 21:53:15 +00:00
adamdunkels 37993d254d Increased default neighbor lifetime, removed debug output 2007-05-22 21:15:17 +00:00
adamdunkels 9277197506 Documentation fix. 2007-05-22 20:58:49 +00:00
adamdunkels 95706ae1aa Documentation fix. Number of rtimers configurable with contiki-conf.h 2007-05-22 20:58:38 +00:00
adamdunkels ef4b12437b Removed unused code 2007-05-22 20:58:14 +00:00
adamdunkels 26903043a3 Updated format of debug output 2007-05-22 20:58:00 +00:00
adamdunkels e18b609039 Amount of retransmissions now configurable on a per-packet basis 2007-05-22 20:57:44 +00:00
adamdunkels c0d3b9111a Stubborn timer now configurable on a per-transmission basis. 2007-05-22 20:57:20 +00:00
adamdunkels af43f26ed2 Multiplicative increase in retransmission time. Statistics. Max amount of retransmissions now configurable on a per-packet basis 2007-05-22 20:56:52 +00:00
adamdunkels 525b37ca7a Added Rime statistics. 2007-05-22 20:56:10 +00:00
adamdunkels 396e8094c6 Added Rime statistics, rmh and rucb 2007-05-22 20:55:53 +00:00
adamdunkels edd509acf5 Added nicer configuration options. Added hack for optimizing X-MAC for unicast packets. Added statistics gathering. Turn radio off when someone else is receiving a packet. Queueing packets when X-MAC cannot send immediately (since someone else is transmitting). 2007-05-22 20:55:24 +00:00
adamdunkels a495d1230b Added Rime statistics 2007-05-22 20:53:24 +00:00
adamdunkels 9b6f6d6822 Added IRQ and SERIAL component. 2007-05-22 20:53:04 +00:00
adamdunkels f5c8869028 Added a function for setting the estimated energy of a component 2007-05-22 20:52:20 +00:00
adamdunkels b8d586b210 Enabled dropping of packets with bad CRC. Added statistics gathering. Bugfix when packets where shorter than 2 bytes 2007-05-22 20:51:30 +00:00
adamdunkels 0e4c30ccb4 Added net include to define u*_t types 2007-05-22 20:50:22 +00:00
adamdunkels a68b8a0a0d Rime statistics gathering 2007-05-22 20:48:41 +00:00
adamdunkels 0a26f4a712 Reliable single-hop unicast bulk transfer 2007-05-22 20:45:49 +00:00
adamdunkels 0206e1cd3b Hop-by-hop reliable multi-hop communication primitive (untested) 2007-05-22 20:45:18 +00:00
oliverschmidt fdded2f77f no message 2007-05-22 20:32:32 +00:00
adamdunkels 940f323801 Removed unused files 2007-05-22 17:35:28 +00:00
bg- 6c19bed556 * Rename field reserved to prefix_sz.
* Literal constant RSSI_THRESHOLD.

* Send fake RREPs to implementations that insist on sending HELLOs.

* Ignore and clear ACK flag in RREPs.
2007-05-21 15:26:57 +00:00
bg- 0d908b24c8 * Rename field reserved to prefix_sz. 2007-05-21 15:24:44 +00:00
fros4943 75e2463b17 removed:
uip_fw_init() called from process, causing all network interfaces to be reset *after* earlier initialization routines.
2007-05-21 14:30:38 +00:00
bg- 1009c3fabf * Literal constants REMOTE_*. 2007-05-21 14:24:51 +00:00
bg- be3d5e8394 * s/uip-fw-service/uip-fw-drv/ 2007-05-21 14:13:04 +00:00
oliverschmidt 5f3296e943 Changed packet drivers from services to plain processes.
Now tcpip_output() is a function pointer that is supposed to be set via the macro tcpip_set_outputfunc(). Packet drivers do so on process startup.

Thus if there are several packet drivers in a Contiki system the one started last is the one actually used. This behaviour is especially useful for the 'IP forwarding' "meta" packet driver.
2007-05-20 21:29:39 +00:00
fros4943 42a952981b bugfix: could not store last seen rreqs 2007-05-20 20:08:28 +00:00
oliverschmidt c32b2ca581 Replaced function with macro. 2007-05-20 00:04:18 +00:00
oliverschmidt 9f97290665 Changed Contiki File System (cfs) from a service to a plain library.
This change means that one needs to select _ONE_ cfs implementation at Contiki library link time. But this doesn't appear to be an issue as all platforms have their "favorite" implementation anyway.
2007-05-19 21:05:48 +00:00
oliverschmidt c15984eb24 Avoid function pointer mismatch in set_receive_function(). 2007-05-19 13:19:22 +00:00
oliverschmidt 0e9c61ca0c The PT_* macros contain return statements so a function using them must return a value. 2007-05-19 13:12:00 +00:00
fros4943 41255df6b0 removed old radio_on/off functions 2007-05-18 13:13:18 +00:00
oliverschmidt e5d6dd1db5 Removed sources from makefile which don't exist in the CVS repository. 2007-05-17 19:22:04 +00:00
adamdunkels dc205a6982 Added error return value 2007-05-17 00:24:29 +00:00
adamdunkels c4b212898b Bugfix: should not invoke timer if timer list is empty. 2007-05-17 00:23:58 +00:00
bg- b0884bf41a * Move loaded modules to higher addresses. 2007-05-15 16:21:29 +00:00
bg- 02c2d3c9c0 * Scratch buffer is used as a string more often than not, change to
char * rather than unsigned char *.
2007-05-15 10:28:03 +00:00
adamdunkels 940da856de Bugfixes, updates 2007-05-15 08:09:21 +00:00
adamdunkels a9e8e9f4fe Replaced uabc with polite, uibc with ipolite, added rudolph2 2007-05-15 08:08:05 +00:00
adamdunkels ac9ba33bd5 Yet another network bulk flooding protocol 2007-05-15 08:07:46 +00:00
adamdunkels 18825e05b6 Strobes for unicast packets are now acked immediately. Sleep cycle is now configurable. Many bugfixes 2007-05-15 08:07:07 +00:00
adamdunkels 434a6376d7 Added nullmac 2007-05-15 08:06:07 +00:00
adamdunkels d1c6b2eb0d Added output functions 2007-05-15 08:05:52 +00:00
adamdunkels 5c79330b41 Made scalar values explicitly unsigned long. Preliminary support for cummulative estimates (larger than 32 bits) 2007-05-15 07:54:03 +00:00
adamdunkels af997a93e0 Moved a much code as possible away from interrupt handler; main thread code now do not need to disable interrupts. Added energy estimation code. Added radio driver structure. 2007-05-15 07:53:09 +00:00
adamdunkels 177e07992d A common structure for radio drivers. Used by MAC protocols. 2007-05-15 07:51:57 +00:00
adamdunkels 8437d95d82 Added hard real-time rtimer to standard include file 2007-05-15 07:48:11 +00:00
adamdunkels 7c88f16e47 Added Rime to default network include file 2007-05-15 07:47:54 +00:00
adamdunkels db0571bef3 Identified polite broadcast primitive 2007-05-15 07:41:36 +00:00
adamdunkels f539f4efd8 Polite broadcast primitive 2007-05-15 07:41:22 +00:00
adamdunkels 5728570aa4 A 'null' MAC protocol that does not do anything 2007-05-15 07:40:22 +00:00
bg- 5fb8871fb6 * NULL pointer spotted by Vlasios. 2007-05-13 15:14:48 +00:00
oliverschmidt 4832e803e8 Made use of signed 32 bit data type. 2007-05-12 21:04:05 +00:00
bg- 813b27d234 * Add last two relocs. 2007-05-11 15:40:16 +00:00
bg- 82aa4b4926 * When looking up potentially bad routes use uaodv_rt_lookup_any
rather than uaodv_rt_lookup.
2007-05-09 16:45:03 +00:00
bg- faf94db265 * Respect "destination only" flag in RREQs.
* If our routes seqno is <= requester last known seqno our route must
  be bad (in his eyes). Previos comparison was < which must be wrong.
2007-05-09 14:53:54 +00:00
bg- 34490eeecb * Make it explicit that some seqno:s are in host byte order by naming
them hseqno.

* Change uaodv_rt_add to take argument in (standard) network byte
  order (and change it to be a pointer).
2007-05-09 13:54:41 +00:00
bg- 1b3c2da7ab * Make it explicit that some seqno:s are in host byte order by naming
them hseqno.

* Change uaodv_rt_add to take argument in (standard) network byte
  order (and change it to be a pointer).
2007-05-09 13:45:16 +00:00
bg- 9cde72c806 * Make filtering criterion on rssi more liberal and don't use the
correlation value at all.
2007-05-09 13:07:55 +00:00
bg- 822f8f01f6 * Change function uaodv_bad_route to uaodv_bad_dest. 2007-05-08 16:07:59 +00:00
bg- c23e583129 * Added flag UAODV_RERR_UNKNOWN to deal with unknown errors that are
often the result of rebooting nodes.

* Change function uaodv_bad_route to uaodv_bad_dest.
2007-05-08 13:33:57 +00:00
bg- 9e9cadabaf * Added flag UAODV_RERR_UNKNOWN to deal with unknown errors that are
often the result of rebooting nodes.
2007-05-08 13:32:55 +00:00
bg- 81ad433208 * Change function uaodv_bad_route to uaodv_bad_dest. 2007-05-08 13:31:50 +00:00
bg- a207770a1e * Add attribute to track bad routes and necessary support for this.
* Revamp forwarding to deal with bad routes or request new routes as
  appropriate.

* Mark bad routes (rather than tossing them) as we are informed by
  other hosts.

* No longer wait two ticks before making route request.
2007-05-08 08:41:26 +00:00
bg- b10eea85f5 * Add attribute to track bad routes and necessary support for this.
* Revamp forwarding to deal with bad routes or request new routes as
  appropriate.
2007-05-08 08:36:00 +00:00
bg- 67e23ee564 * Add attribute to track bad routes and necessary support for this. 2007-05-08 08:30:49 +00:00
bg- 7ec3d191a2 * Need to track if we at the moment are doing forwarding or sending. 2007-05-08 08:28:59 +00:00
bg- 34b1d02607 * Need to track if this was the incoming interface. 2007-05-08 08:27:34 +00:00
bg- 536703d0a2 * Check in with debug off! 2007-05-07 12:02:14 +00:00
bg- d34db6ee92 * Change retransmission scheme both for unicasts and for
broadcasts. Only count retransmissions that actually caused
  transmission (according to the hardware).
2007-05-07 12:01:32 +00:00
bg- b9a3721076 * Keep track of last known seqno. Send last known seqno in RREQs.
* If we have rebooted, bump seqno (gleaned from RREQs).

* Reworked filtering of RREQs.

* Use last known seqno check before responding to RREQ that we have a
  route for. Never graft onto an existing but old route.
2007-05-07 11:51:20 +00:00
bg- cce656e23d * Print LOST in dotted format. 2007-05-07 11:44:40 +00:00
bg- 83f2b1da00 * Use uip_fw return codes.
* Use unicast retransmission scheme also for broadcasts.
2007-05-02 14:51:20 +00:00
bg- 948a88d9e6 * Set route timeout to maximum value for std compliance.
* Rename aodvconn to bcastconn for clarity and uniformity.

* Use uip_udp_packet_send where possible.

* Change a lot of debug printfs.

* Moved call to fwc_add.

* Set ttl to sensible value if AODV_COMPLIANCE.
2007-04-30 15:26:09 +00:00
bg- b2bc97ddba * Constness, voidness. 2007-04-30 15:19:21 +00:00
bg- 5abe5334c8 * Remove forgotten printf. 2007-04-30 09:51:51 +00:00
bg- b14026a394 * Move AODV_COMPLIANCE hack into better place. 2007-04-30 09:51:06 +00:00
bg- 9acf8e021e * Missing return when filtering out bad neigbours.
* Make routing messages bypass routing rather than creating artificial
  neigbours.
2007-04-30 09:49:32 +00:00
bg- b97a9e1c28 * Sending routing messages should bypass same routing protocol.
* Unifdef UAODV_BAD_ROUTE.

* Less confusing debug printf.
2007-04-30 09:47:09 +00:00
bg- f2ea90ba06 * Use literal constant.
* Better debug printf.
2007-04-30 09:42:16 +00:00
bg- e7d7e31bc9 * Better management of "DATA ACK"s. 2007-04-30 09:41:42 +00:00
bg- 9f106aa6fc * Rename cle_upd_reloc to cle_write_reloc and changed first arg to
point to position to be updated.

* Factor cle.c into multiple files.
2007-04-26 13:37:28 +00:00
bg- 7e950141dd * Bug in assertion. 2007-04-26 12:54:52 +00:00
bg- a71b149e29 * Add/update linker & loader error codes. 2007-04-26 12:54:13 +00:00
bg- e82fc60702 * Add GNUC AVR support.
* Add/update linker & loader error codes.
2007-04-26 12:53:49 +00:00
bg- c476a0c1ea * Add GNUC AVR support.
* Change cle_upd_reloc to return consistent errorvalue.

* Suppress stupid GCC warning about casting pointer to wider types
  "(cle_addr)(uintptr_t)".
2007-04-26 12:52:52 +00:00
bg- 6d25bc6215 * For portability reasons change cle_addr from pointer type. 2007-04-25 15:43:43 +00:00
bg- da798a535b * For portability reasons change cle_addr from pointer type.
* Use loader/sym.h.

* cle_upd_reloc() makes updates in memory copy.
2007-04-25 15:41:02 +00:00
bg- ffb90bfe40 * For portability reasons change cle_addr from pointer type. 2007-04-25 15:36:53 +00:00
bg- f7908e332f * Like symtab but rely on ANSI C features. 2007-04-25 15:33:29 +00:00
bg- 1bd92dae47 * Ensure that rand() srand() signatures are compliant with what can be
found in stdlib.h.
2007-04-24 19:01:39 +00:00
bg- cd0d83a705 * Toggle led before returning.
* Change printf.
2007-04-24 18:38:11 +00:00
bg- a9d536e50c * AODV requires that 255.255.255.255 is not rebroadcasted! Deal with
this using conditional compilation (AODV_COMPLIANCE).
2007-04-24 16:58:58 +00:00
bg- 8b1cd7a470 * Explain that SCMP32 comes from RFC 3561 and is easy to implement
using 2's complement arithmetic. Unfortunately C only defines
  unsigned arithmetic and consequently machines that don't use 2's
  complement (i.e unknown arithmetic) will have to be dealt with on a
  per machine basis.
2007-04-24 16:37:45 +00:00
bg- 42fe071745 * Some more debug printfs.
* Correct hop_count when an existing route is found.
2007-04-24 16:08:10 +00:00
oliverschmidt 195cf8cafb Made it build, but certainly _NOT_ work on non-gcc platforms. 2007-04-18 21:26:09 +00:00
oliverschmidt 13cdcbe393 - Removed ctk_arch_isprint() definition as it is - nomen est omen - platform specific.
- Avoided compiler warnings.
- Rearranged headers.
2007-04-15 13:14:40 +00:00
oliverschmidt eec5ae40c9 Avoid compiler warnings. 2007-04-15 13:09:23 +00:00
oliverschmidt 4bf1ecc20e Made endianess configuration actually work. 2007-04-11 00:25:38 +00:00
adamdunkels 336246f406 Makefile 2007-04-07 05:43:52 +00:00
adamdunkels d335cb8087 Power saving MAC protocol based on X-MAC [SenSys 2006] 2007-04-07 05:43:31 +00:00
bg- e03f25aea7 * Unifdef UAODV_BAD_ROUTE.
* Allow more frequent RREQs but avoid some unnecessary ones.
2007-04-05 12:30:17 +00:00
bg- e486c95da2 * Some constness and signedness.
* Connect new routes to existing routes.

* RERR bad destinations not bad nexthops.
2007-04-05 12:09:32 +00:00
bg- 9c8f01be41 * Major overhaul in order to support route sequence numbers.
* Changes to use network byte order.

* Add RREQ forwading cache.

* Fix some const:ness and casts.

* RERR shall only delete old routes.

* Filter RREQ:s also using cc2420_check_remote().

* LRU management of routes.
2007-04-04 12:12:21 +00:00
bg- 8994d8e0b5 * Make uaodv_rt_add return meaningful value.
* uaodv_rt_lru() moves route to head of list.

* Hop count is only 8 bits.
2007-04-04 11:52:29 +00:00
bg- 1d7932c6b3 * Make uaodv_rt_add return meaningful value.
* uaodv_rt_lru() moves route to head of list.

* Configurable number of routes.
2007-04-04 11:50:54 +00:00
bg- 8c0fa5bc8a * Abbreviate originator as orig rather than src to avoid confusion.
* #if 0 unused defines.
2007-04-04 11:48:49 +00:00
bg- 212f455b71 * Literal constants. 2007-04-04 11:46:47 +00:00
bg- 478953dcf4 * Randomised backoff when broadcasting.
* Only warn about rxfifo overflows when sending.

* More intricate tests to verify if transmission really started.
2007-04-04 11:46:10 +00:00
bg- e5fa567869 * htonl and friends. 2007-04-04 11:37:20 +00:00
nifi 0abdde6197 corrected comment 2007-04-04 09:19:18 +00:00
adamdunkels 7ce8d3920a Added radio_on() and radio_off() functions 2007-04-03 19:05:44 +00:00
oliverschmidt 1d63347cfc Added mt_stop() calling mtarch_stop() to allow for thread resource cleanup. 2007-04-03 18:47:21 +00:00
adamdunkels cda806dc84 Bugfix: rudolph1 sometimes failed because the first packet was received from a neighbor 2007-04-02 19:12:37 +00:00
adamdunkels d42b91fd20 Documentation updates 2007-04-02 18:07:10 +00:00
adamdunkels 2d42bd9e2a Now keeps track of highest chunk number heard and sends NACKs until it sees it 2007-04-02 17:53:27 +00:00
adamdunkels a26906f478 Made send intervals configurable when sending a new file 2007-04-02 09:51:45 +00:00
adamdunkels 25af6bdcea Documentation updates 2007-04-01 18:20:41 +00:00
adamdunkels ac3b3ea3ca Removed unused file 2007-03-31 18:36:03 +00:00
adamdunkels 6dc06d09af Made the number of retransmissions configurable 2007-03-31 18:33:27 +00:00
adamdunkels 91aa54dc77 Made advertisments for new shorter routes quicker, and advertisements for longer routes slower 2007-03-31 18:33:04 +00:00
adamdunkels 0650a014b5 Documentation updates 2007-03-31 18:31:27 +00:00
adamdunkels 03b2399622 Correct function prototype 2007-03-31 11:20:20 +00:00
adamdunkels b0b7afb802 Removed erroneous documentation 2007-03-30 00:04:12 +00:00
adamdunkels b0e39e22af Version 2.0 2007-03-29 23:45:16 +00:00
adamdunkels 36bc77d27f Documentation fixes 2007-03-29 23:38:07 +00:00
adamdunkels bc1bb96809 Documentation fixes 2007-03-29 23:18:47 +00:00
adamdunkels 2f079ca8e2 Debug output 2007-03-29 23:18:22 +00:00
adamdunkels 4cde369174 Added call to timedout callback 2007-03-29 22:22:44 +00:00
adamdunkels 81b469d4b7 Made buffer sizes configurable from contiki-conf.h 2007-03-29 22:22:20 +00:00
adamdunkels f35eeb49dd Added debugging output 2007-03-29 22:21:56 +00:00
adamdunkels 210574cf22 Fixed API to be consistent between .h and .c file 2007-03-28 20:28:22 +00:00
adamdunkels af92a79635 Spelling error fix 2007-03-28 19:52:50 +00:00
adamdunkels 8e0ae73fa5 Increased default packet size to 64, removed out-commented code 2007-03-28 19:52:27 +00:00
adamdunkels 75dc71f70b Minor documentation change 2007-03-28 19:51:33 +00:00
oliverschmidt ad4a8df425 Allow to build telnet-server example for targets not defining CTK_CONF_MAXMENUITEMS. 2007-03-26 23:01:11 +00:00
oliverschmidt f60b7aabcf Added stdio.h for printf. 2007-03-26 22:45:49 +00:00
adamdunkels 6a8d8e3abf Added experimental clock_fine() function 2007-03-25 21:51:31 +00:00
adamdunkels fbdd9799bd Use random_rand() instead of rand() due to bug on msp430 2007-03-25 21:44:23 +00:00
adamdunkels 06386b6f30 Reduce header before passing over to receiver 2007-03-25 21:44:06 +00:00
adamdunkels 41630b0f03 Free queued packet when closing 2007-03-25 21:43:23 +00:00
oliverschmidt 90f82d6a12 Keep system includes in front of Contiki includes. 2007-03-25 21:31:24 +00:00
oliverschmidt 4043448c02 Make consistent presumptions about inlcude paths. 2007-03-25 21:29:02 +00:00
adamdunkels 31fea520ea Debug output 2007-03-25 17:16:57 +00:00
adamdunkels f67a47aff4 Documentation update, removed unneeded includes 2007-03-25 17:16:25 +00:00
adamdunkels 3eb156019e Documentation fix 2007-03-25 17:15:43 +00:00
adamdunkels 96d8967673 Should subtract two bytes from the length to account for the two-bytes footer 2007-03-25 17:15:30 +00:00
adamdunkels 503b76266b Renamed rt module to rtimer 2007-03-25 17:10:30 +00:00
adamdunkels 0f55a4efee Route discovery timeout configurable at run-time 2007-03-25 12:13:22 +00:00
adamdunkels 0c0d823dbf Typo 2007-03-25 12:13:04 +00:00
adamdunkels d19e475fe6 Fixed include files 2007-03-25 12:06:39 +00:00
adamdunkels f69268b4ab Timeouts configurable at run-time 2007-03-25 12:06:28 +00:00
adamdunkels e12086c980 Documentation fixes 2007-03-25 12:05:51 +00:00
adamdunkels f3872aac48 Make route lifetime dynamically configurable 2007-03-25 12:03:59 +00:00
adamdunkels 4a2f71c3ef Make use of consistent timer interface code 2007-03-25 12:03:41 +00:00
adamdunkels 6f72d9282b Added debugging output 2007-03-25 12:03:12 +00:00
adamdunkels d9f0c89726 Moved rudolph{0,1} from apps/ directory into core/net/rime 2007-03-25 11:56:59 +00:00
adamdunkels e57126ed0e Removed unused files 2007-03-25 11:55:20 +00:00
oliverschmidt 6b1432f69d Changed variable declaration into type definition - as most likely originally intended. 2007-03-25 09:20:53 +00:00
oliverschmidt b3ab4b4e8f Added missing include. 2007-03-25 09:19:16 +00:00
adamdunkels 9d110c9adf File description 2007-03-24 16:42:43 +00:00
adamdunkels deb8196333 #if'ed away debugging code 2007-03-24 16:42:36 +00:00
adamdunkels 047c807332 Removed redundant initialization 2007-03-24 16:42:21 +00:00
oliverschmidt 687dce277d Make consistent presumptions about inlcude paths. 2007-03-24 15:21:34 +00:00
oliverschmidt 0ded7a166e Added stdio.h for printf. 2007-03-24 13:57:04 +00:00
oliverschmidt e552140425 Added missing prototype. 2007-03-24 13:54:05 +00:00
oliverschmidt 41d6a76019 Make consistent presumptions about inlcude paths. 2007-03-24 13:42:25 +00:00
oliverschmidt 1a0d00e1d4 Added stdio.h for sprintf. 2007-03-24 13:38:06 +00:00
nifi ae64aa1764 changed counters to unsigned 2007-03-23 15:52:13 +00:00
nifi e3bdae0e47 added erase of xmem and size checks 2007-03-23 12:15:08 +00:00
adamdunkels 013701f50c Renamed rimebuf_hdrextend() to rimebuf_hdralloc() 2007-03-23 10:46:35 +00:00
adamdunkels 2caf271d58 Removed unused node-id,.h 2007-03-22 23:57:19 +00:00
adamdunkels c699512354 ctimer_set() bugfix 2007-03-22 23:57:08 +00:00
adamdunkels 0ddd326c9b More debugging information. Now identifies symtab and strtab based on type rather than name. 2007-03-22 23:56:44 +00:00
adamdunkels cf24a46d2a Exported RSSI values 2007-03-22 23:56:05 +00:00
adamdunkels bc25633fd9 Removed blinking LEDs 2007-03-22 23:55:48 +00:00
adamdunkels f94cbb21e1 Added a CFS_APPEND option, set CFS_READ and CFS_WRITE to new numbers 2007-03-22 23:55:32 +00:00
adamdunkels ea6f2942bd Added file size 2007-03-22 23:55:03 +00:00
adamdunkels de8a3fd507 Removed mesh and tree, added queuebuf 2007-03-22 19:03:07 +00:00
adamdunkels eea7f463d7 Transmission of IP packets over mesh routing, implemented with Rime 2007-03-22 18:58:40 +00:00
adamdunkels 1f91695771 Added route initializaion 2007-03-22 18:54:45 +00:00
adamdunkels 095952f97d Added support for multiple simulteaneous tree connections, removed sibc connection in favour of a uibc connection 2007-03-22 18:54:22 +00:00
adamdunkels 3134789a94 Added debugging, reduced wait time 2007-03-22 18:53:38 +00:00
adamdunkels 5b5d9209a1 Refactored the mesh code by splitting multi-hop forwarding and route discovery. The mesh module is now much simpler than before 2007-03-22 18:53:22 +00:00
adamdunkels 423dc1a951 Queued packet pointer should be NULL when no packet is queued 2007-03-22 17:37:10 +00:00
adamdunkels 5af2430f95 Added automatic timeouts 2007-03-22 17:34:43 +00:00
adamdunkels 2ef8c91bbc Refactored the mesh code by splitting multi-hop forwarding and route discovery. The mesh module is now much simpler than before 2007-03-22 17:34:16 +00:00
adamdunkels c914d268ca Best effort multi-hop routing 2007-03-22 17:33:15 +00:00
adamdunkels 5c6c6e3358 Added configurable interval 2007-03-21 23:23:02 +00:00
adamdunkels d1de1e0001 Added hop counting, remade the rimeaddr_t u16 to be an array rather than a scalar 2007-03-21 23:22:42 +00:00
adamdunkels b7afd2baf0 Remade the rimeaddr_t u16 to be an array rather than a scalar 2007-03-21 23:22:11 +00:00
adamdunkels b377a83730 Removed automatic setting of Rime node address 2007-03-21 23:22:02 +00:00
adamdunkels 70f2be4652 nf is now based on uibc 2007-03-21 23:21:54 +00:00
adamdunkels 9951aba084 Unique identified best effort local area broadcast 2007-03-21 23:21:01 +00:00
adamdunkels 4328947d26 Debugging added, whitespace removed 2007-03-21 23:19:52 +00:00
adamdunkels 1ab044e319 Corrected sending of two bytes footer 2007-03-21 23:19:15 +00:00
adamdunkels 22d7ea53ff Whitespace, added includes 2007-03-21 23:18:49 +00:00
adamdunkels 897bd980e1 CFS implementation over the xmem module 2007-03-21 23:15:31 +00:00
adamdunkels d9406024d0 Split interval: one half listen only, second half send packet 2007-03-21 09:09:33 +00:00
adamdunkels 4bd8cd32ac Fixed debug output 2007-03-20 12:28:13 +00:00
adamdunkels 558ebf3c5d Renamed suc_send_uc() to suc_send(), fixed debug output 2007-03-20 12:27:32 +00:00
adamdunkels d937ff8d16 Fixed compilation problem, added send() call so that a packet is sent out immediately 2007-03-20 12:26:57 +00:00
adamdunkels 516f9316ab Added functions for accessing the data and length of a queued buffer 2007-03-20 12:26:23 +00:00
adamdunkels accea52d88 New Rime module: unique anonymous best effort broadcast 2007-03-20 11:59:55 +00:00
adamdunkels 8147f47aab Trickle implementation for Rime 2007-03-19 23:26:18 +00:00
adamdunkels e4a739a76c Added *_close() function to all Rime modules 2007-03-19 22:10:16 +00:00
adamdunkels aa1389e873 Removed unused files 2007-03-19 22:07:48 +00:00
adamdunkels 43326b5ae6 API change for Rime: *_setup() renamed to *_open() 2007-03-19 19:24:36 +00:00
adamdunkels a97285863e + energest.h 2007-03-19 00:33:11 +00:00
adamdunkels bba0485797 Experimental energy estimation code 2007-03-19 00:30:13 +00:00
adamdunkels 31a4d8504a Initial code for a Contiki real-time scheduler 2007-03-19 00:16:13 +00:00
adamdunkels 943a12613f + memb_inmemb 2007-03-16 16:53:33 +00:00
bg- cb6bda5378 * Support longer lease times. 2007-03-16 12:16:16 +00:00
adamdunkels cc87617ef2 Removed inclusion of non-existant file rime-types.h 2007-03-16 09:16:40 +00:00
adamdunkels 91fc3c3917 Renamed Rime output function 2007-03-15 22:11:06 +00:00
adamdunkels 786d0d1892 Copyright update 2007-03-15 21:46:07 +00:00
adamdunkels ec9ea6d366 Button sensor header 2007-03-15 21:42:09 +00:00
adamdunkels 92a5b01bed Radio sensor header file 2007-03-15 21:27:09 +00:00
adamdunkels c29eb96219 A Rime driver for the simple-cc2420 driver 2007-03-15 21:26:18 +00:00
adamdunkels 638640113e A very simple CC2420 driver that can only send and receive raw packets. No extra CC2420 functionality is enabled or used. 2007-03-15 21:26:00 +00:00
adamdunkels 2e6dbad62b node_id -> rimeaddr_node_addr 2007-03-15 21:25:06 +00:00
adamdunkels e4e57fca96 Renamed input function to rime_input() and the output function to rime_driver_send() 2007-03-15 21:24:11 +00:00
adamdunkels 833d098096 New Rime module: tree, a converge cast / tree data collection protocol 2007-03-15 20:04:30 +00:00
adamdunkels cc60843e8b New Rime module: mesh, a mesh routing protocol 2007-03-15 19:52:51 +00:00
adamdunkels ab0d556353 Added a new type for all addresses in Rime: rimeaddr_t. This is an abstract type that currently is defined as a 16-bit quantity but that most likely will be redefined in the future 2007-03-15 19:43:07 +00:00
adamdunkels 2b119b054e const qualifiers 2007-03-15 19:41:29 +00:00
adamdunkels fd33a89214 Renamed ulayer -> callbacks 2007-03-15 10:01:04 +00:00
adamdunkels 26a681cf37 rimebuf_totle() prototype & documentation 2007-03-15 09:57:00 +00:00
adamdunkels 16bdd2f18c Sequence number now reported 2007-03-15 09:56:30 +00:00
adamdunkels 168765a205 Compiler warning fix 2007-03-15 09:56:15 +00:00
adamdunkels 537ecb9198 UDP initialization fixed 2007-03-15 09:56:00 +00:00
adamdunkels fb23363a70 Removed abc-udp.c 2007-03-15 09:54:58 +00:00
adamdunkels 548e4ce556 New rime module: best-effort network flooding (nf) 2007-03-14 00:30:46 +00:00
adamdunkels 674f373f76 Renamed function for compacting the data in the rimebuf: rimebuf_compact 2007-03-14 00:30:11 +00:00
adamdunkels 91f8c4b8e4 Renamed driver output function to abc_driver_send 2007-03-14 00:29:05 +00:00
adamdunkels 355724669e Default channel allocations 2007-03-14 00:27:36 +00:00
adamdunkels 11627c2406 Added generic abc layer 2007-03-13 13:05:30 +00:00
adamdunkels ba1dc7105f Rime driver running over UDP 2007-03-13 13:02:33 +00:00
adamdunkels 358259105e Generic abc module 2007-03-13 13:01:48 +00:00
adamdunkels 6930910cd3 Renamed old netbuf -> rimebuf 2007-03-13 10:28:52 +00:00
adamdunkels ca359a6314 Removed the explicit header buffer; both the header and data are not in the same 'physical' buffer. Added function for copying referenced data into the rimebuf. 2007-03-13 10:28:16 +00:00
adamdunkels 21ef887f07 +Documentation 2007-03-13 10:27:36 +00:00
adamdunkels 2d7aab3ffe Initial import of the experimental Rime code into the SourceForge CVS. 2007-02-28 16:38:51 +00:00
bg- 429d41defd * General stuff for different baudrates:
- ubr argument to slip_arch_int

    - macros for calculating ubr

    - argument -Bbaudrate to tools tunslip and scat
2007-02-02 13:26:48 +00:00
bg- abbde5d8fa * Use convince macro uip_ipaddr_to_quad.
* Printf format check and fix format strings.

* More info in some printfs.

* Be conservative about keeping working routes in RREQ (forward) path.

* Put some spacing between forwarded packet and RREQ.
2007-02-01 14:33:05 +00:00
bg- 539ad552bd * Convince macro uip_ipaddr_to_quad. 2007-02-01 14:27:17 +00:00
bg- 7d5a6d6558 * Check for ip_id zero senders and low cost update of zero ip_id. 2007-02-01 14:04:06 +00:00
bg- 85fd100263 * PRINTF macro.
* Update printf on failed transmission.
2007-02-01 14:02:19 +00:00
bg- 95164eb39f * Perform RXFIFO overflow check as late as possible when sending. 2007-02-01 14:00:27 +00:00
bg- 44f81a5625 * s/_DEF_/_/g
* Value is not const and of unknown type.
2007-01-30 18:04:59 +00:00
bg- e80af3ed34 * Remove include. 2007-01-25 18:19:57 +00:00
bg- 90cbfbba9c * Conditional compilation on CC2420_RADIO rather than TMOTE_SKY. 2007-01-24 16:32:34 +00:00
bg- 2a879202a2 * Initial AVR port.
* Check for RXFIFO overflow before sending.

* Fix in loop that waits for SFD start.
2007-01-24 16:26:55 +00:00
adamdunkels 83b348631f Changed the generation of symbols to the mknmlist script. Now symbols.h is not automatically generated so we can use it as a normal include file and remove symbols-def.h. 2007-01-24 16:11:48 +00:00
bg- bea6aa5b3d * Don't request MAC level ACKs for packets we "try" to forward before
we have a route.
2007-01-24 16:08:27 +00:00
bg- 58bbd0b4da * Don't include signal.h. 2007-01-24 16:07:20 +00:00
bg- a88f797455 * Constness and voidness. 2007-01-23 12:29:50 +00:00
bg- f6936bfd51 * Comment. 2007-01-12 18:18:23 +00:00
bg- f8d7943735 * Switch from linear search to binary ditto.
* Symbol names is "const char *" but symbol values are "void *" (not
  "const char *").
2007-01-12 13:55:04 +00:00
bg- f888f4784c * Fix an miscalculation.
* Changing naming to be more explicit about file offsets.
2007-01-12 13:36:27 +00:00
oliverschmidt cada8d324f Up to now the DNS resolver relied on the uIP 1/2 second polling for its retry management (implementing a linear back-off). But Contiki 2.x uIP doesn't implement the 1/2 second polling for UDP connections anymore! Therefore I added an event timer to the DNS resolver for its retry management. I went for a 1 second interval (still with the same linear back-off) as compromise between officially recommended longer intervals (i.e. BIND with 5 seconds and exponential back-off) and a reasonable user experience for the self induced packet loss in ARP setups. 2007-01-07 13:52:25 +00:00
bg- e4305295f7 * First stab at loadable contiki modules in plural form. 2007-01-05 18:00:55 +00:00
bg- c367a49606 * Typedef for scratch buffer. 2007-01-05 17:47:53 +00:00
barner 94eecb64f1 Respect MMEM_CONF_SIZE user option, otherwise default to 4096 byts
for MMEM_SIZE.
2006-12-22 17:14:06 +00:00
barner c4df71bb7e - AVR specific implementation of (linear) symbol table lookup, that uses the
necessary functions to load symbols from flash ROM.
- Implementing binary search is on my TODO list.
2006-12-22 17:12:31 +00:00
barner 54ac97990d - Fix / enhence AVR specific part of the ELF relocator. Some relocation types
are still unsupported and will write warings on the second serial port.

- Fix elfloader_arch_write_rom (), which has to reside in a special bootloader
  section of flash rom. The code is heavly inspired from avr-libc's documentation.

- Prelimiary implementation of elfloader_arch_allocate_rom: Code is
  flashed to fixed address 0x8000. Note that on the AVR, flash rom is adressed
  word (16bit)-wise, not byte wise!

- Preliminary implementation of elfloader_arch_allocate_ram using the mmem
  module. Current code does not free the memory.
2006-12-22 17:10:54 +00:00
bg- 98cea83de5 * Include loader/symbols-def.h and use extern declarations. 2006-12-20 14:41:28 +00:00
bg- d6b06f0661 * Add extern declarations. 2006-12-20 14:36:28 +00:00
bg- 3c9fe59106 * Typo in comment.
* More info in printfs.
2006-12-20 13:43:47 +00:00
bg- 29572668ac * Typo in comment. 2006-12-20 13:42:55 +00:00
bg- e3a501a8c1 * Resurrect traditional elfloader interface. 2006-12-20 13:38:33 +00:00
adamdunkels 946e11a0fc Added optional binary search 2006-12-19 09:31:37 +00:00
adamdunkels 419c5f3c17 Symbol is const 2006-12-19 09:30:57 +00:00
fros4943 1e23eb29ba added support for elf32_rel relocation entries (earlier only elf32_rela)
added support for rodata section

(x86 compability)
2006-12-18 15:35:16 +00:00
fros4943 98f8d160b3 removed symbols.h (now symbols-def.h)
symbols.h should be autogenerated at compile time
2006-12-18 15:28:49 +00:00
fros4943 1e254866d5 updated reference to symbols.h 2006-12-18 15:27:18 +00:00
fros4943 71940f287f new symbols definition header.
should be included from autogenerated symbols.h
2006-12-18 15:23:04 +00:00
fros4943 060225a97a added parameter to relocate method
+ renamed write_text() to write_rom()
+ added parameter to write_rom()
2006-12-18 14:54:04 +00:00
fros4943 ea0e2c0f7d moved elfloader-tmp.h -> elfloader.h 2006-12-18 14:45:49 +00:00
fros4943 6d93716fba removed old -tmp header 2006-12-18 14:39:55 +00:00
adamdunkels 5ab475498a Removed old elfloader.h and replaced with the current code (previously in elfloader-tmp.h) 2006-12-18 12:11:15 +00:00
adamdunkels 70170b65b6 Removed old elfloader.c and replaced with the current code (previously in elfloader-tmp.c) 2006-12-18 11:55:42 +00:00
adamdunkels 5d3baef0d2 Removed old elfloader.c and replaced with the current code (previously in elfloader-tmp.c) 2006-12-18 11:45:47 +00:00
bg- 4e62a35e83 * Backwards compatible with elfloader.c but uses the new Contiki
link-editor. Taken together cle and elfloader_compat requires less
  ROM and RAM than the old version.
2006-12-01 15:15:08 +00:00
bg- 4f592bfc88 Small and modular dynamic link-editor. 2006-12-01 15:12:27 +00:00
bg- 0191c11595 Fix constness problems. 2006-12-01 15:05:20 +00:00
bg- 5d970109c8 * If broadcast transmission never starts, retry with (nearly)
exponential backoff.

* Fine-tune check for transmission start.
2006-12-01 15:04:04 +00:00
bg- 09e5c8e09a * It is very useful to keep the rand_state across reboots. 2006-11-17 13:05:34 +00:00
bg- f3a6cee55b * Oops, some machine dependent changes was accidentally committed. 2006-11-17 13:03:51 +00:00
bg- 27e531baad * Set CC2420_RXCTRL1.RXBPF_LOCUR=1 as recommended in data sheet.
* Use PRINTF to disable debug printfs.
2006-11-17 12:27:23 +00:00
fros4943 b8bcf2ab59 x86 elf loader implementation (only 2 common types).
depends on a few not-yet-commited files
2006-10-25 10:53:31 +00:00
adamdunkels 35395c10e0 Added *experimental* module for sending raw (non-routed) packets from Contiki. The name of the module is likely to change. 2006-10-22 12:31:46 +00:00
nifi 755ee04e24 major bug fix: arithmetic was done incorrectly in update_time() + process already expired timers when adding timers 2006-10-09 16:05:58 +00:00
nifi 5528198929 fixed leds invert 2006-10-09 14:38:23 +00:00
adamdunkels 022b1ba742 Made LEDS not count 2006-10-09 11:55:02 +00:00
adamdunkels 20b05c6d22 Added PROCESS_PT_SPAWN, PROCESS_WAIT_UNTIL 2006-10-09 11:54:29 +00:00
adamdunkels 528760f924 Updated code 2006-10-09 11:53:56 +00:00
adamdunkels a2befb9dd0 Made headercompression work on external buffer 2006-10-09 11:53:43 +00:00
adamdunkels 17c32fa33e Updated documentation 2006-10-09 11:13:25 +00:00
adamdunkels 96c771250c Limit number of sensor events to avoid overflowing event queue 2006-10-06 09:18:52 +00:00
adamdunkels b9b8ef7da5 GCR encoding/decoding 2006-10-05 09:23:41 +00:00
adamdunkels e117830406 Must reset uip_slen to zero after transmit to avoid confusing uIP if it is invoked after this function 2006-09-26 22:12:59 +00:00
adamdunkels b9607d3be2 Fixed the order of the statistics fields, added UIP_APPDATA_PTR pointer that always points to the application data space in the uip_buf buffer, added the documentation for an uip_ipaddr_isbroadcast() function. 2006-09-26 21:02:35 +00:00
adamdunkels 1504f2836e Commented out unused functionality: the ability to create a process running a thread was never used. With the new code, only running 'bare' threads is supported. If support for creating processes with a thread is needed, it may be reneabled later but currently there doesn't seem to be a need for it 2006-09-26 20:59:51 +00:00
adamdunkels 6bd28132ed Fixed the behaviour of PT_SCHEDULE() so that it returns true if a protothread is still active (yielded or waiting). Thanks to Kevin Collins for fixing. 2006-09-26 20:57:58 +00:00
adamdunkels 25a132cff2 A module that allows Contiki processes to have subprocesses. A subprocess is defined within another process and is created on the fly when needed. 2006-09-26 20:53:27 +00:00
bg- 670f414594 * FASTSPI_READ_RAM_LE(p,a,c,n) for completeness. 2006-09-26 15:48:01 +00:00
bg- 3de6d787c9 * New function slip_write(u8_t *ptr, int len).
* Slip active detection and current address reporting.
2006-09-26 15:47:14 +00:00
oliverschmidt 9e9677b4f0 Added the CCIF (Contiki Core InterFace) declarations necessary for a loadable ARP handler. 2006-09-23 20:10:08 +00:00
oliverschmidt 3e92f843ba More uip_ipaddr_t fixes. 2006-09-18 23:27:42 +00:00
oliverschmidt 83561d8963 Added the CCIF (Contiki Core InterFace) declarations necessary for a loadable packet driver. 2006-09-09 23:24:39 +00:00
bg- 35e6053795 Use ticks for s.ticks. 2006-09-07 15:57:59 +00:00
adamdunkels ea13dd9179 #if 0:ed out unused code 2006-09-01 22:56:47 +00:00
adamdunkels 7bfd457bbc Fixed bug where instruction to be relocated was fetched from an incorrect location 2006-09-01 07:10:01 +00:00
adamdunkels 2380d63260 Added uip-udp-packet.h 2006-08-31 09:36:46 +00:00
adamdunkels b8bf33f53f Functions for sending individual UDP datagrams 2006-08-31 09:35:27 +00:00