e-puck2 robot

e-puck2 Programmer

Update the firmware of the robot's three processors from the browser

  1. Connect the robot to the computer with the USB cable and switch it on.
  2. Use the latest official firmware, or choose your own file (.elf).
  3. Click Program and select the GDB Server port, the first of the two e-puck2 ports (lower number, e.g. ttyACM0 / COM3).
Options
How it works

The STM32F413 on the robot runs a Black Magic Probe based GDB server. This page talks the GDB remote protocol directly with it.

Reference: e-puck2 wiki · main processor firmware update

Log

        
Troubleshooting serial ports (STM32F407 and ESP32 tabs)

The robot exposes two serial ports with USB ID 1d50:6018: the GDB Server (used for the STM32F407) and the Serial Monitor (used for the ESP32). Close any other program using them (terminal, IDE, gdb) before programming.

Linux: your user must be in the dialout group (sudo usermod -aG dialout $USER, then log in again). If ModemManager is installed, keep it away from the robot with a udev rule:

ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="6018", ENV{ID_MM_DEVICE_IGNORE}="1"

Windows: no driver to install: Windows 10/11 shows the two ports under Ports (COM & LPT) with its own serial driver (usbser), which Web Serial needs. Do not use Zadig on these ports (Zadig and WinUSB are only for the programmer in DFU mode, STM32 BOOTLOADER). If a port was switched to WinUSB, it disappears from the port list and from Ports (COM & LPT); to restore it, in Device Manager find it under Universal Serial Bus devices, right-click → Uninstall device, tick Attempt to remove the driver for this device, then unplug and plug the robot again.