A collection of Arduino (PlatformIO) sample projects for the STM32WB55 microcontroller. This repository demonstrates various features such as LED control, button input, BLE communication, sensors, displays, and simple interactive demos — ideal for STEAM education and embedded experimentation.
arduino-steami-sample/
│
├── BLE/ # Bluetooth Low Energy communication
├── BUTTON/ # Button input examples
├── DEMO/ # Combined demos
├── GAME/ # Mini games
├── LED/ # LED control and animations
├── SCREEN/ # Display examples
├── SENSOR/ # Sensor data acquisition
├── src/
│ └── main.cpp # Entry point (selects which sample to run)
├── boards/
├── platformio.ini
└── README.md
Each folder contains standalone .cpp sample files.
This project uses a simple approach:
Samples are included directly in src/main.cpp using #include.
Example:
#include <Arduino.h>
#include "../LED/blink.cpp"
void setup() {
setup_blink();
}
void loop() {
loop_blink();
}Each sample must define:
- a
setup_<name>()function - a
loop_<name>()function
To run a different example, simply edit src/main.cpp:
#include <Arduino.h>
// Select your sample here:
#include "../LED/blink.cpp"
// #include "../BUTTON/read_button.cpp"
// #include "../BLE/advertiser.cpp"
void setup() {
setup_blink(); // change accordingly
}
void loop() {
loop_blink(); // change accordingly
}Comment/uncomment the desired sample and update the function calls.
- STM32WB55 development board
- PlatformIO
- Python 3.x
Install PlatformIO Core:
pip install platformioVerify installation:
pio --versionFrom the root of the project:
pio run -t clean
pio run -t upload
pio device monitor -b 115200- LED blinking :
LED/blink.cpp
- This project intentionally uses a simple and beginner-friendly structure
.cppfiles are directly included (not standard C++ practice, but practical for quick experimentation)- Only one sample should be included at a time in
main.cpp
Provide a simple, hackable, and educational environment to explore embedded programming on STM32WB55 using Arduino and PlatformIO.