Prototype RF driver for STM Sub-1 GHz RF expansion board based on the SPSGRF-868 module for STM32 Nucleo.
Prototype RF Driver for STM Sub-1 GHz RF Expansion Boards based on the SPSGRF-868 and SPSGRF-915 Modules for STM32 Nucleo
Currently supported boards:
Note, in order to use expansion board X-NUCLEO-IDS01A4
in mbed you need to perform the following HW modifications on the board:
- Unmount resistor
R4
- Mount resistor
R7
Furthermore, on some Nucleo development boards (e.g. the NUCLEO_F429ZI), in order to be able to use Ethernet together with these Sub-1 GHz RF expansion boards, you need to compile this driver with macro SPIRIT1_SPI_MOSI=PB_5
defined, while the development board typically requires some HW modification as e.g. described here!
This driver can be used together with the 6LoWPAN stack (a.k.a. Nanostack).
Diff: source/SimpleSpirit1.cpp
- Revision:
- 67:93bec0baf1de
- Parent:
- 66:1e09d233280b
- Child:
- 68:247fd6e0ab66
--- a/source/SimpleSpirit1.cpp Wed Jul 05 14:02:16 2017 +0200 +++ b/source/SimpleSpirit1.cpp Thu Jul 06 11:13:31 2017 +0200 @@ -449,7 +449,7 @@ /* get interrupt source from radio */ irq_get_status(&x_irq_status); - /* The IRQ_TX_DATA_SENT notifies the packet received. Puts the SPIRIT1 in RX */ + /* The IRQ_TX_DATA_SENT notifies the packet has been sent. Puts the SPIRIT1 in RX */ if(x_irq_status.IRQ_TX_DATA_SENT) { /* betzw - NOTE: MUST be handled before `IRQ_RX_DATA_READY` for Nanostack integration! Logically, Nanostack only expects the "DONE" after "SUCCESS" (if it gets DONE before SUCCESS, it assumes you're not going to bother to send SUCCESS). @@ -496,7 +496,7 @@ } #endif // !RX_FIFO_THR_WA - /* Transmission error */ + /* TX FIFO underflow/overflow error */ if(x_irq_status.IRQ_TX_FIFO_ERROR) { #ifdef DEBUG_IRQ uint32_t *tmp = (uint32_t*)&x_irq_status;