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).
source/libs/Contiki_STM32_Library/spirit1-const.h
- Committer:
- Wolfgang Betz
- Date:
- 2016-11-22
- Revision:
- 34:edda6a7238ec
- Child:
- 67:93bec0baf1de
File content as of revision 34:edda6a7238ec:
/* * Copyright (c) 2012, STMicroelectronics. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the copyright holder nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * */ /*---------------------------------------------------------------------------*/ #ifndef __SPIRIT1_CONST_H__ #define __SPIRIT1_CONST_H__ /*---------------------------------------------------------------------------*/ /*---------------------------------------------------------------------------*/ /* The state bitfield and values for different states, as read from MC_STATE[1:0] registers, which are returned on any SPI read or write operation. */ #define SPIRIT1_STATE_STATEBITS (0x00FE) /*---------------------------------------------------------------------------*/ #define SPIRIT1_STATE_STANDBY ((0x0040)<<1) #define SPIRIT1_STATE_SLEEP ((0x0036)<<1) #define SPIRIT1_STATE_READY ((0x0003)<<1) #define SPIRIT1_STATE_LOCK ((0x000F)<<1) #define SPIRIT1_STATE_RX ((0x0033)<<1) #define SPIRIT1_STATE_TX ((0x005F)<<1) /* NB the below states were extracted from ST drivers, but are not specified in the datasheet */ #define SPIRIT1_STATE_PM_SETUP ((0x003D)<<1) #define SPIRIT1_STATE_XO_SETTLING ((0x0023)<<1) #define SPIRIT1_STATE_SYNTH_SETUP ((0x0053)<<1) #define SPIRIT1_STATE_PROTOCOL ((0x001F)<<1) #define SPIRIT1_STATE_SYNTH_CALIBRATION ((0x004F)<<1) /*---------------------------------------------------------------------------*/ /* strobe commands */ #define SPIRIT1_STROBE_TX 0x60 #define SPIRIT1_STROBE_RX 0x61 #define SPIRIT1_STROBE_READY 0x62 #define SPIRIT1_STROBE_STANDBY 0x63 #define SPIRIT1_STROBE_SLEEP 0x64 #define SPIRIT1_STROBE_SABORT 0x67 #define SPIRIT1_STROBE_SRES 0x70 #define SPIRIT1_STROBE_FRX 0x71 #define SPIRIT1_STROBE_FTX 0x72 /*---------------------------------------------------------------------------*/ /* Exported types ------------------------------------------------------------*/ /*------------------------------------------------------------------*/ #endif /* __SPIRIT1_CONST_H__ */ /*---------------------------------------------------------------------------*/