Projekt zdalnego odczytu licznika wody zrealizowany. Niestety nie tak jak chciałem. Chciałem normalne w arduino znaleźć odpowiednią bibliotekę, napisać kod programu do przesyłania danych i wpiąć do tego co mam. Sprawdziłem różne, najprostszą jest CC1101_ESP_Arduino.h bo można zobaczyć czy coś się łapie z eteru. Nie łapało, więc antenkę - sprężynkę zamieniłem na kawałek drutu odpowiedniej długości. Dałem dłuższy na pół fali (pół fali to podobno słabiej niż ćwiartka) a później przedłużyłem na pełną falę i pojawiły się z oczekiwanej długości przerwami sygnały: Z przykładu dla tej biblioteki wygląda to tak: “1 -> 0 after 7033062 0 -> 1 after 34108 1 -> 0 after 61 0 -> 1 after 966 0 -> 1 after 142 1 -> 0 after 92 0 -> 1 after 165 1 -> 0 after 64…..”, czyli jest dobrze. Ale nie jest to jeszcze “telegram”, który można online odczytać na
https://wmbusmeters.org/
Przebrnąłem przez forum
https://arturhome.pl gdzie można dowiedzieć się, że na OLX można za stówkę kupić gotowy esp32 z cc1101 w ładnej obudowie i zaprogramowany pod HA. No i ciągle ten Home Assistant … programowanie bez programowanie, wypełnianie tabelek, danych w okienkach itp. Nie lubię tego. Ale trudno, trzeba się zapoznać z kolejną nowoczesnością. Takim właśnie sposobem nabiera się przecież doświadczenia. W największym skrócie
zainstalowanie polega jedynie na dodaniu do yamla:
Kod: Zaznacz cały
external_components:
- source: github://SzczepanLeon/esphome-components@main
Dodałem, wcześniej zainstalowałem VirtualBoxa, wyklikałem HA, dorzuciłem ESPhome i już wiem co nadaje licznik:
Kod: Zaznacz cały
"last_month_total_m3":247.249, "remaining_battery_life_y":8.5, "total_m3":249.582
Po drodze oczywiście, trzeba było zapoznać się z “lokalnym slangiem użytkowników HA” (doker, encja, yaml, mój github, itp…), przyjrzeć się możliwościom różnych platform sprzętowych (Odroid-n2+, NUC), sprawdzić czy da się użyć ESPHome bez HA (podobno da się, ale tak samo zakręcone). W sumie gładko mi to poszło. Esp32 przylutowałem do dociętej płytki prototypowej takiej z paseczkami miedzi na 3 dziurki (da się na bazie płytki prototypowej projektować PCB w KiCad?), moduł CC1101 przylutowałem do 8 kolorowych drutów ze skrętki druciki wstawiłem w 8 dziurek i rozprowadziłem je do odpowiednich pinów esp32. Wyszło zgrabnie, na gotowo i z wygodną możliwością zmian. To dużo lepsze niż bawienie się w
przekładanie kabelków na płytce stykowej.
Widzę nie tylko swój licznik.