Responsibilities
- Write C/C++ firmware for microcontrollers including ARM Cortex-M/A and ESP32 platforms
- Develop control logic for relay and solid-state relay switching with sequencing and inrush current management
- Integrate energy measurement integrated circuits such as ADE, ATM90E, and MCP39F5 series
- Implement algorithms for measuring and calibrating active, apparent, and reactive power
- Design non-volatile storage solutions for device configuration including network and outlet settings
- Develop support for SNMP versions 1, 2c, and 3, along with Modbus TCP and BACnet/IP protocols
- Implement MQTT messaging and secure HTTPS/REST API interfaces
- Ensure secure operation through TLS, certificate handling, authentication, and role-based access control
- Maintain robustness in network services designed for continuous operation
- Develop protection mechanisms for overcurrent, overvoltage, and undervoltage conditions
- Support monitoring of surge protection components and logging of related events
- Collaborate on safety validation per UL and IEC standards under defined test conditions
- Interface with environmental sensors for temperature, humidity, door contact, water leak, and airflow via RS232
- Implement communication over I²C, 1-Wire, RS-485, and RJ45-based sensor networks
- Enable automatic detection and enumeration of connected sensors for plug-and-play functionality
- Record system events, power usage history, and outlet cycle statistics
- Support secure remote firmware updates with rollback capability using dual-image storage
- Design both task-level and hardware-level watchdog systems for system recovery
- Collaborate with hardware teams on metrology circuits, relay drivers, surge protection, and thermal performance
Support validation, compliance (UL1449, IEC61000), and DVT testing
Participate in product validation and compliance testing, including adherence to UL1449 and IEC61000 standards, and support Design Verification Testing processes