Wyświetlanie statusu DPF na urządzeniu WIFI_kit_32 lub Wemos Lolin32 OLED.
Zgłoś błąd
·
Zaproponuj nową funkcjonalność
Read this in other language: English, Polski.
Spis treści
Urządznie łączy się z interfejsem OBD po Bluetooth i wyświetla informacje o stanie DPF.
Wyświetlane są następujące parametry:
- Zmierzona masa sadzy (Soot mass measured)
- Wyliczona masa sadzy (Soot mass calculated)
- Dystans od ostatniej regeneracji (Distance since last regeneration)
- Czas od ostatniej regeneracji (Time since last regeneration)
- Pozostałość popiołu olejowego (Oil Ash Residue)
- Temperatura wejściowa (Input temperature)
- Temperatura wyjściowa (Output temperature)
- Procentowa wartość zapełnienia filtra (Soot load (%))
Dane odświeżane są co 5 sekund. Po prawej stronie wyświetlacza zaznaczany jest prawidłowy V
lub nieprawidłowy X
odczyt danego parametru.
Na dole wyświetlany jest pasek postępu który odlicza czas do odpytania o kolejny parametr.
Każdy z odczytywanych parametrów można włączyć lub wyłączyć.
Urządzenie testowałem tylko z interfejsem iCar2 Vgate, ale podejrzewam, że może działać w oparciu o dowolny interfejs z ELM 327.
Bazowałem na projekcie https://github.com/yangosoft/dpf
Poniżej znajduje się lista z autami z którymi działa (zostało przetestowane) lub może działać (wymaga przetestowania) to urządzenie.
Marka | Model | Rocznik | Oznaczenie silnika | Zmierzona masa sadzy | Wyliczona masa sadzy | Dystans od ostatniej regeneracji | Czas od ostatniej regeneracji | Temperatura wejściowa | Temperatura wyjściowa | Pozostałość popiołu olejowego | Procentowa wartość zapełnienia filtra (%) | Link |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Audi | A4 B8 2.0 | 2009 | CAGA | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | - |
VW | Golf 7 1.6 | 2009 | CLHA | ✅ | ❔ | ❔ | ❔ | ❔ | ❔ | ✅ | ✅ | https://forums.tdiclub.com/index.php?threads/reading-soot-level-with-torque.464119/page-5 |
VW | T6 | 2016 | unknown | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | https://www.t6forum.com/threads/vw-t6-custom-pid-codes-for-dpf.33964/ |
✔️ - Przetestowane + działa
✅ - Nie testowane, ale powinno działać
❔ - Nie testowane
✖️ - Nie działa
Projekt miał być jak najmniej skomplikowany, dlatego szukałem płytki z modułem ESP32 z już wbudowanym wyświetlaczem.
Znalazłem dwa rozwiązania do swojego projektu:
- WIFI_kit_32
- WeMos Lolin32 OLED
Program jest przygotowany pod obie wersje.
Wyboru płytki dokonujemy w pliku platformio.ini
pozostawiając odkomentowaną jedną z opcji:
-DWIFI_KIT_32_BOARD
;-DWEMOS_BOARD
Opcjonalnie można dodać buzzer (z generatorem) który informuje o:
- momencie rozpoczęcia oraz zakończenia wypalania DPF
- przekroczeniu progu 80% zapełnienia filtra
Buzzer należy wpiąc pomiędzy pin GND oraz D12.
Firmware do urządzenia można wgrać za pomocą aplikacji Esp Download Tool
Najnowsza wersja firmware jest dostępna w Releases
W paczce z firmware powinniśmy mieć cztery pliki:
- bootloader_dio_40m.bin
- partitions.bin
- boot_app0.bin
- firmware.bin
Należy je wypakować do jakiegoś katalogu na dysku.
Po uruchomieniu aplikacji ESP32 DOWNLOAD TOOL
należy wskazać te pliki oraz uzupełnić pola analogicznie jak na zrzucie ekranu ekranu poniżej.
bootloader_dio_40m.bin - 0x1000
partitions.bin - 0x8000
boot_app0.bin - 0xe000
firmware.bin - 0x10000
Naciśnij przycisk START
aby rozpocząć wgrywanie firmware do urządzenia.
Urządzenie nie posiada jeszcze żadnej opcji konfiguracji.
W momencie uruchomienia urządzenia tworzony jest hotspot WiFi o następującej nazwie i haśle:
Nazwa sieci: WIFI_kit_32_dpf
Hasło to: wifikit32
Po połączeniu się i wejściu na adres 192.168.4.1 mamy możliwość podejrzenia komunikacji oraz usunięcia sparowanych urządzeń.
Przycisk 'Remove bonded devices' rozpoczyna procedurę usunięcia sparowanych urządzeń Bluetooth w module ESP32. Jest to przydatne w momencie występienia błędu podczas łączenia. A problem pojawia się, gdy do interfejsu OBD połączymy się z telefonu, a następnie ponownie chcemy połączyć się za pomocą urządzenia.
Pole Temperature threshold to activates the buzzer alarm.
(Próg temperatury po którym załączany jest alarm) jest aktywne dopiero po zaznaczeniu opcji odczytu Temperatury wejściowej Input temperature
.
Wartość domyślna to 420. Histereza wynosi 10°C. Zatem załączenie buzzera nastąpi po przekroczeniu 410°C, a jego wyłączenie gdy temperatura wejściowa spadnie poniżej 390°C.
Pole Maximum soot load (used to calculate the percentage)
(Maksymalna wartość sadzy - wyliczonej. (używana do wyliczania procentowej wartości zapełnienia filtra)) jest aktywne dopiero po zaznaczeniu opcji Soot load (%)
. Wartość domyślna to 80% zapełnienia. Histereza wynosi 1%.
Alarm z buzzera uruchamia się po przekroczeniu 79% zapełnienia filtra i jest odtwarzany tylko raz.
- Zwiększenie czcionki i wyświetlanie tylko jednego parametru na raz
- Możliwość konfiguracji urządzenia (podanie nazwy interfejsu OBD oraz kodu PIN)
- Zaktualizować zrzut ekranu z ESP32 DOWNLOAD TOOL (używam Linuxa, a ta aplikacja jest pod Windowsa)
- Alarm (buzzer) w momencie rozpoczęcia i zakończenia regeneracji DPF
- Automatyczne usuwanie sparowanych urządzeń w przypadku błędu połączenia
- Zapis konfiguracji do pamięci
- Zmiana orientacji wyświetlacza
Projekt jest udostępniony na licencji MIT.
Zerknij do pliku LICENSE aby poznać szczegóły.