Embedded Software Engineer Touchscreen GUI & UI Firmware for Dual Source Logic Controller (C/C++)
Worldwide
*Job Title:** Embedded Software Engineer – Touchscreen GUI & UI Firmware for Dual-Source Logic Controller (C/C++) **Job Description:** We are seeking an expert Embedded Systems Firmware Developer to write a from-scratch, highly secure control script for a new, domestic power routing module. The system manages selective power switching between two distinct, high-voltage incoming sources (Source A and Source B) to feed a heavy residential storage application based on real-time user-defined profiles and sensor thresholds. The software must be written natively from a plain-English logical switching manifest derived from our utility patent portfolio. No legacy code will be provided. This is a strict "clean-room" development project. ### Core Project Requirements: 1. **Sensor Processing:** Write stable logic to process real-time analog data inputs from a dedicated 3.2mm analog temperature probe nested inside a fluid storage well. Imbue the logic with moving-average filtering to eliminate sensor noise and signal drift. 2. **Touchscreen UI & Engine Mapping (Phase 1 Focus):** The firmware must drive an SPI-connected small color TFT/LCD touchscreen panel to display real-time dual-source telemetry and status configurations: * **Global Dashboard Variables:** Display the current time and live sensor temperature readings using a high-visibility layout at the top of the interface canvas. * **Asset Status 1 (Source A Input):** Monitor and display real-time incoming voltage and calculate live power in Watts. Apply a dynamic, multi-state status indicator depending on whether the path is actively conducting or idling. * **Asset Status 2 (Source B Input):** Monitor and display real-time input line voltage and calculate live power draw in Watts. Apply a dynamic, multi-state status indicator depending on whether the path is actively conducting or idling. 3. **Core Local Process Control Logic:** Program a configurable, local "User Profile Map" adjusted via basic on-screen touchscreen arrows or inputs that dynamically shifts the system between output states based on temperature: * **Hysteresis Loop:** Implement a strict, local thermostat-style hysteresis loop (deadband width) tracking the core probe to manage load cycling. * **Manual Boost Mode Trigger:** Implement a manual touchscreen "Boost Mode" button. When tapped, the controller overrides standard baseline constraints, instantly engaging the backup power path to supply full power to the load on a hardcoded, user-selectable countdown window. 4. **Overcurrent & Thermal Safety Failsafes:** Implement a high-speed logic loop that constantly calculates load demands via an on-board current-sensing shunt chip. If the calculated load crosses our safety ceiling or the temperature probe exceeds a hard safety limit, the firmware must instantly drop all output control pins to enter an absolute state of rest. ### Required Deliverables & Security Controls: * Clean, well-commented, modular C/C++ source code targeting an **STMicroelectronics STM32** (or similar ARM Cortex-M) 32-bit microcontroller platform. * **Architecture for Future Smart Home Scaling:** Structure the microcontroller’s menu system and memory map using a standardized, register-based serial data framework (such as Modbus or a standard UART/SPI register command matrix). This ensures that an auxiliary wireless communication daughterboard can be seamlessly integrated directly onto the communication pins down the road without requiring a total rewrite of our core switching logic. * **Firmware Silicon Lock:** The developer must deliver the complete script setup configuration required to activate **Readout Protection (RDP) Level 2** on the target chip during the flashing assembly phase, permanently blinding the microcontroller's debugging ports to prevent downstream code extraction.
$1,500.00
Fixed-price- ExpertExperience Level
- Remote Job
- One-time projectProject Type
Skills and Expertise
Activity on this job
- Proposals:15 to 20
- Last viewed by client:1 hour ago
- Interviewing:0
- Invites sent:0
- Unanswered invites:0
About the client
- United StatesYuma7:40 PM
- $3.3K total spent5 hires, 4 active
- 32 hours
- Individual client
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by