Re: [riot-devel] SPI on Arduino Zero for AT86RF233

2018-03-06 Thread Tobias Guggemos
Hey,

thanks, GPIO_MUX_C was the missing puzzle.

There is still a bug when receiving frames, but at least I can now initialize 
it correctly.

Thanks

Tobias

 

Von: devel [mailto:devel-boun...@riot-os.org] Im Auftrag von Alexandre Abadie
Gesendet: Montag, 5. März 2018 18:23
An: RIOT OS kernel developers 
Betreff: Re: [riot-devel] SPI on Arduino Zero for AT86RF233

 

Hi,

 

Not sure it will help but I recently tried to use a Semtech LoRa radio with an 
Arduino Zero and using a second SPI (for the radio) was working with the 
following configuration:

{
.dev  = &SERCOM1->SPI,
.miso_pin = GPIO_PIN(PA, 19),
.mosi_pin = GPIO_PIN(PA, 16),
.clk_pin  = GPIO_PIN(PA, 17),
.miso_mux = GPIO_MUX_C,
.mosi_mux = GPIO_MUX_C,
.clk_mux  = GPIO_MUX_C,
.miso_pad = SPI_PAD_MISO_3,
.mosi_pad = SPI_PAD_MOSI_0_SCK_1
}

 

in the driver params, I had this line for the SPI: 

#define SX127X_PARAM_SPI(SPI_DEV(1))

 

Let us know if it works for you.

 

Alex

 

 

  _  

Hey,

I’m trying to use the AT86RF233 with the Arduino M0 Pro (using the Arduino Zero 
configuration).

Using the default SPI configuration (and pins) didn’t work, why I tried to 
change the SPI to the Arduino_Pins 11,12,13 in order to have CS (PIN 10) using 
the same SERCOM as the other SPI pins.

However, I didn’t get it to work and it seems that using SPI with SERCOM1 does 
not initialize.

Is there anything I did completely wrong or is it just a stupid idea to connect 
the AT86RF233 with an Arduino M0?

 

SPI Config in arduino/periph_conf.h:

static const spi_conf_t spi_config[] = {
   {
.dev  = &SERCOM4->SPI,
.miso_pin = ARDUINO_PIN_ICSP_MISO,
.mosi_pin = ARUDINO_PIN_ICSP_MOSI,
.clk_pin  = ARUDINO_PIN_ICSP_CLK,
.miso_mux = GPIO_MUX_D,
.mosi_mux = GPIO_MUX_D,
.clk_mux  = GPIO_MUX_D,
.miso_pad = SPI_PAD_MISO_0,
.mosi_pad = SPI_PAD_MOSI_2_SCK_3
}
   ,
{
.dev  = &SERCOM1->SPI,
.miso_pin = ARDUINO_PIN_12,
.mosi_pin = ARDUINO_PIN_11,
.clk_pin  = ARDUINO_PIN_13,
.miso_mux = GPIO_MUX_D,
.mosi_mux = GPIO_MUX_D,
.clk_mux  = GPIO_MUX_D,
.miso_pad = SPI_PAD_MISO_3,
.mosi_pad = SPI_PAD_MOSI_0_SCK_1
}
};

 

at86rf2xx_params.h:

 

#ifndef AT86RF2XX_PARAM_SPI
#define AT86RF2XX_PARAM_SPI (SPI_DEV(1))
#endif
#ifndef AT86RF2XX_PARAM_SPI_CLK
#define AT86RF2XX_PARAM_SPI_CLK (SPI_CLK_5MHZ)
#endif
#ifndef AT86RF2XX_PARAM_CS
#define AT86RF2XX_PARAM_CS  ARDUINO_PIN_10
#endif
#ifndef AT86RF2XX_PARAM_INT
#define AT86RF2XX_PARAM_INT ARDUINO_PIN_7
#endif
#ifndef AT86RF2XX_PARAM_SLEEP
#define AT86RF2XX_PARAM_SLEEP   ARDUINO_PIN_8
#endif
#ifndef AT86RF2XX_PARAM_RESET
#define AT86RF2XX_PARAM_RESET   ARDUINO_PIN_9
#endif

 

#define AT86RF2XX_PARAMS_BOARD{.spi = AT86RF2XX_PARAM_SPI, \
 .spi_clk = AT86RF2XX_PARAM_SPI_CLK, \
 .cs_pin = AT86RF2XX_PARAM_CS, \
 .int_pin = AT86RF2XX_PARAM_INT, \
 .sleep_pin = AT86RF2XX_PARAM_SLEEP, \
 .reset_pin = AT86RF2XX_PARAM_RESET}

 

Thanks 

Tobias

 

