mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
Merge pull request #20621 from dylad/pr/sam0/doc_update
boards: Update SAM0-based documentation
This commit is contained in:
commit
2d5e453c7c
@ -50,7 +50,13 @@ The samd10-xmini is available from various hardware vendors for ~8€ (as of
|
||||
Connect the device to your Micro-USB cable using the port labeled as *DEBUG
|
||||
USB*.
|
||||
|
||||
The standard method for flashing RIOT to the samd10-xmini is using EDBG.
|
||||
The standard method for flashing RIOT to the samd10-xmini is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=samd10-xmini -C tests/leds flash`
|
||||
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=samd10-xmini -C tests/leds flash`
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
```
|
||||
@ -59,12 +65,6 @@ echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev"' \
|
||||
sudo service udev restart
|
||||
```
|
||||
|
||||
Then you can flash the device as usual
|
||||
|
||||
```
|
||||
make BOARD=samd10-xmini flash
|
||||
```
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
### I2C
|
||||
|
@ -47,11 +47,13 @@ memory.
|
||||
Connect the device to your Micro-USB cable using the port labeled as *DEBUG
|
||||
USB*.
|
||||
|
||||
The standard method for flashing RIOT to the samd20-xpro is using OpenOCD.
|
||||
The standard method for flashing RIOT to the samd20-xpro is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=samd20-xpro -C tests/leds flash`
|
||||
|
||||
Refer to https://github.com/RIOT-OS/RIOT/wiki/OpenOCD for general
|
||||
instructions on building OpenOCD and make sure "cmsis-dap" and "hidapi-libusb"
|
||||
are enabled.
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=samd20-xpro -C tests/leds flash`
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
```
|
||||
@ -64,6 +66,7 @@ sudo service udev restart
|
||||
### Arch Linux
|
||||
With yaourt:
|
||||
```
|
||||
yaourt -S libudev0
|
||||
yaourt -S hidapi-git
|
||||
yaourt -S openocd-git
|
||||
# edit PKGBUILD, add "cmsis-dap hidapi-libusb" to "_features"
|
||||
@ -74,12 +77,6 @@ Although this refers to setting up the SAMR21, this guide is still very
|
||||
helpful to understanding how to set up a solid RIOT development environment for
|
||||
the SAMD20: http://watr.li/samr21-dev-setup-ubuntu.html
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the samd20-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
*/
|
||||
|
@ -11,7 +11,7 @@ controller. For programming the MCU comes with 32Kb of RAM and 256Kb of flash
|
||||
memory.
|
||||
|
||||
The samd21-xpro is available from various hardware vendors for ~30USD (as of
|
||||
2017May).
|
||||
2017 May).
|
||||
|
||||
## Hardware
|
||||
|
||||
@ -50,31 +50,30 @@ The samd21-xpro is available from various hardware vendors for ~30USD (as of
|
||||
|
||||
| Device | ID | Supported | Comments |
|
||||
|:------------- |:------------- |:------------- |:------------- |
|
||||
| MCU | samd21 | partly | DFLL clock not implemented |
|
||||
| MCU | samd21 | yes | |
|
||||
| Low-level driver | GPIO | yes | |
|
||||
| | ADC | yes | |
|
||||
| | PWM | yes | |
|
||||
| | UART | yes | |
|
||||
| | I2C | unknown | |
|
||||
| | SPI | yes | |
|
||||
| | USB | no | |
|
||||
| | I2C | yes | |
|
||||
| | SPI | yes | |
|
||||
| | USB | yes | |
|
||||
| | RTT | yes | |
|
||||
| | RTC | yes | |
|
||||
| | RNG | unknown | |
|
||||
| | Timer | yes | |
|
||||
|
||||
|
||||
| | RTC | yes | |
|
||||
| | Timer | yes | |
|
||||
|
||||
## Flashing the device
|
||||
|
||||
Connect the device to your Micro-USB cable using the port labeled as *DEBUG
|
||||
USB*.
|
||||
|
||||
The standard method for flashing RIOT to the samd21-xpro is using OpenOCD.
|
||||
The standard method for flashing RIOT to the samd21-xpro is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=samd21-xpro -C tests/leds flash`
|
||||
|
||||
Refer to https://github.com/RIOT-OS/RIOT/wiki/OpenOCD for general
|
||||
instructions on building OpenOCD and make sure "cmsis-dap" and "hidapi-libusb"
|
||||
are enabled.
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=samd21-xpro -C tests/leds flash`
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
```
|
||||
@ -87,6 +86,7 @@ sudo service udev restart
|
||||
### Arch Linux
|
||||
With yaourt:
|
||||
```
|
||||
yaourt -S libudev0
|
||||
yaourt -S hidapi-git
|
||||
yaourt -S openocd-git
|
||||
# edit PKGBUILD, add "cmsis-dap hidapi-libusb" to "_features"
|
||||
@ -97,12 +97,6 @@ Although this refers to setting up the SAMR21, this guide is still very
|
||||
helpful to understanding how to set up a solid RIOT development environment for
|
||||
the SAMD21: http://watr.li/samr21-dev-setup-ubuntu.html
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the samd21-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
*/
|
||||
|
@ -49,13 +49,13 @@ The same54-xpro is available from various hardware vendors for ~70USD (as of
|
||||
|
||||
| Device | ID | Supported | Comments |
|
||||
|:---------------- |:--------- |:--------- |:--------- |
|
||||
| MCU | same54 | partly | |
|
||||
| MCU | same54 | yes | |
|
||||
| Low-level driver | GPIO | yes | |
|
||||
| | ADC | yes | |
|
||||
| | CAN | no | |
|
||||
| | CAN | yes | |
|
||||
| | DAC | yes | |
|
||||
| | QSPI | no | see #15300|
|
||||
| | SD/MMC | no | |
|
||||
| | SD/MMC | yes |SDCard only|
|
||||
| | PWM | yes | |
|
||||
| | UART | yes | |
|
||||
| | I2C | yes | |
|
||||
@ -73,7 +73,14 @@ The same54-xpro is available from various hardware vendors for ~70USD (as of
|
||||
Connect the device to your Micro-USB cable using the port labeled as *DEBUG
|
||||
USB*.
|
||||
|
||||
The standard method for flashing RIOT to the same54-xpro is using EDBG.
|
||||
The standard method for flashing RIOT to the same54-xpro is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=same54-xpro -C tests/leds flash`
|
||||
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=same54-xpro -C tests/leds flash`
|
||||
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
```
|
||||
@ -83,12 +90,6 @@ echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev"' \
|
||||
sudo service udev restart
|
||||
```
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the same54-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
*/
|
||||
|
@ -66,10 +66,4 @@ Connect the device to your Micro-USB cable.
|
||||
|
||||
The standard method for flashing RIOT to the saml10-xpro is using EDBG.
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the saml10-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
*/
|
||||
|
@ -79,10 +79,4 @@ flash memory. Such action can be done with the following EDBG command:
|
||||
or pass it as argument when calling make:
|
||||
EDBG_ARGS="-F w0,194,1" BOARD=saml11-xpro make flash term -C tests/periph/uart
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the saml11-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
*/
|
||||
|
@ -55,18 +55,19 @@ indiscriminately;
|
||||
|
||||
| Device | ID | Supported | Comments |
|
||||
|:------------- |:------------- |:------------- |:------------- |
|
||||
| MCU | saml21 | partly | PLL clock not implemented |
|
||||
| MCU | saml21 | yes | |
|
||||
| Low-level driver | GPIO | yes | |
|
||||
| | PWM | no | |
|
||||
| | UART | yes | |
|
||||
| | PWM | yes | |
|
||||
| | UART | yes | |
|
||||
| | I2C | yes | |
|
||||
| | SPI | yes | |
|
||||
| | USB | no | |
|
||||
| | USB | yes | |
|
||||
| | RTT | yes | |
|
||||
| | RTC | yes | |
|
||||
| | RNG | no | |
|
||||
| | Timer | yes | |
|
||||
| | ADC | yes | |
|
||||
| | RTC | yes | |
|
||||
| | RNG | yes | |
|
||||
| | Timer | yes | |
|
||||
| | ADC | yes | |
|
||||
| | DAC | yes | |
|
||||
|
||||
|
||||
|
||||
@ -74,17 +75,13 @@ indiscriminately;
|
||||
|
||||
Connect the device to your Micro-USB cable using the port labeled as *EDBG*.
|
||||
|
||||
The standard method for flashing RIOT to the saml21-xpro is using OpenOCD.
|
||||
Please note that even the latest official OpenOCD (v0.9 at the time of this
|
||||
writing) does not support B-variant SAML21 devices.
|
||||
The standard method for flashing RIOT to the saml21-xpro is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=saml21-xpro -C tests/leds flash`
|
||||
|
||||
If you attempt to flash a board, and OpenOCD throws a `Couldn't find part
|
||||
corresponding to DID XXXXXXXX` error, you will need to compile your own OpenOCD
|
||||
from source.
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Refer to https://github.com/RIOT-OS/RIOT/wiki/OpenOCD for general
|
||||
instructions on building OpenOCD and make sure "cmsis-dap" and "hidapi-libusb"
|
||||
are enabled.
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=saml21-xpro -C tests/leds flash`
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
```
|
||||
@ -97,6 +94,7 @@ sudo service udev restart
|
||||
### Arch Linux
|
||||
With yaourt:
|
||||
```
|
||||
yaourt -S libudev0
|
||||
yaourt -S hidapi-git
|
||||
yaourt -S openocd-git
|
||||
# edit PKGBUILD, add "cmsis-dap hidapi-libusb" to "_features"
|
||||
@ -107,24 +105,6 @@ Although this refers to setting up the SAMR21, this guide is still very
|
||||
helpful to understanding how to set up a solid RIOT development environment for
|
||||
the SAML21: http://watr.li/samr21-dev-setup-ubuntu.html
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the saml21-xpro board we strongly recommend the usage of the [GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
### Stack sizes
|
||||
The default stack sizes have not been tuned properly yet. If in doubt why
|
||||
your application crashes try increasing the default stack sizes and use `ps` to
|
||||
find out how much stack is being used.
|
||||
Tracked in https://github.com/RIOT-OS/RIOT/issues/2228
|
||||
|
||||
### Not flashable by OpenOCD anymore
|
||||
It can happen that OpenOCD is not able to program the board, because of wrong
|
||||
clock configuration or low power modes. In this case you can use
|
||||
[this little tool](https://github.com/ataradov/edbg) to erase the flash. Just follow the
|
||||
instructions to build it and run `./edbg -e` to erase the flash. Then press the
|
||||
reset button and you're able to program via OpenOCD again.
|
||||
*/
|
||||
|
@ -59,7 +59,7 @@ externally connected SPI devices.
|
||||
|:------------- |:--------------------- |
|
||||
| Type | 2.4GHz IEEE802.15.4 radio |
|
||||
| Vendor | Atmel |
|
||||
| Datasheet | [Datasheet](http://www.atmel.com/images/atmel-8351-mcu_wireless-at86rf233_datasheet.pdf) |
|
||||
| Datasheet | [Datasheet](http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-8351-MCU_Wireless-AT86RF233_Datasheet.pdf) |
|
||||
| Connected to | SPI_0 |
|
||||
| Pin Config: | |
|
||||
| Device | SERCOM4 |
|
||||
@ -80,19 +80,18 @@ this.
|
||||
|
||||
| Device | ID | Supported | Comments |
|
||||
|:------------- |:------------- |:------------- |:------------- |
|
||||
| MCU | samd21 | partly | Energy saving modes not fully utilized|
|
||||
| MCU | samd21 | yes| |
|
||||
| Low-level driver | GPIO | yes | |
|
||||
| | PWM | yes | |
|
||||
| | UART | yes | two UARTs by now|
|
||||
| | UART | yes | |
|
||||
| | I2C | yes | |
|
||||
| | SPI | yes | |
|
||||
| | ADC | yes | PA04 & PA05 disabled by default due to EDBG's use of them for UART, can be enabled from `periph_conf.h`|
|
||||
| | USB | no | |
|
||||
| | ADC | yes | PA04 & PA05 disabled by default due to EDBG's use of them for UART, can be enabled from `periph_conf.h`|
|
||||
| | USB | yes | |
|
||||
| | RTT | yes | |
|
||||
| | RTC | yes | |
|
||||
| | RNG | no | no HW module |
|
||||
| | Timer | yes | |
|
||||
| Radio Chip | AT86RF233 | yes | using at86rf231 driver (this will be renamed to at86rf2xx) |
|
||||
| Radio Chip | AT86RF233 | yes | using at86rf2xx driver |
|
||||
|
||||
|
||||
|
||||
@ -100,15 +99,16 @@ this.
|
||||
|
||||
Connect the device to your Micro-USB cable using the port labeled as *EDBG*.
|
||||
|
||||
The standard method for flashing RIOT to the samr21-xpro is using OpenOCD.
|
||||
For this to work properly, **you have to make sure to use a very recent version
|
||||
of OpenOCD**. The v0.8.0 release will _not_ work. If this is still the current
|
||||
release you'll have to build OpenOCD from source.
|
||||
The standard method for flashing RIOT to the samr21-xpro is using [edbg](https://github.com/ataradov/edbg).
|
||||
by calling: `make BOARD=samr21-xpro -C tests/leds flash`
|
||||
|
||||
Refer to https://github.com/RIOT-OS/RIOT/wiki/OpenOCD for building OpenOCD
|
||||
and make sure "cmsis-dap" and "hidapi-libusb" are enabled.
|
||||
Note that on Linux, you will need libudev-dev package to be installed.
|
||||
|
||||
Users can also use openOCD to flash and/or debug the board using:
|
||||
`PROGRAMMER=openocd make BOARD=samr21-xpro -C tests/leds flash`
|
||||
|
||||
On Linux you will have to add a **udev** rule for hidraw, like
|
||||
|
||||
```
|
||||
bash
|
||||
echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev"' \
|
||||
@ -119,6 +119,7 @@ sudo service udev restart
|
||||
### Arch Linux
|
||||
With yaourt:
|
||||
```
|
||||
yaourt -S libudev0
|
||||
yaourt -S hidapi-git
|
||||
yaourt -S openocd-git
|
||||
# edit PKGBUILD, make sure "hidapi-libusb" is in "_features"
|
||||
@ -172,14 +173,6 @@ flow control an external FTDI device must be connected to the board's
|
||||
rx, tx, cts & rts matching pin headers, eg. for `UART_DEV(0)` to
|
||||
`PA5`, `PA4`, `PA6` & `PA7` (respectively) on EXT1 headers.
|
||||
|
||||
|
||||
## Supported Toolchains
|
||||
|
||||
For using the samr21-xpro board we strongly recommend the usage of the
|
||||
[GNU Tools for ARM Embedded Processors](https://launchpad.net/gcc-arm-embedded)
|
||||
toolchain.
|
||||
|
||||
|
||||
## Known Issues / Problems
|
||||
|
||||
### 64 character input limit on EDBG UART
|
||||
@ -204,13 +197,6 @@ Tracked in https://github.com/RIOT-OS/RIOT/issues/2228
|
||||
When using the SW0 user button as interrupt source it appears that this is
|
||||
triggered when just tipping on the button and not really pressing it.
|
||||
|
||||
### Not flashable by OpenOCD anymore
|
||||
It can happen that OpenOCD is not able to program the board, because of wrong
|
||||
clock configuration or low power modes. In this case you can use
|
||||
[this little tool](https://github.com/ataradov/edbg) to erase the flash. Just follow the
|
||||
instructions to build it and run `./edbg -e` to erase the flash. Then press the
|
||||
reset button and you're able to program via OpenOCD again.
|
||||
|
||||
### Flashing might not work in Virtual Box with macOS as host
|
||||
It might happen that flashing through OpenOCD works once inside Virtual Box.
|
||||
But when you try to flash again, you could get a CMSIS-DAP related error. It
|
||||
|
Loading…
Reference in New Issue
Block a user