168 lines
3.0 KiB
Markdown
168 lines
3.0 KiB
Markdown
# PSG5 Diagnostic Bluetooth Tool – STM32H5
|
||
|
||
Embedded diagnostic and communication tool for PSG5 diesel injection control units, built on **STM32H5** with **Bluetooth connectivity**.
|
||
|
||
This project is part of the Herlic Components diagnostic and control platform, focused on reliable communication, testing, and service workflows for professional diesel ECU environments.
|
||
|
||
---
|
||
|
||
## Overview
|
||
|
||
This firmware implements a Bluetooth-enabled diagnostic interface designed to communicate with PSG5-based ECUs and associated workshop tools.
|
||
|
||
Main goals of the project:
|
||
|
||
- Reliable **Bluetooth communication interface**
|
||
- Fast and deterministic **embedded real-time firmware**
|
||
- Robust **diagnostic protocol handling**
|
||
- Safe **PSG5 communication and validation**
|
||
- Expandable architecture for future diagnostic services
|
||
- Secure migration path toward STM32H5 platform
|
||
|
||
The system is intended for professional workshop and development environments.
|
||
|
||
---
|
||
|
||
## Hardware Platform
|
||
|
||
- **MCU:** STM32H5 series
|
||
- **IDE:** STM32CubeIDE / STM32CubeMX
|
||
- **Communication:** Bluetooth UART bridge
|
||
- **Debug:** ST-Link / SWD
|
||
- **Power:** Automotive 12V environment with regulated rails
|
||
|
||
---
|
||
|
||
## Project Structure
|
||
|
||
```text
|
||
bpdt-repo/
|
||
├── Firmware/ # Application code
|
||
├── Hardware/ # KiCad project files
|
||
├── Docs/ # Documentation (Protocol, Instructions, Images...)
|
||
├── Production/ # Ready files
|
||
|
||
└── README.md
|
||
````
|
||
|
||
---
|
||
|
||
## Main Features
|
||
|
||
* Bluetooth communication stack
|
||
* Frame parser / packet builder
|
||
* Session control state machine
|
||
* Keep-alive supervision
|
||
* ECU identification
|
||
* EEPROM / memory read services
|
||
* Diagnostic command execution
|
||
* Timeout and retry handling
|
||
* Non-blocking ISR-friendly architecture
|
||
|
||
---
|
||
|
||
## Development Environment
|
||
|
||
Recommended tools:
|
||
|
||
* **STM32CubeIDE 2.x**
|
||
* **STM32CubeMX**
|
||
* **Git**
|
||
* **Gitea**
|
||
* **ST-Link Utility / STM32CubeProgrammer**
|
||
|
||
---
|
||
|
||
## Build
|
||
|
||
Open the project in STM32CubeIDE and build:
|
||
|
||
```bash
|
||
Project -> Build Project
|
||
```
|
||
|
||
Or from terminal if using headless tools:
|
||
|
||
```bash
|
||
make all
|
||
```
|
||
|
||
Generated binaries:
|
||
|
||
* `.elf`
|
||
* `.hex`
|
||
* `.bin`
|
||
|
||
---
|
||
|
||
## Flashing
|
||
|
||
Use STM32CubeProgrammer or CubeIDE:
|
||
|
||
```text
|
||
Run -> Debug
|
||
```
|
||
|
||
or
|
||
|
||
```text
|
||
Run -> Run As -> STM32 Cortex-M C/C++ Application
|
||
```
|
||
|
||
---
|
||
|
||
## Current Development Status
|
||
|
||
Current migration phase:
|
||
|
||
* [x] Repository initialized
|
||
* [x] STM32H5 platform selected
|
||
* [ ] CubeMX base project
|
||
* [ ] Bluetooth driver migration
|
||
* [ ] Protocol migration
|
||
* [ ] Diagnostic validation
|
||
* [ ] Real ECU testing
|
||
* [ ] Production release
|
||
|
||
---
|
||
|
||
## Version Control Workflow
|
||
|
||
Typical workflow:
|
||
|
||
```bash
|
||
git pull
|
||
git add .
|
||
git commit -m "Describe changes"
|
||
git push
|
||
```
|
||
|
||
---
|
||
|
||
## Notes
|
||
|
||
This repository may include:
|
||
|
||
* firmware sources
|
||
* CubeIDE project files
|
||
* diagnostic protocol implementation
|
||
* future KiCad hardware revisions
|
||
|
||
Build artifacts are excluded through `.gitignore`.
|
||
|
||
---
|
||
|
||
## Maintainer
|
||
|
||
**Herlic Components**
|
||
Professional diesel ECU diagnostics and control electronics
|
||
|
||
---
|
||
|
||
## License
|
||
|
||
Internal development / proprietary project
|
||
|
||
```
|
||
```
|