ECU - aeonSolutions/AeonLabs-AI-Volvo-MKII-Open-Hardware GitHub Wiki

Main Page >> ECU

Change language
Last update 24-04-2024

Status: PCB Design>> PCB Fabrication >> Component Assembly >> Testing
It is now official revision 04-2024 is a "Volvo P2 compatible ECU".
  This revision has now the status of "design completed" meaning the hardware electronics is now ready for fabrication and testing. Upgrades include CANBUS FD and 2x LSU 4.2/.9 O2. Any comments and suggestions for improvements on the current release of the kiCad project files are greatly appreciated and welcome.

If you like this project and want faster development, prototyping, and testing consider a donation of an ECU to help speed up the design of new open hardware electronics, prototype, and testing. Send me an email to [email protected] to know more. Include in the subject "open electronics for Volvo p2". Thank you πŸ™.

revision 05-2024
  The main EMS microcontroller is the EspressIF Systems ESP32 S3 microcontroller a dual core Xtensa LX7 Core Processor running at 240MHz with 512Kb RAM and of 8MB PSRAM. This is the main MCU that is responsible for doing real-time engine management of a vehicle. This hardware revision will be made to fit engines with up to 12 cylinders with an option to run bi-fuel systems such as LPG, each with its own engine map configuration. This hardware revision is a totally new PCB design and a direct replacement of factory ECus found on P2 Volvos. Currently is being fabricated the first prototype boards for later testing.

View the PCB revision history, here.


Figure 1 - Factory Original ECU from Volvo

  In regards to safety against theft the electronics will include a cryptographic IC that will be used to match the car owner's VIN number and with all other open hardware electronic components installed on a vehicle. In practical terms, this means, that in the event of theft, to make a specific open hardware work on another vehicle, will require the replacement of the main microcontroller processing unit without the need of specialized tools and equipment. More information about safety and sensor data validation on this sci. research paper titled "Validation of Experimental Data Origins: A Swarm of DAQ devices able to Deliver Unique Experimental Data using Blockchain‐like Fingerprint ID to a Data Repository".   To run the electronics for CAN communications I'll be using EspressIF Systems ESP32 C3 microcontroller a single core Xtensa LX7 Core Processor running at 160MHz with 400Kb RAM and of 4MB PSRAM. This microcontroller is intended for communication with other hardware electronics in a vehicle and relays validated data to the main microcontroller. It has wireless radio capabilities that are disabled on the hardware electronics itself for safety concerns. Instead, the hardware includes a USB-C port for direct connectivity with the ECU.

Selection of Connectors and Enclosure

  I've selected an OEM aluminum enclosure for the open ECU being designed and prototyped. This OEM ECU housing is sold on AliExpress here and it has a plug connector with 90 pins that should be more than enough for this project. There's also an ECU housing in aluminum with 121 pins, one that uses a PCB Mount Header reference 1241434-1.


Figure 2 - Aluminum Enclosure for the ECU hardware electronics

Open Hardware Electronics

  The KiCad Project files for the 3rd revision (rev. 04-2024) of this open hardware electronics are now available! Find it in the folder "KiCad OPEN ECU". This revision has a status of "working but with hardware errors", not tested, and is intended only for those curious to see the design working happening. If you're not into KiCad, the circuit schematics in a PDF format can be found in the folder "OPEN ECU Circuit Schematic". The KiCad footprints for this open hardware electronics can be found here. To view the full hardware specifications of this open hardware go here.


Figure 3 - 3D rendering of the current state of PCB design for the OPEN ECU

Interactive view of the PCB Layout   Interactive view of the circuit schematic
Click to view the latest revision

Summary of the Hardware Capabilities

  • Engine management powered by the ESP32 S3 microcontroller with a clock speed of 240MHz

    • 512kb of RAM
    • 8MB of flash storage
  • Power management

  • Voltage sense in all relays

  • active power monitoring

  • CANBUS FD network communications are managed by a dedicated microcontroller, the ESP32 C3 with a clock speed of 160MHz

    • Data Fingerprint ID for communications (learn more here)
    • Independent microcontroller for communications
    • this REM allows adding more modules, it has a selectable CAN termination
    • Hardware electronics protected by a 256-bit security sim card "Car Key" (learn more here)
  • USB-C connection

    • for firmware updates/upgrades
    • installation of Custom firmware possible ( tunning)
    • for local troubleshooting of errors on the module and on the CANBUS network
  • Status RGB LED

  • Compatible with petrol engines up to 12 cylinders

  • Compatible with bi-fuel engines up to 6 cylinders

  • Fully compatible with sensors found on P2 petrol engines ( it can connect a total of 16 sensors)

  • Fully compatible with all valves and switches found on P2 petrol engines ( it can connect a total of 7 relays/switches)


This OPEN ECU is being partially sponsored by

Did you like any of my PCB KiCad Designs? Help and Support my open work by becoming a GitHub sponsor. Starts with only $1 / 1€.


Status: The OPEN ECU is now for fabrication.


Injection and Ignition

Engine Sensors

To see the full list of sensors installed on the engine bay, click here.

Engine Valves & Relays

To see the full list of Valves and solenoids installed on the engine bay, click here


Functionalities scheduled to be implemented

  • βœ“ 🟒 CAN FD BUS (is now implemented on revision 04-2024)

  • βŒ› NOx Sensing

Read all about my open hardware projects on ...

Compatibility



Other ECU related projects

View a list of other OPEN ECU hardware electronics prototyped by other makers.

⚠️ **GitHub.com Fallback** ⚠️