-
-
Notifications
You must be signed in to change notification settings - Fork 22
ECU
Main Page >> ECU
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.
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
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
-
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€.
To see the full list of sensors installed on the engine bay, click here.
To see the full list of Valves and solenoids installed on the engine bay, click here
-
✓ 🟢 CAN FD BUS (is now implemented on revision 04-2024)
- TJA1145 High-speed CAN transceiver for partial networking
- MCP2557FD/8FD CAN FD Transceiver with Silent Mode
- MCP25xxFD CAN FD Controller Module
View a list of other OPEN ECU hardware electronics prototyped by other makers.
🟢 Fully tested and working
A green circle means the hardware electronics or the programming code was fully tested, each of its functionalities and capabilities. And it can be installed in a vehicle. Keep in mind this does not mean errors won't happen. As in everything related to electronics and software, there are revisions and updates. This open hardware is no different.
💯 Fully tested & working, no improvements necessary - already being sold online
🆓 Fully Open hardware \ source code
🤪 There's better than this. don't use it
🔐 Fully closed hardware \ source code
⚡️ fully tested and working, however, it is a dangerous solution to deploy
🟡 Not tested. Working capability is unknown, it may work or not.
A yellow circle means the hardware electronics or the programming code was not fully tested, each of its functionalities and capabilities. This does not mean it not working, it simply means testing is needed before giving a green circle of approval.
🔴 Fully tested but not working.
A red circle means the hardware electronics or the programming code was fully tested, and found some kind of critical error or fault. This means the electronics or firmware code cannot be used in a vehicle.
⌛ Not started.
The hourglass means the hardware electronics or the programming hasn't started. Most likely because is waiting for the necessary test components needed for reverse engineering and also engineering of the new open solution.
🆕 New updated contents
The new icon means the link next to it was recently updated with new contents
💬 Comments on the Discussion page
The comments icon means there are useful and even new comments on the discussions page of the repository important for what you are seeing or reading.
Join the beta program to test and debug to provide feedback, ideas, modifications, suggestions, and improvements. And in return, write your own article blog, or post on social media about it. See participation conditions on the Wiki.
The Beta Participant Agreement is a legal document being executed between you and AeonLabs that outlines the conditions when participating in the Beta Program.
Bug reports and pull requests are welcome on any of AeonLabs repositories. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.
- Contributing
Please make sure tests pass before committing, and add new tests for new additions.
You can get in touch with me on my LinkedIn Profile:
You can also follow my GitHub Profile to stay updated about my latest projects:
The PCB design Files I provide here for anyone to use are free. If you like this Smart Device or use it, please consider buying me a cup of coffee, a slice of pizza or a book to help me study, eat and think new PCB design files.
Make a donation on PayPal and get a TAX refund*.
Did you like any of my PCB KiCad Designs? Help and Support my open work to all by becoming a GitHub sponsor.
Before proceeding to download any of AeonLabs software solutions for open-source development and/or PCB hardware electronics development make sure you are choosing the right license for your project. See AeonLabs Solutions for Open Hardware & Source Development for more information.