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

Revision:
34:edda6a7238ec
Parent:
33:c226804be492
Child:
35:f3f444c379d0
--- a/libs/spirit1/SPIRIT1_Library/Inc/MCU_Interface.h	Mon Nov 21 13:26:17 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-/**
- * @file    MCU_Interface.h
- * @author  VMA division - AMS
- * @version V2.0.2
- * @date    Febrary 7, 2015
- * @brief   Header file for low level SPIRIT SPI driver.
- * @details
- *
- * This header file constitutes an interface to the SPI driver used to
- * communicate with Spirit.
- * It exports some function prototypes to write/read registers and FIFOs
- * and to send command strobes.
- * Since the Spirit libraries are totally platform independent, the implementation
- * of these functions are not provided here. The user have to implement these functions
- * taking care to keep the exported prototypes.
- *
- * These functions are:
- *
- * <ul>
- * <li>SpiritSpiInit</i>
- * <li>SpiritSpiWriteRegisters</i>
- * <li>SpiritSpiReadRegisters</i>
- * <li>SpiritSpiCommandStrobes</i>
- * <li>SpiritSpiWriteLinearFifo</i>
- * <li>SpiritSpiReadLinearFifo</i>
- * </ul>
- *
- * @note An example of SPI driver implementation is available in the <i>Sdk_Eval</i> library.
- *
- * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
- * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
- * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
- * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
- * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
- * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
- *
- * THIS SOURCE CODE IS PROTECTED BY A LICENSE.
- * FOR MORE INFORMATION PLEASE CAREFULLY READ THE LICENSE AGREEMENT FILE LOCATED
- * IN THE ROOT DIRECTORY OF THIS FIRMWARE PACKAGE.
- *
- * <h2><center>&copy; COPYRIGHT 2015 STMicroelectronics</center></h2>
- */
-
-
-/* Define to prevent recursive inclusion -------------------------------------*/
-#ifndef __MCU_INTERFACE_H
-#define __MCU_INTERFACE_H
-
-
-/* Includes ------------------------------------------------------------------*/
-#include "SPIRIT_Types.h"
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/** @addtogroup SPIRIT_Libraries
- * @{
- */
-
-
-/** @defgroup SPIRIT_SPI_Driver         SPI Driver
- * @brief Header file for low level SPIRIT SPI driver.
- * @details See the file <i>@ref MCU_Interface.h</i> for more details.
- * @{
- */
-
-
-
-/** @defgroup SPI_Exported_Types        SPI Exported Types
- * @{
- */
-
-/**
- * @}
- */
-
-
-
-/** @defgroup SPI_Exported_Constants    SPI Exported Constants
- * @{
- */
-
-/**
- * @}
- */
-
-
-
-/** @defgroup SPI_Exported_Macros       SPI Exported Macros
- * @{
- */
-
-/**
- * @}
- */
-
-
-
-/** @defgroup SPI_Exported_Functions    SPI Exported Functions
- * @{
- */
-
-typedef SpiritStatus StatusBytes;
-
-void SdkEvalSpiInit(void);
-StatusBytes SdkEvalSpiWriteRegisters(uint8_t cRegAddress, uint8_t cNbBytes, uint8_t* pcBuffer);
-StatusBytes SdkEvalSpiReadRegisters(uint8_t cRegAddress, uint8_t cNbBytes, uint8_t* pcBuffer);
-StatusBytes SdkEvalSpiCommandStrobes(uint8_t cCommandCode);
-StatusBytes SdkEvalSpiWriteFifo(uint8_t cNbBytes, uint8_t* pcBuffer);
-StatusBytes SdkEvalSpiReadFifo(uint8_t cNbBytes, uint8_t* pcBuffer);
-
-void SdkEvalEnterShutdown(void);
-void SdkEvalExitShutdown(void);
-SpiritFlagStatus SdkEvalCheckShutdown(void);
-
-#define SpiritEnterShutdown                                  SdkEvalEnterShutdown
-#define SpiritExitShutdown                                   SdkEvalExitShutdown
-#define SpiritCheckShutdown                                  (SpiritFlagStatus)SdkEvalCheckShutdown
-
-
-#define SpiritSpiInit                                                  SdkEvalSpiInit
-#define SpiritSpiWriteRegisters(cRegAddress, cNbBytes, pcBuffer)       SdkEvalSpiWriteRegisters(cRegAddress, cNbBytes, pcBuffer)
-#define SpiritSpiReadRegisters(cRegAddress, cNbBytes, pcBuffer)        SdkEvalSpiReadRegisters(cRegAddress, cNbBytes, pcBuffer)
-#define SpiritSpiCommandStrobes(cCommandCode)                          SdkEvalSpiCommandStrobes(cCommandCode)
-#define SpiritSpiWriteLinearFifo(cNbBytes, pcBuffer)                         SdkEvalSpiWriteFifo(cNbBytes, pcBuffer)
-#define SpiritSpiReadLinearFifo(cNbBytes, pcBuffer)                          SdkEvalSpiReadFifo(cNbBytes, pcBuffer)
-
-/**
- * @}
- */
-
-/**
- * @}
- */
-
-
-/**
- * @}
- */
-
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
-
-/******************* (C) COPYRIGHT 2015 STMicroelectronics *****END OF FILE****/