-- 

Tobias Guggemos, M.Sc

 

Ludwig-Maximilians-Universität München (LMU)

Institue of Computer Science

Oettingenstr. 67, Room E003

D-80538 München, Germany

 

Munich Network Management Team (MNM) 

Tel: +49 89 2180-9209

 <http://www.mnm-team.org/~guggemos> http://www.mnm-team.org/~guggemos 

 


___
devel mailing list
 <mailto:devel@riot-os.org> devel@riot-os.org
 <https://lists.riot-os.org/mailman/listinfo/devel> 
https://lists.riot-os.org/mailman/listinfo/devel

 

___
devel mailing list
devel@riot-os.org
https://lists.riot-os.org/mailman/listinfo/devel


Re: [riot-devel] SPI on Arduino Zero for AT86RF233

2018-03-05 Thread Alexandre Abadie
Hi, 

Not sure it will help but I recently tried to use a Semtech LoRa radio with an 
Arduino Zero and using a second SPI (for the radio) was working with the 
following configuration: 
{ 
.dev = &SERCOM1->SPI, 
.miso_pin = GPIO_PIN(PA, 19), 
.mosi_pin = GPIO_PIN(PA, 16), 
.clk_pin = GPIO_PIN(PA, 17), 
.miso_mux = GPIO_MUX_C, 
.mosi_mux = GPIO_MUX_C, 
.clk_mux = GPIO_MUX_C, 
.miso_pad = SPI_PAD_MISO_3, 
.mosi_pad = SPI_PAD_MOSI_0_SCK_1 
} 

in the driver params, I had this line for the SPI: 
#define SX127X_PARAM_SPI (SPI_DEV(1)) 

Let us know if it works for you. 

Alex 

- Mail original -

> Hey,

> I’m trying to use the AT86RF233 with the Arduino M0 Pro (using the Arduino
> Zero configuration).

> Using the default SPI configuration (and pins) didn’t work, why I tried to
> change the SPI to the Arduino_Pins 11,12,13 in order to have CS (PIN 10)
> using the same SERCOM as the other SPI pins.

> However, I didn’t get it to work and it seems that using SPI with SERCOM1
> does not initialize.

> Is there anything I did completely wrong or is it just a stupid idea to
> connect the AT86RF233 with an Arduino M0?

> SPI Config in arduino/periph_conf.h:

> static const spi_conf_t spi_config[] = {
> {
> .dev = &SERCOM4->SPI,
> .miso_pin = ARDUINO_PIN_ICSP_MISO,
> .mosi_pin = ARUDINO_PIN_ICSP_MOSI,
> .clk_pin = ARUDINO_PIN_ICSP_CLK,
> .miso_mux = GPIO_MUX_D,
> .mosi_mux = GPIO_MUX_D,
> .clk_mux = GPIO_MUX_D,
> .miso_pad = SPI_PAD_MISO_0,
> .mosi_pad = SPI_PAD_MOSI_2_SCK_3
> }
> ,
> {
> .dev = &SERCOM1->SPI,
> .miso_pin = ARDUINO_PIN_12,
> .mosi_pin = ARDUINO_PIN_11,
> .clk_pin = ARDUINO_PIN_13,
> .miso_mux = GPIO_MUX_D,
> .mosi_mux = GPIO_MUX_D,
> .clk_mux = GPIO_MUX_D,
> .miso_pad = SPI_PAD_MISO_3,
> .mosi_pad = SPI_PAD_MOSI_0_SCK_1
> }
> };

> at86rf2xx_params.h:

> #ifndef AT86RF2XX_PARAM_SPI
> #define AT86RF2XX_PARAM_SPI (SPI_DEV( 1 ))
> #endif
> #ifndef AT86RF2XX_PARAM_SPI_CLK
> #define AT86RF2XX_PARAM_SPI_CLK (SPI_CLK_5MHZ)
> #endif
> #ifndef AT86RF2XX_PARAM_CS
> #define AT86RF2XX_PARAM_CS ARDUINO_PIN_10
> #endif
> #ifndef AT86RF2XX_PARAM_INT
> #define AT86RF2XX_PARAM_INT ARDUINO_PIN_7
> #endif
> #ifndef AT86RF2XX_PARAM_SLEEP
> #define AT86RF2XX_PARAM_SLEEP ARDUINO_PIN_8
> #endif
> #ifndef AT86RF2XX_PARAM_RESET
> #define AT86RF2XX_PARAM_RESET ARDUINO_PIN_9
> #endif

