Commit graph

10882 commits

Author SHA1 Message Date
George Oikonomou ca5a4db919 Merge pull request #1173 from bkozak-scanimetrics/cc26xx_enable_bad_crc_debug
CC26xx - Enable RX_NOK on DEBUG builds
2015-08-03 10:22:42 +01:00
Marco Grella 62c33260bd Modified structure to use a sub-module for platform APIs 2015-07-31 17:11:27 +02:00
Arthur Fabre 5403b2a211 Fix default CoAP header block2 size
When a client sends a CoAP request with no block2 size,
the default one would be set to REST_MAX_CHUNK_SIZE.
However, this is not guaranteed to be a power of 2.
This can lead to clients receiving a bigger payload than expected as
part of the header, and ending up with duplicated content.
Setting the default to COAP_MAX_BLOCK_SIZE,
which is guaranteed to be a power of 2, fixes this.
2015-07-29 16:37:09 +01:00
Marco Grella 711dd02a9c Improve UART IRQ management. 2015-07-29 12:55:30 +02:00
Nicolas Tsiftes d5956d5c75 Merge pull request #1160 from g-oikonomou/contrib/contikimac-config
Make ContikiMAC more configurable
2015-07-28 03:20:32 +02:00
Marco Grella bb08369b01 Regression tests fixes and Readme update. 2015-07-27 14:08:07 +02:00
George Oikonomou 414890be9e Merge pull request #1178 from jandrieu/patch-1
Clarified that a newline is needed for the echo
2015-07-27 00:19:24 +01:00
Joe Andrieu e0f72b9545 Clarified that a newline is needed for the echo 2015-07-26 16:17:34 -07:00
Marco Grella b61152bfa1 I/O libraries 2015-07-24 19:54:05 +02:00
Marco Grella 211d410d86 USE_SUBGHZ_BOARD fix in Makefile.compile-test 2015-07-24 18:19:46 +02:00
Marco Grella b271a4a3c3 Updated README.md 2015-07-24 17:00:32 +02:00
Marco Grella ceff03ab2f Updated README.md 2015-07-24 16:57:34 +02:00
Marco Grella 1116bcca2a Updated README.md 2015-07-24 16:44:19 +02:00
Marco Grella 86f35536a4 Added new stm32nucleo-spirit1 platform 2015-07-24 16:30:10 +02:00
Marco Grella d87f6f67e2 Added new stm32nucleo-spirit1 platform 2015-07-24 16:23:13 +02:00
Billy Kozak 35919f6836 CC26xx - Enable RX_NOK on DEBUG builds
Enabled the RX_NOK interrupt, if DEBUG or CC26XX_DEBUG_CRC are set
true, for the purpose of monitoring packets with bad CRC
2015-07-20 10:47:06 -06:00
Timofei Istomin b9aa88b504 [multicast] Do not forward every incoming TM ICMP
The Trickle Multicast ICMP packet handler was not resetting uip_len to zero,
so all incoming TM ICMP packets were forwarded overloading the network.
2015-07-17 20:04:15 +02:00
George Oikonomou 512f9984b6 Merge pull request #1170 from bkozak-scanimetrics/cc26xx_autoflush_bad_crc
CC26xx autoflush bad crc packets
2015-07-16 20:29:50 +01:00
Benoît Thébaudeau 6b76ead49c enc28j60: Prevent enc28j60_read() from running before init
This is a precaution in case enc28j60-ip64-driver.c is skipped.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:16 +02:00
Benoît Thébaudeau b4c32954a6 enc28j60: Fix workaround for erratum #14
Only odd addresses may be programmed to the ERXRDPT registers, so
initialize them to RX_BUF_END instead of RX_BUF_START.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau 8615b77da0 enc28j60: Print the status vector in case of transmit error
This makes debugging easier.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau 8c6e3e348a enc28j60: Program ETXND after the data packet
Just follow the steps from the data sheet to transmit a packet.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau 15d1b177d6 enc28j60: Use hardware padding for transmissions
There is no reason to use software when a feature is available in
hardware.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau 2cd3eaf310 enc28j60: Implement and use the BFS and BFC commands
The Bit Field Set and Bit Field Clear commands are more efficient than
the Read Control Register + Write Control Register combination, so use
them whenever possible, i.e. for the ETH registers.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau 356d17737c enc28j60: ERXFCON needs to be set only once
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau 8a20e7c05c enc28j60: Fix the MAC address configuration comment
The MAADRx register numbering was wrong.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau 31e0c87a6f enc28j60: Do not initialize MAIPGH for full duplex
MAIPGH should be programmed only if half duplex is used.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau 121b066f04 enc28j60: Update the MACON4 configuration comment
This only applies to half duplex, so the actual configuration of MACON4
does not need to be changed.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau 2b08c32528 enc28j60: The MACON2 register is reserved
The register 0x01 in bank 2, named MACON2 in the code, is actually
reserved, so its contents must not be changed.

