[riot-devel] Port of RIOT on Samr21

Thomas Eichinger thomas.eichinger at fu-berlin.de
Wed Oct 22 15:35:39 CEST 2014

Hi Baptiste,

> On 22 Oct 2014, at 15:08, Baptiste Clenet <bapclenet at gmail.com> wrote:
> Thomas, I'm looking at the uart.c that you wrote. Why did you only develop one UART?
The intention was to get preliminary support for this board fast. For this I chose to implement
one UART using one SERCOM. It can be seen as prototype and be applied to additional 
SERCOMs if needed.

> After reading the datasheet, I see that the samd21 has got 5 SERCOM which can be used by USART, I2C, SPI and LIN slave. 
> With RIOT, we can set 4 USART and 4 I2C. How do we proceed with the 5 SERCOM? 
I’d suggest we take one SERCOM for SPI (needed for the radio device) and one for I2C to provide
an example implementation for someone interested into this board. How many of each of them 
(SPI,I2C,USART) one would actually use later could then be configured via periph_conf.h by adopting
to individual needs. One could say I don’t need an USART I’ll take the spare SERCOM to physically
connect another SPI device or similar.

> You chose PIN_PA04 and PIN_PA05 for UART 0. Which one should I use for UART 1,2,3? 
> And Atmel chose to define I2C on PIN_PA16  and PIN_PA17, on which pin will be the following I2C?
For this we’d have to consult the multiplexing table in the Atmel data sheet p. 12. There are not
too many possible combinations.

Currently I’m busy developing sensor drivers for the iot-lab_M3 for a demo we give beginning 
of November. When these are done the samr21 will get some more love again. :)

Best, Thomas

More information about the devel mailing list