Commit graph

202 commits

Author SHA1 Message Date
adamdunkels a42311dc7e Only process incoming data if the process is polled. Compile checksum checks only for IPv4. 2008-11-06 08:18:29 +00:00
joxe 673d73bfa3 added energest on all parts of leds API and some cleanup 2008-09-29 11:35:28 +00:00
adamdunkels 6a460fecdd There is problem with the CC2420 driver: under high traffic load the packets often get mangled in the receive FIFO. Not sure why this happens or how to best prevent it. As a temporary workaround, I've added an additional CRC16 check to the incoming packets. This eats two bytes from each packet, but at least protects against the erroneous packets we've seen quite a few of lately. The reception code was also cleaned up, which resulted in a smaller code size. 2008-08-26 21:44:03 +00:00
adamdunkels f58b387bd3 Code style fixes 2008-07-08 08:23:47 +00:00
adamdunkels 1f005b6299 Moved energest.{c,h} from core/lib to core/sys: power profiling is a system mechanism, not a library 2008-07-03 23:36:30 +00:00
adamdunkels 51f4ab8b2c Changed type from off_t (that potentially conflicts with existing types.h typedefs) to unsigned long 2008-07-03 23:12:10 +00:00
adamdunkels 66876625d4 Changed name of the simple-cc2420 module to cc2420: changed all function names and variable names from simple_cc2420_* to cc2420_*. 2008-07-02 09:05:40 +00:00
adamdunkels 6b187328bd Added AES cipher constants 2008-07-02 09:03:49 +00:00
nifi 1cef019e78 Fixed typo. 2008-07-02 09:02:39 +00:00
adamdunkels 1da58b8858 Functions for interfacing the built-in AES functions of the CC2420 chip 2008-07-02 08:46:13 +00:00
adamdunkels 1586d8f36f Changed filename of the CC2420 driver from simple-cc2420 to cc2420. 2008-07-01 21:02:51 +00:00
adamdunkels c802151453 Removed unused files 2008-07-01 20:13:24 +00:00
adamdunkels 6709823d4a Bugfix: energy estimation was not correct if a packet was sent when the radio was not in listen mode 2008-05-14 19:44:30 +00:00
adamdunkels 39abed8672 Moved old CC2420 driver to the backyard 2008-02-24 22:29:08 +00:00
adamdunkels af48b648ee Added a function that gets called when we see SLIP input. This function can be used to determine if a node is a SLIP gateway or not. 2008-02-24 21:00:53 +00:00
adamdunkels b001c14bf2 Code style fix 2008-02-03 20:43:35 +00:00
adamdunkels dc70ac2584 Added calibration to channel switch if currently in receive mode. Added explicit checks for transmission activity before channel switch 2008-01-24 13:09:16 +00:00
adamdunkels 2c5964ef55 Changed default transmission behaviour to be to send without checking for channel activity first (in anticipation of radio API change that adds a CCA function to the radio API). General code cleanup. Added optional timetable profiling. Added simple_cc2420_get_channel() function, changed simple_cc2420_set_chan_pan to simple_cc2420_set_pan since we now have a dedicated simple_cc2420_set_channel 2008-01-23 14:57:19 +00:00
fros4943 0c21c8893a bugfix: wait while *either* transmitting or unvalid rssi 2008-01-17 15:38:45 +00:00
nvt-se 8a38ffea87 added declaration for simple_cc2420_get_txpower. 2008-01-15 08:53:52 +00:00
nvt-se 057cd5ac05 no ENERGEST_ON_* macro needed for levels. 2008-01-15 08:52:16 +00:00
nvt-se c3653b96ce check if ENERGEST_CONF_LEVELDEVICE_LEVELS is set.
call ENERGEST_ON_LEVEL.
2008-01-15 08:33:02 +00:00
thiemovoigt 21c690ecae energy measurement support for TX power levels 2008-01-14 16:19:25 +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 b356ebe009 Increased the default input line length from 40 to 80 2008-01-08 07:49:51 +00:00
adamdunkels a0a524e128 Added watchdog_reboot() prototype 2008-01-07 14:42:35 +00:00
adamdunkels cc6c6eee62 Added prototype for _on() and _off() functions 2008-01-07 14:41:34 +00:00
adamdunkels d8e84abaae Made estimation of departure time better by locally measuring the average time per byte and adding this to the incoming timestamp. 2008-01-07 14:08:02 +00:00
adamdunkels c948c97b4f Fixed timestamping to support the simple implicit network time synchronization mechanism 2007-12-16 14:30:36 +00:00
adamdunkels d8617c7879 Added API for setting 802.15.4 channel and for measuring RSSI 2007-12-05 13:21:05 +00:00
ksb 71dc988cb9 slip.c:
char is signed but uip_buf is unsigned

