T3-STM32 Quick Start
Required Tools
| Tool | Source |
|---|---|
| STM32CubeIDE | ST website |
| ST-Link V2 or J-Link | Hardware debugger required |
Setup
- Download and install STM32CubeIDE from ST's website
- Clone the repository:bash
git clone https://github.com/Xinyuan-LilyGO/T3-STM32.git - Open the project in STM32CubeIDE: File → Open Projects from File System
- Connect the ST-Link to the 4-pin SWD header on the board
- Click Run (▶) to build and flash
Arduino
PlatformIO
The T3-STM32 can also be programmed via PlatformIO with the STM32 platform:
ini
[env:t3-stm32]
platform = ststm32
board = nucleo_wl55jc
framework = stm32cubeConnect the ST-Link debugger and run pio run --target upload.
Peripheral Examples
Sub-GHz LoRa (STM32WL built-in radio)
c
/* STM32CubeIDE — HAL Sub-GHz driver */
#include "subghz.h"
void LoRa_Init(void) {
/* Configure Sub-GHz peripheral */
MX_SUBGHZ_Init();
/* Set frequency — match your board variant */
HAL_SUBGHZ_WriteRegisters(&hsubghz, 0x088B,
(uint8_t[]){0x39, 0x30, 0x00}, 3); // 915 MHz
/* Set TX power to +14 dBm */
RadioSetTxConfig(MODEM_LORA, 14, 0, 0, 10, 1, 8, false,
true, 0, 0, false, 3000);
}
void LoRa_Send(uint8_t *data, uint8_t len) {
RadioSend(data, len);
}OLED Display (SSD1315 I2C)
c
/* Use SSD1306-compatible HAL I2C driver */
#include "ssd1306.h"
void Display_Init(void) {
ssd1306_Init();
ssd1306_Fill(Black);
ssd1306_SetCursor(0, 0);
ssd1306_WriteString("T3-STM32 Ready", Font_7x10, White);
ssd1306_UpdateScreen();
}Notes
- No Arduino support: The T3-STM32 uses the STM32WL55CCU6 — use STM32CubeIDE or PlatformIO with the STM32 toolchain, not Arduino ESP32
- Hardware debugger required: There is no native USB bootloader; an ST-Link V2 or J-Link connected to the SWD header is needed to flash firmware
- Built-in LoRa: The Sub-GHz radio is integrated into the STM32WL die — no external LoRa chip; configure via the STM32 HAL Sub-GHz radio driver
- Frequency variant: Three versions sold separately (433 / 868 / 915 MHz) — verify your variant before setting the radio frequency in firmware
- OLED: 0.96-inch SSD1315 (128×64, I2C)
FAQ
Q: STM32CubeIDE cannot detect the board? A: Verify the ST-Link is properly connected to the SWD pins (SWDIO, SWDCLK, GND, 3.3 V) and that ST-Link drivers are installed.
Q: Can I use Arduino IDE? A: No — the STM32WL55 is not supported by the Arduino ESP32 core. Use STM32CubeIDE or PlatformIO with the STM32 toolchain.
