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).

Revisions of source/SimpleSpirit1.cpp

Revision Date Message Actions
71:4a7772415d9c 2017-07-18 Optimize `BUSYWAIT_UNTIL()` File  Diff  Annotate
70:19b5f9b9ba80 2017-07-13 Handle overflow situations in busy wait File  Diff  Annotate
69:22e9b407effa 2017-07-10 Better handling of race condition around `_spirit_tx_started` File  Diff  Annotate
68:247fd6e0ab66 2017-07-06 Better handling of persisten CCA timeouts File  Diff  Annotate
67:93bec0baf1de 2017-07-06 Clarify some comments File  Diff  Annotate
66:1e09d233280b 2017-07-05 Raise number of CSMA backoffs to 5 (as recommended by ARM) File  Diff  Annotate
65:a16f0064110a 2017-07-03 Delay setting of `expecting_ack` to when TX was successful File  Diff  Annotate
64:28ef790e4ef7 2017-07-03 Implement indications received by Kevin Bracey File  Diff  Annotate
60:956afcef7ef7 2017-05-31 Set SPI speed to 10MHz (i.e. max speed allowed for Spirit1) File  Diff  Annotate
57:8cc871dc6cac 2017-04-28 `UnlockedSPI` is used to be able to call SPI functions from IRQ conetxt File  Diff  Annotate
49:d017830c0c67 2017-02-06 Do not read IRQ status twice File  Diff  Annotate
48:373e1b7e424f 2017-01-12 Insert 'MAX_PACKET_LEN' checks when receiving File  Diff  Annotate
47:3a30b960a8c2 2016-12-22 Optimize IRQ handler File  Diff  Annotate
46:d104e58c5caf 2016-12-19 Remove 'RX_DONE' handling in 'IRQ_RX_FIFO_ALMOST_FULL' File  Diff  Annotate
45:2d01cc9bc761 2016-12-19 Return to avoidance of FIFO overflows File  Diff  Annotate
44:aedd63cb0ce3 2016-12-16 Set 'MAX_PACKET_LEN' to 128 File  Diff  Annotate
43:a512f909514a 2016-12-16 Backup commit! File  Diff  Annotate
42:92a60a905ee7 2016-12-02 Double check for IRQ sources File  Diff  Annotate
40:343254875d89 2016-11-29 Handle RX errors immediately & use channel 1 File  Diff  Annotate
39:75481c4c6655 2016-11-24 Treat RX/TX race condition in favor of TX File  Diff  Annotate
37:bc043030b55a 2016-11-22 Adapt timeout periods File  Diff  Annotate
34:edda6a7238ec 2016-11-22 Perform re-naming File  Diff  Annotate