An example project for the Heltec Turtle LoRa board (STM32L4 and SX1276 chips). The projects is only supported for the Nucleo-L432KC board platform in the mbed online and offline compiler environment. Visit www.radioshuttle.de (choose Turtle board) for instructions. Note that most source files and libraries are open source, however some files especially the RadioShuttle core protocol is copyrighted work. Check header for details.

Dependencies:   mbed BufferedSerial SX1276GenericLib OLED_SSD1306 HELIOS_Si7021 NVProperty RadioShuttle-STM32L4 USBDeviceHT

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers PinMap.h Source File

PinMap.h

00001 /*
00002  * Copyright (c) 2019 Helmut Tschemernjak
00003  * 30826 Garbsen (Hannover) Germany
00004  * Licensed under the Apache License, Version 2.0);
00005  */
00006 
00007 #define RS_MAJOR    3
00008 #define RS_MINOR    3
00009 #define MAJOR_VERSION   1
00010 #define MINOR_VERSION   1
00011 
00012 #ifdef TARGET_STM32L432KC
00013  #define HELTECL432_REV1
00014  #define FEATURE_LORA
00015  #define FEATURE_RADIOTESTSAMPLE
00016  #define FEATURE_LORA_PING_PONG
00017  #define FEATURE_USBSERIAL
00018  #define FEATURE_NVPROPERTY
00019  #define FEATURE_NVPROPERTYEDITOR
00020  #define FEATURE_SI7021
00021  #define FEATURE_SSD1306
00022 #endif
00023 
00024 #ifdef HELTECL432_REV1
00025 #define USER_BUTTON     (PinName) 0x73 // PH_3 boot pin
00026 #define USER_BUTTON_RISE
00027 #define STATUS_LED      PB_1    // green LED
00028 #define LED2            PB_0    // red LED
00029 #define LED             STATUS_LED
00030 #define BATPOWER_EN     PA_8    // high indicates power source is battery, removable bridge
00031 #define BATPOWER_EXT    1
00032 
00033 #define SPI_LSM_MOSI    PA_7
00034 #define SPI_LSM_MISO    PA_6
00035 #define SPI_LSM_SCLK    PA_5
00036 #define CS_FLASH        NC
00037 
00038 #define EXT_POWER_SW    PA_3    // VEXT on/off
00039 #define EXT_POWER_ON    0
00040 #define EXT_POWER_OFF   1
00041 
00042 #define LORA_SPI_MOSI   SPI_LSM_MOSI
00043 #define LORA_SPI_MISO   SPI_LSM_MISO
00044 #define LORA_SPI_SCLK   SPI_LSM_SCLK
00045 #define LORA_CS         PA_4
00046 #define LORA_RESET      PA_1
00047 #define LORA_DIO0       PA_0    // used for Rx, Tx Interrupt
00048 #define LORA_DIO1       NC      // PB_6Fifo Level/Full, RxTimeout/Cad Detection Interrupt, unused in RadioShuttle
00049 #define LORA_DIO2       NC      // FhssChangeChannel when FreqHop is on, unused in RadioShuttle
00050 #define LORA_DIO3       NC      // optionally Cad Detection in RS_Node_Offline/Checking mode
00051 #define LORA_DIO4       NC      // FSK mode preamble detected, unused in RadioShuttle
00052 #define LORA_DIO5       NC      // FSK mode ready / ClockOut, unused in RadioShuttle
00053 #define LORA_ANT_PWR    EXT_POWER_SW // the analog switch is getting turned off go save energy
00054 
00055 /* this following are available pins for custom use */
00056 #define P_SWLCK     PA_14   // available only when no debugger is being used.
00057 #define P_SWDIO     PA_13   // available only when no debugger is being used
00058 #define P_SWO       PB_3    // available only when no SWO debugging output is being used
00059 #define P_PA_2_TX   PA_2    // available only when no debug serial console is being used
00060 #define P_PA_15_RX  PA_15   // available only when no debug serial console is being used
00061 #define P_PA_9_SCL  PA_9    // SCL includes 10k removable hardware pullup
00062 #define P_PA_10_SDA PA_10   // SCL includes 10k removable hardware pullup
00063 #define P_PB_4      PB_4
00064 #define P_PB_5      PB_5
00065 #define P_PB_6      PB_6
00066 #define P_PB_7      PB_7
00067 
00068 #define SI7021_SDA  P_PA_10_SDA
00069 #define SI7021_SCL  P_PA_9_SCL
00070 #define DISPLAY_ADDRESS 0x3c
00071 #define DISPLAY_SDA P_PA_10_SDA
00072 #define DISPLAY_SCL P_PA_9_SCL
00073 
00074 #define WatchDogUpdate() void()
00075 
00076 #else
00077  #error "unknown board"
00078 #endif