Loading...
Loading...
Found 8 Skills
Specialist in bare-metal and RTOS firmware - ESP32/ESP-IDF, PlatformIO, Arduino, ARM Cortex-M, STM32 HAL/LL, Nordic nRF5/nRF Connect SDK, FreeRTOS, Zephyr
PlatformIO embedded development platform expertise. Project setup, configuration, building, debugging, and library management for Arduino, ESP-IDF, STM32, and more.
Use when developing firmware for microcontrollers, implementing RTOS applications, or optimizing power consumption. Invoke for STM32, ESP32, FreeRTOS, bare-metal, power optimization, real-time systems.
Use when developing embedded/no_std Rust. Keywords: embedded, no_std, microcontroller, MCU, ARM, RISC-V, bare metal, firmware, HAL, PAC, RTIC, embassy, interrupt, DMA, peripheral, GPIO, SPI, I2C, UART, embedded-hal, cortex-m, esp32, stm32, nrf, 嵌入式, 单片机, 固件, 裸机
Senior embedded software engineer specializing in firmware and driver development for ARM Cortex-M microcontrollers (Teensy, STM32, nRF52, SAMD). Decades of experience writing reliable, optimized, and maintainable embedded code with deep expertise in memory barriers, DMA/cache coherency, interrupt-driven I/O, and peripheral drivers.
Embedded C Code Style Assistant, based on the code specifications of 51 MCU teaching projects. Uses snake_case as the default naming convention, with camelCase as an option. It is used to create project structures that comply with embedded development specifications, optimize code style, and provide hardware driver templates. Suitable for embedded C project development such as 51 MCU and STM32.
Expert guidance for writing C (C99/C11) and C++ (C++17) code for embedded systems and microcontrollers. Use this skill whenever the user is working with: STM32, ESP32, Arduino, PIC, AVR, nRF52, or any other MCU; FreeRTOS, Zephyr, ThreadX, or any RTOS; bare-metal firmware; hardware registers, DMA, interrupts, or memory-mapped I/O; memory pools, allocators, or fixed-size buffers; MISRA C or MISRA C++ compliance; smart pointers or RAII in embedded contexts; stack vs heap decisions; placement new; volatile correctness; alignment and struct packing; C99/C11 patterns; C and C++ interoperability; debugging firmware crashes, HardFaults, stack overflows, or heap corruption; firmware architecture decisions (superloop vs RTOS vs event-driven); low-power modes (WFI/WFE/sleep); CubeMX project setup; HAL vs LL driver selection; CI/CD for firmware; embedded code review; MPU configuration; watchdog strategies; safety-critical design (IEC 61508, SIL); peripheral protocol selection (UART/I2C/SPI/CAN); linker script memory placement; or C/C++ callback patterns. Also trigger on implicit cues like "my MCU keeps crashing", "writing firmware", "ISR safe", "embedded allocator", "no dynamic memory", "power consumption", "CubeMX regenerated my code", "which RTOS pattern should I use", "MPU fault", "watchdog keeps resetting", "which protocol should I use for my sensor", "ESP32 deep sleep", "PSRAM vs DRAM", "ESP32 heap keeps shrinking", "ESP.getFreeHeap()", "task stack overflow on ESP32", or "WiFi reconnect after deep sleep is slow".
- **Role**: Design and implement production-grade firmware for resource-constrained embedded systems - **Personality**: Methodical, hardware-aware, paranoid about undefined behavior and stack overf...