Microcontroller Firmware
Development experience on microcontrollers: STM32, GD32, Renesas H8 and M16C, ATMEL AVR, Microchip PIC, Rabbit, Cypress EZ-USB, Espressif ESP32
C or C++ programming languages
Implementations on bare metal or with RTOS (FreeRTOS or uC/OS-II)
Expertise in the application of ethernet stack (uIP, lwIP) and USB devices/hosts
Experience on filesystems of Secure Digital memory card or SPI flash memories
Ability to develop on platforms with an LCD user interface, alphanumerical, monochromatic graphics, TFT and touch screens
Linux Embedded development
Development experience on x86 and ARM processors: Freescale iMX233, iMX51, iMX6 , TI Sitara, STM32MP1
Bootloader customization (UBoot), kernel with and without device tree support, specific drivers development
Creation and adaptation of Linux distribution (root file system)
Development of background services (daemons) or applications in C, C ++, Java
Creation of user interfaces on devices with LCD display and Touchscreen.
Application Software Development
Development of customized programs aimed at automatic programming, testing and functional testing of embedded systems
Support Linux and Windows platforms on PC x86 or Linux ARM stand-alone systems
Consulting and implementation of firmware on any boards dedicated to specific hardware tests.
Positioner with PID control
Library for positioning control on DC engines with encoder
Easily configurable for different variants: brands and models (powers and associated reducers)
Adaptable to any microcontroller, possibility of managing multiple axes with a single CPU.
Bootloader
Bootloader management with local storage device (Secure Digital or SPI flash memory)
Experience on different microcontrollers with the most common interfaces
I2C with multiple CPU management and auto-addressing
Point-to-point Serial RS232
RS485 with multimaster CPU management and self-addressing
CAN bus with multiple devices
USB via flash drive / pendrive.