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: SimpleSpirit1.h
- Revision:
- 24:03e351bfc9c9
- Parent:
- 23:4192649f35da
- Child:
- 25:2ec45788f28c
--- a/SimpleSpirit1.h Wed Nov 09 14:02:18 2016 +0100
+++ b/SimpleSpirit1.h Thu Nov 10 15:25:59 2016 +0100
@@ -85,7 +85,7 @@
}
void start_rx_timeout(void) {
- _rx_receiving_timeout.attach_us(Callback<void()>(this, &SimpleSpirit1::rx_timeout_handler), 500 * 1000); // 5ms
+ _rx_receiving_timeout.attach_us(Callback<void()>(this, &SimpleSpirit1::rx_timeout_handler), 500 * 1000); // 500ms
}
void stop_rx_timeout(void) {
@@ -136,8 +136,9 @@
void enter_shutdown() { _shut_down = 1; }
void exit_shutdown() {
+ wait_ms(2); // wait two milliseconds (to allow Spirit1 to shut down)
_shut_down = 0;
- wait_ms(2); // wait two milliseconds (to allow Spirit1 a proper boot-up sequence)
+ wait_ms(10); // wait ten milliseconds (to allow Spirit1 a proper boot-up sequence)
}
void cs_to_sclk_delay(void) {
X-NUCLEO-IDS01A4 Sub-1GHz RF Expansion Board