Automotive ECU Tester Dashboard Development

Posted 3 hours ago

Worldwide

Summary

We are seeking a skilled freelancer to develop a dashboard for automotive ECU testing using Qt6/QML and Raspberry Pi. The project involves creating a user-friendly interface to monitor and control ECU parameters. The ideal candidate will have experience in Qt6/QML and Raspberry Pi, and be able to deliver a high-quality, efficient solution. The project is part-time and expected to last maximium 2 weeks Project Overview I am developing a simple prototype of an Automotive ECU Tester and require an experienced Embedded Software Developer to build a real-time graphical dashboard application for Raspberry Pi. The dashboard will be connected to an Arduino Mega Pro controller that acquires approx. 33 sensor data and ECU signals in real time. This is not a web application. The dashboard must be developed using Qt6/QML and optimized for embedded Linux environments running on Raspberry Pi Zero 2 W and newer Raspberry Pi platforms. The final system will be connected directly to an HDMI display and must boot automatically into the dashboard without requiring any user interaction. --- Mandatory Technical Requirements Software Stack: * Qt6 * QML * C/C++ * Raspberry Pi OS (Linux) * GPU-accelerated rendering using EGLFS * Hardware-accelerated animations * Serial communication via UART (between Arduino Mega and Rpi Zero 2W) The application must: * Run fullscreen * Run without a desktop environment * Launch automatically on boot * Output to any HDMI-capable display * Operate as a kiosk appliance No Electron, Chromium, Python GUI frameworks, web technologies, Flutter, or game engines. --- System Architecture Requirements The application must be designed using a modular component architecture. Examples: * Gauge.qml * VoltageMeter.qml * Indicator.qml * WaveformView.qml * InjectorAnimation.qml * CoilIndicator.qml Requirements: * Components must be reusable. * New gauges must be easily added. * New indicators must be easily added. * Layout changes should require minimal code modifications. * Future expansion should not require redesigning the UI. The goal is to allow future customization without advanced Qt programming knowledge. --- Communication Protocol Mandatory - The system must use a structured binary protocol. - Text-based communication is NOT acceptable. - Examples of unacceptable approaches: MAF=2.5,MAP=3.1,IAT=22,... Reasons: * Higher CPU usage * Slower parsing * Fragile communication * Poor scalability Required approach: * Packed binary data structure * Fixed packet format * CRC validation * Packet synchronization * Error detection The protocol must be fully documented. --- Arduino Mega Pro Firmware Firmware responsibilities: Analog Inputs * MAF * MAP * IAT * ECU Voltage * Sensor Voltage Digital Signals * 8 Ignition Coil Channels * 8 Injector Channels * Battery * Switch * Start Switch Button * ETC * Fan 1 * Fan 2 * Fuel Pump * IMMO+ * IMMO- * MRC+ * MRC- * IAC Stepper Signals Signal Processing * CKP acquisition * CMP1 acquisition * CMP2 acquisition Requirements * Timer interrupt architecture * Waveform buffering * Extensible code structure * Well-documented source code Preferred implementation: * Timer1 ISR * 10 kHz acquisition rate minimum However, I am open to suggestions that result in the betterment of the final prototype. --- Dashboard Features Analog Gauges Animated circular gauges: * MAF * MAP * IAT Voltage Displays Digital voltage meters: * ECU Voltage (0–25V) * Sensor Voltage (0–5V) Ignition Coils * 8 coil indicators * Positive state visualization * Negative state visualization * Firing animation Injectors * 8 injector indicators * Animated spray effect Digital Status Indicators * Battery * Switch * Start * ETC * Fan 1 * Fan 2 * Fuel Pump * IMMO+ * IMMO- * MRC+ * MRC- * IAC signals Waveform Oscilloscope: Display real-time scrolling waveforms for: * CKP * CMP1 * CMP2 The waveform display is a mandatory feature. Simple blinking LEDs are not acceptable. The oscilloscope should allow visualization of: * Missing tooth patterns * Cam synchronization * Timing relationships * Signal integrity And I am open to suggestions here too! --- ## Simulation Mode A complete simulation mode is required. The dashboard must operate without hardware connected. Simulation mode should generate realistic values for: * Gauges * Voltage readings * Coil activity * Injector activity * CKP waveform * CMP waveform * Status indicators Purpose: * Demonstrations * Development * Testing * Troubleshooting --- Debug Panel A hidden developer panel must be available. Activation: F12 key when the keyboard is connected to the Pi Functions: Analog Controls Manual sliders for: * MAF * MAP * IAT * ECU Voltage * Sensor Voltage Digital Controls Manual toggles for: * Coils * Injectors * Battery * Switch * Fuel Pump * IMMO * MRC * IAC * Fan outputs ### Waveform Controls Ability to: * Simulate RPM * Simulate CKP * Simulate CMP This feature will be heavily used during development and validation. --- ## Raspberry Pi Deployment Developer must provide: Auto-Boot Configuration * systemd service * automatic startup * watchdog-safe startup sequence Kiosk Configuration * no desktop interaction * automatic application launch * HDMI display support Performance Optimization Target hardware: * Raspberry Pi Zero 2 W The dashboard must maintain smooth operation and responsiveness on this platform. --- Deliverables Source Code Complete source code including: * Qt6/QML frontend * C++ backend * Arduino firmware Executables * Raspberry Pi ARM build * Ready-to-run deployment package Simulation Mode Fully operational simulation mode ### Debug Panel Integrated debug interface ### Deployment Scripts * Installation scripts * Startup scripts * systemd configuration ### Documentation Comprehensive documentation including: 1. System Setup Guide 2. Communication Protocol Specification 3. Dashboard Architecture Guide 4. Adding New Sensors and Components Guide 5. Simulation Mode Guide --- ## Required Experience Applicants should demonstrate experience with: * Qt6 * QML * Embedded Linux * Raspberry Pi * Real-time serial communications * Automotive or industrial systems * GPU-accelerated embedded UI development Please provide: * Relevant portfolio projects * GitHub links (if available) * Examples of Qt/QML dashboards * Examples of embedded Linux projects

  • $300.00

    Fixed-price
  • Intermediate
    Experience Level
  • Remote Job
  • Ongoing project
    Project Type
Skills and Expertise
Mandatory skills
Automated Testing
SQL
Nice-to-have skills
JavaScript
SAP
Activity on this job
  • Proposals:5 to 10
  • Interviewing:
    0
  • Invites sent:
    0
  • Unanswered invites:
    0
About the client
Member since Dec 25, 2025
  • United Arab Emirates
    Sharjah10:12 PM

Explore similar jobs on Upwork

Data Engineering
Python
3D Design
Industrial Design
3D Printing
3D Modeling
Product Design

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers 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

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo