TEP Proteus libraries for Nucleo-F401RE, Blue Pill and Black Pill — feedback welcome
Hello everyone,
I’m posting on behalf of The Engineering Projects (TEP). We’ve developed five free Proteus board libraries for exploring circuit connections, peripheral communication and Arduino application logic. We’d appreciate feedback from STM32 users, particularly those teaching or experimenting with these boards.

The current collection includes:
- Nucleo-F401RE — a weather logger with BMP280, DS3231, simulated SD storage and Ethernet.
- Blue Pill F103C8 — a rotary-table example with an A4988 stepper driver, encoder, graphical LCD and W5500.
- Black Pill F411 — an attitude/heading display using MPU9250, QMC5883L, OLED and ESP-01S.
- Arduino GIGA R1 WiFi — two sketch execution instances with limited RPC byte-stream communication, demonstrated in a networked door station.
- Arduino UNO Q — Python and an Arduino sketch communicating through selected Bridge APIs, demonstrated in a greenhouse controller.

How they work
Sketches are compiled with our “TEP Boards for Proteus” Arduino add-on and executed using Proteus’s ATmega2560 simulation core, with our board models providing pin mappings and supported interfaces. The GIGA uses two execution instances; UNO Q additionally runs bundled Python 3.11.
Supported interfaces include GPIO, analogRead, analogWrite, interrupts, UART, Wire and SPI on the documented pins. Each package includes example source, compiled demonstrations, project files and installation instructions.
Important limitations
- These are not native STM32 processor emulators: CubeIDE binaries, HAL/LL, STM32 registers, DMA and SWD/ST-LINK debugging are unsupported.
- Each sketch instance has a 16 MHz AVR core, 8 KB RAM and a 16-bit int. ADC readings generally span 0–1023; STM32 timing and peripheral behaviour are not reproduced.
- Nucleo Morpho-only pins are visual. GIGA’s secondary sketch supports the RGB LED and RPC; RPC.bind/call are unsupported.
- UNO Q does not boot Debian or run App Lab Bricks. Networking remains inside the simulated TEP network.
The supplied demonstrations were tested in Proteus 8.5. Downloads are free; simulation models are supplied compiled, and Proteus is required separately. This is an independent TEP project without endorsement from STMicroelectronics, Arduino or Labcenter.
Would this approach be useful in your teaching or prototyping workflow? We’d welcome pin-mapping corrections, compatibility reports and suggestions for practical examples. If something fails, please share the board, Proteus version, sketch and error message so we can investigate.
