ESP32 Based CAN Board
Project link: Crystal / ESP32_CAN_V2.1 by BME Solar Boat Team at AISLER
1. About the BME Solar Boat Team
We are a group of students from the Technical University of Budapest (also known as Budapesti Műszaki és Gazdaságtudományi Egyetem). Our main goal is to develop a solar-powered electric boat. In addition to its development and implementation, our team participates in international competitions every year with the boat.
2. About the project: Crystal
Crystal is our new-generation boat project. Construction began in February of this year. Compared to the previous boat, we were able to reduce the weight by around 40%. A major mechanical improvement was the use of an external propulsion system instead of an internal one, which helps avoid the well-known leakage problems at the bearings. On the electrical side of the boat, we recycled as many components from the previous boat as possible. In addition, we rebuilt the internal communication system from the ground up. We also switched to CAN bus communication
3. About our CAN-Bus System
To keep the system as affordable as possible, we decided to use an ESP32-C6-WROOM-1, which already includes CAN support through its Hardware Abstraction Layer library. Of course, we still needed additional peripheral components to connect it to the bus.
The main supply voltage is 12 V, so we first had to step it down to 5 V and then to 3.3 V. The higher voltage level is needed for the CAN bus, while the lower voltage level is required by the MCU.
For simpler connectivity, we decided to use the widely known USB-C connector. Of course, it needed some additional peripheral components to work properly. At this point, the biggest challenge was soldering it by hand.
To make the whole system more plug-and-play, we decided to run the CAN bus via CAT6 cables and use RJ45 connectors.
After a long soldering session, we managed to complete some of the boards with all the components. Following the assembly, we ran many tests on the system, and as a result, we found that the current MCU is a good solution, but only as a temporary one. For more stable operation, especially in the long run, we would replace the MCU with an STM32.
So stay tuned — the next version is on the way!

