avr-rss2 platform: Update README.md

This commit is contained in:
Atis Elsts 2016-02-23 11:28:50 +02:00
parent 42e7a6a7e1
commit d8f2129b17

View file

@ -7,15 +7,15 @@ The platform supports different AtMega-RF boards:
* Based on MCU AtMega256RFR2 * Based on MCU AtMega256RFR2
* Based on MCU AtMega128RFA1 * Based on MCU AtMega128RFA1
Boards looks the same. "Made in EU" labeled on the AtMega256RFR2 boards Boards all looks the same. AtMega256RFR2 boards are labeled with "Made in EU".
The platform and CPU code, are common for both boards, can be found under The platform and CPU code, are common for both boards, can be found under
`$(CONTIKI)/platfrom/avr-rssa. The port was developed and tested with RSS2. `$(CONTIKI)/platfrom/avr-rssa`. The port was developed and tested with RSS2.
This guide assumes that you have basic understanding of how to use the This guide assumes that you have basic understanding of how to use the
command line and perform basic admin tasks on UNIX family OSs. You should' command line and perform basic admin tasks on UNIX family OSs. You should
also have understanding about the Contiki OS design as well have C also have understanding about the Contiki OS design as well have C
programming skills. programming skills.
Boards Features Board Features
---------------- ----------------
* Chip Antenna. Supercardiod. * Chip Antenna. Supercardiod.
* Robust radio performance. Up to 300 meter line-of-sight. * Robust radio performance. Up to 300 meter line-of-sight.
@ -29,10 +29,9 @@ Boards Features
* Standard. 6-pin TTL-USB header for FTDI cable for UART. * Standard. 6-pin TTL-USB header for FTDI cable for UART.
* PCB formfactor for cheap project box G.40X IP54 * PCB formfactor for cheap project box G.40X IP54
* Power/current: * Power/current:
** RX ~10mA (Full RPC AtMegaXXRFR2). * RX ~10mA (Full RPC AtMegaXXRFR2).
** Sleep ~45uA @ 16MHz XTAL * Sleep ~45uA @ 16MHz XTAL
** Sleep ~15uA @ 8MHz using internal oscillator * Sleep ~15uA @ 8MHz using internal oscillator
* Preprogammed bootloader. * Preprogammed bootloader.
* CE certified by test institute. * CE certified by test institute.
@ -56,33 +55,33 @@ Note. The native OS packages does not yet support the new
AtMega256RfR2 MCU. AtMega256RfR2 MCU.
We'll use toolchain from Atmels web-site. You might also consider We'll use toolchain from Atmels web-site. You might also consider
Instant Contiki Instant Contiki.
* For Linux. ###### For Linux
See http://www.atmel.com/tools/ATMELAVRTOOLCHAINFORLINUX.aspx
Download the proper 8-bit platform 32 or 64 bit.
Unpack unpack under /usr/local
Also add to your search PATH. For example .bashrc add:
export PATH=$PATH:/usr/local/avr8-gnu-toolchain-linux_x86/bin
or
export PATH=$PATH:/usr/local/avr8-gnu-toolchain-linux_x86_64/bin
For flash programming you'll need avrdude. For OS using apt-get 1. See http://www.atmel.com/tools/ATMELAVRTOOLCHAINFORLINUX.aspx
apt-get install avrdude 2. Download the proper 8-bit platform 32 or 64 bit.
3. Unpack under `/usr/local`
4. Add to your search PATH. For example add to `.bashrc`: `export PATH=$PATH:/usr/local/avr8-gnu-toolchain-linux_x86_64/bin` (for 64 bit systems) or `export PATH=$PATH:/usr/local/avr8-gnu-toolchain-linux_x86/bin` (for 32 birt systems).
5. For flash programming you'll need `avrdude`. It can be installed with the command
`apt-get install avrdude`
###### For Windows
* For Windows.
Goes here Goes here
Contiki build TARGET Contiki build TARGET
-------------------- --------------------
make TARGET=avr-rss2 make TARGET=avr-rss2
For AtMega128RFR2 boards: For AtMega128RFR2 boards:
make TARGET=avr-rss2 MCU=atmega128rfr2
make TARGET=avr-rss2 MCU=atmega128rfr2
For AtMega128RFA1 boards: For AtMega128RFA1 boards:
make TARGET=avr-rss2 MCU=atmega128rfa1
make TARGET=avr-rss2 MCU=atmega128rfa1
Flashing Flashing
-------- --------
@ -91,49 +90,52 @@ Press the RESET button. The bootloader with wait for boot commands
for 3 seconds. for 3 seconds.
Flashing commnad line example 256k MCU: Flashing commnad line example 256k MCU:
avrdude -p m256rfr2 -c stk500v2 -P /dev/ttyUSB0 -b 38400 -e -U flash:w:hello-world.avr-rss2
avrdude -p m256rfr2 -c stk500v2 -P /dev/ttyUSB0 -b 38400 -e -U flash:w:hello-world.avr-rss2
Flashing commnad line example 128k MCU: Flashing commnad line example 128k MCU:
avrdude -p m128rfa1 -c avr109 -P /dev/ttyUSB0 -b 38400 -e -U flash:w:hello-world.avr-rss2
Older boards may use the avr109 boot loader. The stk500v2 uses the yellow avrdude -p m128rfa1 -c avr109 -P /dev/ttyUSB0 -b 38400 -e -U flash:w:hello-world.avr-rss2
Older boards may use the avr109 boot loader. The `stk500v2` uses the yellow
lED while the avr109 uses the red LED. lED while the avr109 uses the red LED.
Tested applications and examples Tested applications and examples
--------------------------------- ---------------------------------
hello-world * `hello-world`
ipv6/rpl-udp * `ipv6/rpl-udp`
ipv6/simple-udp-rpl * `ipv6/simple-udp-rpl`
rime * `rime`
ipv6/multicast * `ipv6/multicast`
example-shell Needs symbol.c to be added to project also seems like * `examples/powertrace`
in core/dev/serial-line.c process_poll must be replaced with * `example-shell`
process_post.
/* Wake up consumer process */ Note that the shell example needs file `symbols.c` to be added to project also seems like
- process_poll(&serial_line_process); in `core/dev/serial-line.c` the function `process_poll` must be replaced with `process_post`:
+ process_post(&serial_line_process, 0, 0);
/* Wake up consumer process */
- process_poll(&serial_line_process);
+ process_post(&serial_line_process, 0, 0);
examples/powertrace
Platform tutorial applications Platform tutorial applications
.----------------------------- -----------------------------
Example to read out various sensors leds serial numbers etc. Example to read out various sensors, leds, serial numbers, and so on:
platform/avr-rss2/examples/hello-sensors/ [platform/avr-rss2/examples/hello-sensors/](examples/hello-sensors/).
This example shows the sensd data encoding. But UDP using 6lowpan. The previous example uses the `sensd` data encoding. An example that uses UDP through 6lowpan is here:
platform/avr-rss2/examles/ipv6/rpl-udp-report/ [platform/avr-rss2/examples/ipv6/rpl-udp-report](examples/ipv6/rpl-udp-report).
NAT ip64 ethernet GW based on Contiki core/net/ip64 code An Ethernet gateway with ip64 NAT, based on Contiki `core/net/ip64` code:
platform/avr-rss2/examples/ipv6/rpl-border-router/ [platform/avr-rss2/examples/ipv6/rpl-border-router/](examples/ipv6/rpl-border-router/).
Regressions tests Regressions tests
----------------- -----------------
Travis compile regression for platform: Travis compile regression test for the platform:
regression-tests/23-compile-avr [regression-tests/23-compile-avr](../../regression-tests/23-compile-avr).
Port adds newer version of avr-gcc compiler (4.9.2), to support This port adds newer version of `avr-gcc` compiler (4.9.2), to support
testing of newwr Atmel MCU as Atmega256RFR2. Work by Atis Elsts testing of newer Atmel MCU as Atmega256RFR2.
Board approvals Board approvals