ESP32 - Development of a CAN Bus sniffer with screen output
Project Goal:
Create software for the device ESP32-S3-Touch-LCD-2.8C
https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-2.8C?spm=a2g0o.detail.1000023.1.7729mRxHmRxHuB&file=ESP32-S3-Touch-LCD-2.8C#Other_Status_Bar_Functions
that will read messages from the CAN bus
https://wiki.canformance.net/lib/exe/fetch.php?media=cantcu:cantcu_default_can_datastream_v1.pdf
and display data on the screen with an animated interface.
The device will be combined with a simple SN65HVD230 CAN transceiver
https://www.waveshare.com/wiki/SN65HVD230_CAN_Board
Functional Requirements:
Reading CAN messages by specific IDs (information about IDs will be provided):
- RPM
- Gear
- Oil Temperature
- Driving Mode (sport/comfort)
Screen Output with animation:
- Graphic screen displaying JPEG images
- Animated tachometer Partial update with a needle for RPM (target refresh rate - 10 FPS).
- Startup animation when the device is turned on
- Display of driving mode (background color change).
Screen Brightness Control:
Add a analog input for controlling screen brightness.
Implementation: Use an analog input (e.g., GPIO34). When the circuit is closed, the screen should automatically smoothly dim.
Programmatically: Configure ADC to read voltage and adjust brightness through PWM function or LVGL display settings.
Freelancer Skill Requirements:
- Experience with ESP32-S3 and LVGL library.
- Knowledge of CAN Bus and working with TWAI protocol on ESP32, using SN65HVD230 CAN transceiver.
- Ability to work with JPEG codecs and optimize graphic output.
- Knowledge of C/C++ and basics of working with FreeRTOS.
Estimated Completion Time:
| Work Stage | Estimated Time | Details |
|---|---|---|
| 1. Environment Setup | 1-2 hours | Installing ESP-IDF/Arduino IDE, connecting libraries, checking basic code. |
| 2. Implementing CAN Sniffer | 3-5 hours | Configuring SN65HVD230, reading and filtering CAN messages. |
| 3. Setting Up Interface and GUI | 4-6 hours | Developing data visualization: tachometer, indicators, temperature sensors. |
| 4. Data Binding and Output Logic | 3-4 hours | Binding CAN data to the interface, partial screen update (needle). |
| 5. Adding Animations | 2-3 hours | Startup animation when turned on, smooth transitions for indicators. |
| 6. Testing and Optimization | 2-4 hours | Checking stability, optimizing refresh rate to 10 FPS. |
to hire a graphic designer for rendering screens
to complete the project, a screen and transceiver will need to be purchased,
which must be sent to me upon project completion.
The cost for them is included in the total price.
Applications 1
-
Так бы и написали за сутки можно сделать ))
-
ви б спочатку хоч загуглили б max CAN швидкiсть на яку здатна SN65HVD230 разом з MCU, та й ще таким тормозним як esp 😉
-
MCP2515 + Arduino + Nextion
Будет работать. -
Current freelance projects in the category C & C++
Reverse engineering of console utilities for querying SSD controllers (Flash ID)1. Purpose of the work Extraction of the application programming interface (API) for interaction with SSD/NVMe controllers from the provided set of console utilities (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron, etc.). The result should be working code in C/C++… C & C++, Desktop Apps ∙ 6 days 11 hours back ∙ 6 proposals |
Development of a Minecraft Java Seed Map / Seed Viewer for the websiteDevelopment of Minecraft Java Seed Map / Seed Viewer for the websiteProject Description A browser-based tool Minecraft Java Seed Map / Seed Viewer needs to be developed, which will work on our website and allow the user to enter a seed from Minecraft Java Edition and view an… C & C++, HTML & CSS ∙ 6 days 18 hours back ∙ 15 proposals |
Comparative analysis of the effectiveness of custom software (v2.2-field) and reference software (Meshtastic v2.x)
22 USD
Comparative analysis of the effectiveness of custom software (v2.2-field) and reference software (Meshtastic v2.x) on the identical hardware platform (ESP32 + SX1268, 2W) based on the criteria of range, throughput, link stability, and power consumption. Conduct tests with… C & C++, C# ∙ 11 days 1 hour back ∙ 2 proposals |
