Embedded Software & Controls Engineer
Develops real-time control algorithms, embedded software, firmware, and hardware interfaces for autonomous mobile manipulator robots. The role requires 3+ years of robotic embedded-controls experience, proficiency in C, and hands-on knowledge of actuators, communication protocols, Linux drivers, and ROS2.
About the job
Responsibilities
Control System Architecture
- Contribute to the architecture and design of robust control systems for mobile manipulator robots.
- Develop and implement control algorithms for precise navigation, motion control, and teleoperation modes.
- Ensure real-time performance and reliability of control loops.
- Develop and tune low-latency, real-time control loops with strict timing guarantees.
Actuator & Motor Integration
- Develop software interfaces for CAN- and EtherCAT-based actuators and motor drives.
- Write and maintain drivers for motor controllers, servo motors, and stepper motors.
- Integrate and configure SBCs, including Jetson Orin, Jetson Nano, and Raspberry Pi, as embedded compute nodes.
Embedded Compute & Firmware
- Develop, optimize, and maintain low-level firmware and drivers for real-time performance and efficient hardware interaction.
- Develop and maintain Linux kernel drivers for low-level sensor and actuator interfacing.
- Implement and debug I2C, UART, SPI, CAN, and Ethernet communication protocols.
- Contribute to the embedded compute platform, including Linux modifications, driver development, and CPU/resource monitoring.
- Build and maintain monitoring and logging infrastructure for system health and rapid debugging.
- Support the over-the-air (OTA) update pipeline for software deployment.
Prototyping & Testing
- Prototype and test control algorithms in simulation and on physical hardware.
- Develop automated testing procedures.
- Profile, debug, and minimize latency, frequency, and jitter issues across real-time control loops and communication interfaces.
- Diagnose and resolve software, firmware, and controls-related issues.
Collaboration & Integration
- Work with the software team to integrate electromechanical systems on ROS2 and contribute to ROS2 driver development.
- Collaborate with hardware and mechanical teams to ensure seamless integration and system-wide performance.
Requirements
- Bachelor's or master's degree in Electrical Engineering, Robotics, Computer Science, or a related field.
- 3+ years of experience in embedded control systems for robotic or similar applications.
- Experience with SBCs such as Jetson Orin, Jetson Nano, or Raspberry Pi.
- Experience with I2C, UART, SPI, CAN, and Ethernet communication protocols.
- Experience with CAN- or EtherCAT-based actuators.
- Experience with motor drivers, servo motors, and stepper motors.
- Experience building low-latency, real-time systems.
- Ability to profile, debug, and minimize latency, jitter, and timing issues in real-time environments.
- Experience developing Linux kernel drivers for low-level sensor and actuator interfacing.
- Proficiency in embedded C; C++ is a plus.
- Understanding of RTOS and embedded Linux is desirable but not mandatory.
- Experience with ROS or ROS2 is highly desirable.
Nice-to-Haves
- Low-level kernel development experience.
- Experience with robotic arms, autonomous mobile robot (AMR) platforms, or mobile manipulators.
- Development experience on NVIDIA Jetson Series SBCs for robotics.
Skills
C, C++, Ros2, Embedded Linux, Rtos, Linux Kernel Drivers, Can, Ethercat, I2C, Uart, Spi, Ethernet, Jetson Orin, Raspberry Pi, Motor Control
Similar jobs
Embedded Engineering jobsDevelop and own low-level firmware, board bring-up, boot flows, and system enablement for microcontroller and infotainment SoC platforms. The role requires strong embedded C/C++ expertise, RTOS and platform experience, and hands-on hardware debugging.
Build and instrument robotic drywall-finishing test rigs, design controlled experiments, and automate robot trials and data collection with ROS 2 and Python. The role requires broad hands-on robotics experience, embedded and electromechanical integration skills, and strong experimental analysis and documentation abilities.