> #define AT86RF2XX_PARAMS_BOARD {.spi = AT86RF2XX_PARAM_SPI, \
> .spi_clk = AT86RF2XX_PARAM_SPI_CLK, \
> .cs_pin = AT86RF2XX_PARAM_CS, \
> .int_pin = AT86RF2XX_PARAM_INT, \
> .sleep_pin = AT86RF2XX_PARAM_SLEEP, \
> .reset_pin = AT86RF2XX_PARAM_RESET}

> Thanks

> Tobias

> --

> Tobias Guggemos, M.Sc

> Ludwig-Maximilians-Universität München (LMU)

> Institue of Computer Science

> Oettingenstr. 67, Room E003

> D-80538 München, Germany

> Munich Network Management Team (MNM)

> Tel: +49 89 2180-9209

> http://www.mnm-team.org/~guggemos

> ___
> devel mailing list
> devel@riot-os.org
> https://lists.riot-os.org/mailman/listinfo/devel
___
devel mailing list
devel@riot-os.org
https://lists.riot-os.org/mailman/listinfo/devel


[riot-devel] SPI on Arduino Zero for AT86RF233

2018-03-05 Thread Tobias Guggemos
Hey,

I’m trying to use the AT86RF233 with the Arduino M0 Pro (using the Arduino
Zero configuration).

Using the default SPI configuration (and pins) didn’t work, why I tried to
change the SPI to the Arduino_Pins 11,12,13 in order to have CS (PIN 10)
using the same SERCOM as the other SPI pins.

However, I didn’t get it to work and it seems that using SPI with SERCOM1
does not initialize.

Is there anything I did completely wrong or is it just a stupid idea to
connect the AT86RF233 with an Arduino M0?

 

SPI Config in arduino/periph_conf.h:

static const spi_conf_t spi_config[] = {
   {
.dev  = &SERCOM4->SPI,
.miso_pin = ARDUINO_PIN_ICSP_MISO,
.mosi_pin = ARUDINO_PIN_ICSP_MOSI,
.clk_pin  = ARUDINO_PIN_ICSP_CLK,
.miso_mux = GPIO_MUX_D,
.mosi_mux = GPIO_MUX_D,
.clk_mux  = GPIO_MUX_D,
.miso_pad = SPI_PAD_MISO_0,
.mosi_pad = SPI_PAD_MOSI_2_SCK_3
}
   ,
{
.dev  = &SERCOM1->SPI,
.miso_pin = ARDUINO_PIN_12,
.mosi_pin = ARDUINO_PIN_11,
.clk_pin  = ARDUINO_PIN_13,
.miso_mux = GPIO_MUX_D,
.mosi_mux = GPIO_MUX_D,
.clk_mux  = GPIO_MUX_D,
.miso_pad = SPI_PAD_MISO_3,
.mosi_pad = SPI_PAD_MOSI_0_SCK_1
}
};

 

at86rf2xx_params.h:

 

#ifndef AT86RF2XX_PARAM_SPI
#define AT86RF2XX_PARAM_SPI (SPI_DEV(1))
#endif
#ifndef AT86RF2XX_PARAM_SPI_CLK
#define AT86RF2XX_PARAM_SPI_CLK (SPI_CLK_5MHZ)
#endif
#ifndef AT86RF2XX_PARAM_CS
#define AT86RF2XX_PARAM_CS  ARDUINO_PIN_10
#endif
#ifndef AT86RF2XX_PARAM_INT
#define AT86RF2XX_PARAM_INT ARDUINO_PIN_7
#endif
#ifndef AT86RF2XX_PARAM_SLEEP
#define AT86RF2XX_PARAM_SLEEP   ARDUINO_PIN_8
#endif
#ifndef AT86RF2XX_PARAM_RESET
#define AT86RF2XX_PARAM_RESET   ARDUINO_PIN_9
#endif

#define AT86RF2XX_PARAMS_BOARD{.spi = AT86RF2XX_PARAM_SPI, \
 .spi_clk = AT86RF2XX_PARAM_SPI_CLK, \
 .cs_pin = AT86RF2XX_PARAM_CS, \
 .int_pin = AT86RF2XX_PARAM_INT, \
 .sleep_pin = AT86RF2XX_PARAM_SLEEP, \
 .reset_pin = AT86RF2XX_PARAM_RESET}

 

Thanks 

Tobias

 

-- 

Tobias Guggemos, M.Sc

 

Ludwig-Maximilians-Universität München (LMU)

Institue of Computer Science

Oettingenstr. 67, Room E003

D-80538 München, Germany

 

Munich Network Management Team (MNM) 

Tel: +49 89 2180-9209

  http://www.mnm-team.org/~guggemos 

 

___
devel mailing list
devel@riot-os.org
https://lists.riot-os.org/mailman/listinfo/devel