Roger Clark is a Melbourne-based technology consultant with 12 years' experience specializing in embedded systems and IoT development. He is an active open-source maintainer of STM32-focused projects—most notably Arduino_STM32 and STM32duino-bootloader—where he extended Arduino IDE support for STM32F1 boards, added DFU bootloader tooling, and implemented cross-platform build automation including Windows batch scripts and GD32 support. His contributions span low-level firmware (USB DFU descriptors, bootloader binaries) to Arduino API compatibility and peripheral libraries (Wire, SPI, ILI9341, WS2812B), effectively bridging hobbyist Arduino workflows with production-grade STM32 toolchains. As a freelance consultant he pairs hands-on embedded engineering with practical tooling improvements that make complex microcontroller platforms easier to adopt.
Bootloader for STM32F103 boards, for use with the Arduino_STM32 repo and the Arduino IDE
Role in this project:
Embedded Systems Engineer / IoT Developer
Contributions:74 commits, 19 PRs, 71 pushes in 4 years 10 months
Contributions summary:Roger focused on updating the STM32duino bootloader for the STM32F103 boards. They modified USB DFU descriptors to reflect the release status, and added a Windows batch file to build different board variants, then rebuilt binaries for a number of different boards. The code changes involved modifying USB string descriptions and the `config.h` file to support the new features and various STM32 board configurations and, where necessary, added files to support the GD32 platform.
Arduino STM32. Hardware files to support STM32 boards, on Arduino IDE 1.8.x including LeafLabs Maple and other generic STM32F103 boards
Role in this project:
Embedded Systems Engineer / IoT Developer
Contributions:2 releases, 648 commits, 253 PRs in 8 years
Contributions summary:Roger's contributions primarily focus on developing and enhancing the Arduino STM32 library, specifically for the STM32F1 family of microcontrollers. Their work involves adding and updating core library functions, such as implementing the `shiftIn` and `tone` functions, addressing issues with the Wire and SPI libraries, and correcting errors in the Arduino API compatibility. Furthermore, they are incorporating examples like those for the Adafruit ILI9341 and WS2812B libraries, aiming to expand the functionality and usability of the STM32F1 core for various projects. This also includes the addition of DFU bootloader and related tools support.
stm32f103makersstm32bluepillgeneric
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.