Employer description & source details
As an Embedded Software Engineer at Origin, you will write the firmware and embedded software that runs our robots, from microcontroller firmware on custom boards to drivers and real-time software on embedded Linux compute. In the coming months we are making major changes to the robot's electrical architecture (compute, safety and sensor subsystems). You will build the firmware for this new architecture together with our embedded hardware team. This is a high-impact role in a passionate, talent-dense team. Design, write and maintain real-time firmware in C/C++ for microcontrollers (for example STM32, ESP32, NXP), on bare metal and on an RTOS (FreeRTOS, Zephyr or similar). Bring up new custom boards with the embedded hardware team: peripherals, clocks, bootloaders and board support packages. Write and maintain peripheral drivers : GPIO, ADC, PWM, timers, DMA, I2C, SPI, UART and CAN. Write firmware for the safety, sensor and power subsystems , including watchdogs, fault handling and safe states. Write motor-control and actuator firmware (BLDC, FOC, closed-loop speed and force feedback) for robot tools. Develop software interfaces for CAN / CANopen / EtherCAT based actuators and motor drives. Write and maintain drivers for motor controllers , servo motors and stepper motors . Define deterministic communication protocols between microcontroller nodes and the main robot compute. Integrate and configure SBCs ( Jetson Orin , Jetson Nano , Raspberry Pi ) as embedded compute nodes in the robot platform. Develop and maintain Linux kernel drivers for sensors and actuators, and contribute to Linux modifications and CPU/resource monitoring. Build monitoring and logging infrastructure for system health and fast debugging. Support the Over-the-Air (OTA) update pipeline for firmware an
Extracted skills: c++