spi.h:
	casted unused values to void

autostart.c:
autostart.h:
        The array itself should be const but the processes pointed to
        should not.

profile-aggregates.c:
        sizeof returns unsigned long on my platform
2007-11-18 12:27:44 +00:00
adamdunkels e1affe5e72 Changed watchdog API by adding a start function, and renaming the restart function to periodic to make it clear that this should be called periodically 2007-11-17 10:15:50 +00:00
adamdunkels 5e7cbff22a Fixed compiler warnings 2007-11-17 10:12:19 +00:00
adamdunkels 670f65b55e Added battery sensor to the core interfaces 2007-11-13 20:36:40 +00:00
fros4943 2c1af74f37 declaration outside loop 2007-11-13 06:45:29 +00:00
adamdunkels c5d79e8aea Added contentiondrop rimestats when a packet couldn't be sent because of failing CCA check 2007-11-12 22:26:03 +00:00
adamdunkels 127503e2a6 waiting for valid RSSI bugfix, minor cleanup 2007-10-25 13:29:21 +00:00
adamdunkels 349274cb81 Turn off listen energy accounting when transmitting 2007-10-25 09:38:15 +00:00
adamdunkels a9e4287cbe Changed the energy estimation type ENERGEST_TYPE_RECEIVE to ENERGEST_TYPE_LISTEN to highlight that energy is spent on idle listening, not just the actual reception of packets 2007-10-25 09:30:39 +00:00
nvt-se 045225fa05 Made driver less platform-dependent and added support for msb-430. 2007-10-22 12:19:58 +00:00
nifi ccf6bc4d9d moved ENERGEST_ON to actual transmission 2007-09-18 10:36:31 +00:00
nifi c12af56ad0 Turn off ENERGEST_TYPE_TRANSMIT if send error 2007-09-18 10:32:00 +00:00
bg- 70ddc0f27e * If we detect a RXFIFO overflow schedule a poll of the device driver. 2007-07-30 14:54:49 +00:00
bg- 8f0d9aab89 * Change max life of neigbour entries from 60 to 30 seconds by
changing the time unit (quanta) from 4 to 2 seconds.
2007-06-28 15:08:53 +00:00
bg- 08d547780c * Some extra delay when broadcasting to break potential symmetries. 2007-06-01 14:37:02 +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
oliverschmidt 4aabfc10b3 Moved 6502 inline assmbler into backyard as it was never replaced by C code. 2007-05-26 22:00:12 +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 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 940f323801 Removed unused files 2007-05-22 17:35:28 +00:00
bg- 1009c3fabf * Literal constants REMOTE_*. 2007-05-21 14:24:51 +00:00
fros4943 41255df6b0 removed old radio_on/off functions 2007-05-18 13:13:18 +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
bg- 81ad433208 * Change function uaodv_bad_route to uaodv_bad_dest. 2007-05-08 13:31:50 +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- 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- 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- 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- cd0d83a705 * Toggle led before returning.
* Change printf.
2007-04-24 18:38:11 +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- 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
adamdunkels 7ce8d3920a Added radio_on() and radio_off() functions 2007-04-03 19:05:44 +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 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 1ab044e319 Corrected sending of two bytes footer 2007-03-21 23:19:15 +00:00
adamdunkels bba0485797 Experimental energy estimation code 2007-03-19 00:30:13 +00:00
adamdunkels 91fc3c3917 Renamed Rime output function 2007-03-15 22:11:06 +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
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- 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- 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
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- a88f797455 * Constness and voidness. 2007-01-23 12:29:50 +00:00
bg- f6936bfd51 * Comment. 2007-01-12 18:18:23 +00:00
bg- 29572668ac * Typo in comment. 2006-12-20 13:42:55 +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- 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
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
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
bg- 5dacf0be11 Move misc. routines to new file. 2006-08-09 17:39:39 +00:00
bg- fb94d50410 Change typedef of uip_ipaddr_t from a vector type to a union.
typedef union uip_ip4addr_t {
  u16_t u16[2];
  u8_t  u8[4];
} uip_ip4addr_t;

typedef uip_ip4addr_t uip_ipaddr_t;

This implies that one must consistently pass pointers to
uip_ipaddr_t:s and not mix and match pointers with
uip_ipaddr_t:s as was done earlier.
2006-08-09 16:13:39 +00:00
bg- 4eee7b8bf4 Slightly outdated versions were imported to sf. 2006-08-02 14:33:36 +00:00
nifi a63bbe05ba changed to terminate the event data with a zero character instead of line feed character 2006-07-03 11:29:16 +00:00
adamdunkels c9e808d638 Import of the contiki-2.x development code from the SICS internal CVS server 2006-06-17 22:41:10 +00:00