This register has been marked as reserved from the revision B of the
data sheet in July 2006. The current revision of the data sheet is E,
and it is quite clear about this register.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau b21da96e67 enc28j60: Print revision during initialization
This is useful as debug information since the revisions of this device
have notable differences.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:14 +02:00
Benoît Thébaudeau ba6a0bc381 enc28j60: Add workaround for erratum #2 "CLKRDY set early"
A delay of 1 ms must be added after the System Reset Command. Still wait
for ESTAT.CLKRDY afterwards as a precaution.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:13 +02:00
Benoît Thébaudeau 48f269e4f5 enc28j60: Fix RCR command for MAC and MII registers
The Read Control Register command requires that a dummy byte be read
before the register value for the MAC and MII registers.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:13 +02:00
Benoît Thébaudeau 35544e81ee enc28j60: Reuse read/writedata() for read/writedatabyte()
The read/writedatabyte() functions are just a special case of
read/writedata() with a simpler API, so reuse these instead of
duplicating code.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:13 +02:00
Oliver Schmidt 01251e94c6 Merge pull request #1171 from oliverschmidt/master
Added missing charset abstraction.
2015-07-16 21:03:08 +02:00
Oliver Schmidt ab6d6498fe Added missing charset abstraction. 2015-07-16 17:55:26 +02:00
Billy Kozak 99d74e949f CC26xx autoflush bad crc packets
Setting bAutoFlushCrc=1 so that the radio co-processor will
automatically drop packets with bad crc.
2015-07-16 08:58:24 -06:00
Arthur Fabre 8739113308 Fix warnings in ContikiMAC
../..//core/net/mac/contikimac/contikimac.c:503:11: warning: variable
‘seqno’ set but not used [-Wunused-but-set-variable]
../..//core/net/mac/contikimac/contikimac.c:496:7: warning: variable
‘len’ set but not used [-Wunused-but-set-variable]

Both of these variables are only used if RDC_CONF_HARDWARE_ACK is not
true.
Their definitions and use have been moved into #ifdef guards so they do
not appear if RDC_CONF_HARDWARE_ACK is set.
2015-07-16 13:49:31 +01:00
George Oikonomou 315f6fe535 Implement TX of S/W ACKs with ContikiMAC 2015-07-12 00:07:33 +01:00
George Oikonomou 503a992887 Make ContikiMAC more configurable
Allow the project / platform to provide values for CCA_SLEEP_TIME and LISTEN_TIME_AFTER_PACKET_DETECTED.

This is useful for sub-ghz operation.

This has been shamelessly stolen from the [Mountain Sensing project](https://github.com/feshie/contiki)

@heliosfa @kmartinez
2015-07-11 23:55:44 +01:00
Oliver Schmidt ca50a2c6df Merge pull request #1157 from oliverschmidt/master
Allow fixup to be repeated.
2015-07-09 23:31:00 +02:00
Oliver Schmidt f348f4feb2 Allow fixup to be repeated.
There are scenarios in which it is beneficial to search for an Etherne chip at several i/o locations. To do so the chip initialization is performed at several i/o locations until it succeeds. In order to allow for that operation model the i/o location fixup needs to be repeatable.

Note: This won't work with the RR-Net because the fixup bits overlap with the chip i/o bits.
2015-07-09 22:43:16 +02:00
Amit Geron bf3a5de75e Fix stunicast timer restart
Instead of hard coded setting the resend timer to CLOCK_SECOND,
restart it, so that the time between ANY following transmissions will
be as passed to stunicast_send_stubborn.
2015-07-09 12:03:55 +03:00
Amit Geron b1ef3fdf41 Fix indentation 2015-07-09 12:03:55 +03:00
George Oikonomou 98afdd4d73 Merge pull request #1152 from bkozak-scanimetrics/cc26xx_en_correlator_filt
turned on correlator in radio packet filter
2015-07-08 23:17:58 +01:00
Billy Kozak b7565f3930 turned on correlator in radio packet filter
Enabling this option seems to greatly improve transciever performance with
Contikimac. This seems to happen because Contikimac CCAs are much less likely
to detect false positives (thus screwing up the CCA sequence).
2015-07-06 16:28:40 -06:00
Oliver Schmidt e7aba9b9ee Merge pull request #1151 from oliverschmidt/master
Allow to configure Telnetd idle timeout.
2015-07-06 15:05:16 +02:00
Oliver Schmidt a30e2e0045 Allow to configure Telnetd idle timeout.
The default Telnetd idle timeout of 30 seconds seems somewhat short. Best to have it user-configurable (incl. the option to turn it off with an config value of 0).
2015-07-06 12:25:20 +02:00
Oliver Schmidt a0be26d9f1 Merge pull request #1150 from oliverschmidt/master
Several retrocomputing config changes.
2015-07-06 09:42:55 +02:00
Oliver Schmidt 5d039d9848 Optimized retro webbrowser configs.
The change c7b8bac006 optimized memory usage and thus allowed to adjust the retro webbrowser configs for improved web page compatibility.
2015-07-05 16:56:25 +02:00
Oliver Schmidt a3dba2e25c Changed Apple II 800kB floppy image type.
The .2mg image format contains a header which is missing from our file. So our file is rather a .po image.

I opted to not add the .2mg header as it is only necessary if the metadata it contains differs from the values "guessed" when using the "naked" .po image format. On the other hand there are image file consumers not understanding the .2mg image format.
2015-07-05 14:21:03 +02:00