Pokazywanie postów oznaczonych etykietą Programowanie. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Programowanie. Pokaż wszystkie posty

sobota, 22 listopada 2025

Tworzenie aplikacji - AI uczy Visual Studio dla systemu z VIRTUINO

 

Uparłem się by stworzyć aplikację na Windows odczytującą wartość temperatury zewnętrznej mierzonej przez jedne z moich modułów. 

To znaczy ja się uparłem a stworzyć ją ma mój niezastąpiony asystent AI.

Założenie jest takie,  że mam nie mieć (taka konstrukcja modalna z przeczeniem) bladego pojęcia i o zawartości kodu i o sposobie przekształcenia go w działający plik typu exe. Po prostu AI ma zrobić wszystko sam a jeśli już ja mam coś zrobić to muszę dostać instrukcję krok po kroku.

No to do dzieła.

czwartek, 20 listopada 2025

ESP32-C3 WebSocket + klient w przeglądarce – czyli jak podłączyć laptop/telefon do naszych dwóch płytek w 5 minut

 


Jednak kontynuacja. GROK bardziej mi się spodobał więc poprosiłem go o jeszcze jeden wpis czyli o klienta WebSocket w przeglądarce do podsłuchiwania co nadaje serwer czyli nasz ESP32 C3 w systemie domowej automatyki. Taka mała (naprawdę mała jeśli chodzi o wielkość kodu) aplikacja szpiegowska w HTMLu czyli co odbiera aplikacja VIRTUINO.

Oczywiście obrazek też jego i wygląda super  :) 

Dwukierunkowa komunikacja WebSocket między dwoma ESP32-C3 — prostsze niż myślisz!

W zasadzie powinienem przeprosić za ten mój dzisiejszy wpis. Dlaczego? Bo to nie mój wpis tylko wygenerowany przez AI. Nie ma w nim nic odkrywczego i nie zawiera żadnych osobistych doświadczeń i wniosków choć trzeba przyznać wszystko jest prawdziwe i zgrabnie podane. 

Ale to tylko taka próba co potrafi AI AD 2025. Za rok powtórzę dokładnie ten sam test by zobaczyć czy i jak rozwija się ta "inteligencja". Dla porównania dwa teksty wygenerowane przez chatgpt i GROKa.


poniedziałek, 17 listopada 2025

AI uczy się (szybko) programować Virtuino

 

Będąc (nie)młodym elektronikiem zawsze uważałem programowanie za upierdliwy acz niezbędny dodatek do swoich wspaniałych mikroprocesorowych projektów. Co gorsza aplikacje HMI obsługujące dostęp do tych systemów mikroprocesorowych to już zupełna domena programistów. Trwało to latami aż do momentu pojawienia się zdolnego młodego asystenta zakochanego wręcz w programowaniu ale który nie potrafi przylutować nawet prostego opornika. Czy uda się z sukcesem połączyć moje i jego zdolności? Dziś o tym jak AI może pomóc w tworzeniu projektów dla VIRTUINO

poniedziałek, 25 marca 2024

ESP32 i I2C czyli czym połączyć elektroniczne klocki LEGO


Budowa nowych, nawet bardzo złożonych funkcjonalnie, układów elektronicznych może być bardzo prosta i przyjemna.  Pod warunkiem, że twórczo wykorzystamy to co jest dostępne na rynku w formie gotowych modułów.  A jest tego sporo dzięki pracowitym Chińczykom i w śmiesznie niskich cenach. Sercem takiego projektu musi być oczywiście jakiś mikrokontroler ale z tym jest najmniejszy kłopot od czasu pojawienia się ARDUINO.  Wszystkie  te elementy trzeba jednak jakoś inteligentnie z sobą połączyć. Dziś o tym jak to zrobić bez zbytniego wysiłku...




niedziela, 14 stycznia 2024

Moduły w domowej sieci IoT - program


Najciekawszym niewątpliwie elementem zabaw w domową automatykę jest programowanie. Nieważne na jakim poziomie czy języku. Ważne jest to, że praktycznie bezboleśnie i bezkosztowo siedząc w wygodnym fotelu tworzy się wirtualne światy elektronicznej rzeczywistości. Światy w których nie rządzą pieniądze, prawo czy konwenanse ale twoje decyzje czy pragnienia. I co ważniejsze możesz te światy bez żalu i konsekwencji unicestwić by zrobić miejsce dla jeszcze lepszych i ciekawszych pomysłów. Niemalże jak grafiki z AI zdobiące nagłówki tych postów od jakiegoś czasu.

Dziś opis jednej z takich wirtualnych rzeczywistości.


piątek, 17 lutego 2023

VIRTUINO i sterowanie pompą cuw - runda 2


Temat, który stał się zaczynem mojego powrotu do elektroniki wraca jak bumerang. Tym razem "dzięki" BLYNKowi powoli odchodzącemu w siną dal. Jeden z ostatnich moich elementów domowej automatyki pracuje wciąż na BLYNKu w oparciu o lokalny serwer na RPi ale nie mam złudzeń, że i on za chwilę zgaśnie. Nie czekając na pożar czas kopać studnię. A jak studnia to i pompa. Szczególnie że temat jest prosty, łatwy i przyjemny.  A więc (nie zaczyna się zdań od więc) a więc zaczynamy.

poniedziałek, 13 lutego 2023

SMARTWARES sh4 send code Ok


Po sprawnym odczytaniu kodu z pilotów SMARTWARES  sh4 (czytaj poprzedni post) przyszła kolej by coś z tymi odczytanymi kodami zrobić. Najlepiej gdyby dało się je inteligentnie wysłać do  zakupionych wyłączników. Mam ich kilka więc warto się nieco potrudzić by je jakoś sensownie wykorzystać w mojej domowej sieci automatyki. Ale gotowego programu nadawczego nie znalazłem. Trzeba będzie porzeźbić coś samemu aby zastąpić firmowego pilota  moim ulubionym ESP8266. Dziś o rzeźbieniu transmitera dla wyłączników SMARTWARES i co z tego wynikło. 

Smartwares SH4 monitor OK

 

Dziś na tapecie zdalne wyłączniki SMARTWARES, Ciekawe urządzenia będące połączeniem wyłączników WiFi z wyłącznikami RF 443 MHz. Kupiłem kilka mając nadzieję, że uzupełnią mój stan posiadania w sterownikach radiowych. Na obecną chwilę są to głównie sterowniki ELRO z dodatkowymi pilotami uczącymi się stałych kodów. Niestety zapas tych wyłączników powoli się wyczerpuję i miałem nadzieję że zastąpią je urządzenia SMARTWARES. A tu niespodzianka - kod transmisji jest diametralnie różny od znanego 24 bajtowego kodu. I nic nie pasuje do niczego. Co gorsze informacji o kodowaniu tego systemu jest w sieci znikoma ilość i do tego nie działająca. Trzeba więc sobie poradzić samemu z tym problemem

niedziela, 5 lutego 2023

VIRTUINO i bezprzewodowy miernik energii

 


J23 znowu nadaje....
Temat bezprzewodowego miernika energii już przerabiałem parę lat temu. Układ i oprogramowanie świetnie działało nieprzerwanie przez ponad cztery lata. Działało aż do początku stycznia tego roku kiedy to chłopaki z BLYNKa pokazali mi figę i wyłączyli serwer. No to ja też pokazałem figę i zamieniłem BLYNKa na VIRTUINO i nadal mogę cieszyć się będę bezprzewodowym odczytem mojego licznika energii elektrycznej.


piątek, 3 lutego 2023

Wszystkomający szablon z VIRTUINO dla programów IoT

Nowy system nowe  porządki. Zmiana programu do obsługi domowego IoT wymusiła nieznaczne zmiany w kodzie moich projektów. Przy tej okazji postanowiłem  zrobić także generalne zimowe porządki i stworzyć coś co zawsze planowałem. Do mojej uniwersalnej płytki PCB, na bazie której tworzę kolejne projekty, chciałem dorobić uniwersalny szablon programu.  Będzie to taki kręgosłup wszystkich moich dokonań programistycznym. I o tym traktuje dzisiejszy wpis.

niedziela, 1 grudnia 2019

ESP-01 ESP-01S jak zmniejszyć pobór prądu

ESP8266 do oszczędnych w poborze prądu nie należy. Co prawda specyfikacja mówi o średnim prądzie 80 mA  ale doświadczenie wie swoje. Zasilacz musi dać co najmniej 300 mA by chiński wynalazek dał się uruchomić i pracował w miarę stabilnie. I oczywiście nie zapominamy o dobrych kondensatorach blokujących - minimum 100uF.  A co zrobić gdy chcemy go zasilać z akumulatorka? Pozostaje nam uśpić pacjenta na możliwie długi czas. O głębokim śnie (deep sleep) już pisałem dosyć dawno temu. Ale sposób ten mimo iż znakomicie ogranicza pobór prądu jest nieprzydatny dla ulubionego ESP-01/S. Nie ma jak wybudzić pacjenta z narkozy - chińskie chłopaki nie pomyśleli o opcji połączenia GPIO16 z RST. Trzeba więc poszukać innych rozwiązań by nie trzeba było budować kolejnej elektrowni - zwłaszcza atomowej - dla naszej domowej automatyki. A co dopiero gdy zasilamy nasz moduł z baterii lub akumulatorka.

poniedziałek, 11 lutego 2019

Instalacja ARDUINO IDE i BLYNK jak?

W ciągu trzech lat przygody z mikroprocesorowymi zabawkami nieodłącznym towarzyszem jest mi ARDUINO IDE. Ma w zasadzie same wady w porównaniu z innymi profesjonalnymi programami do kodowania mikrokontrolerów. I dwie nieodparte zalety: jest prosty i działa. Próby zamiany go na coś bardziej wysublimowanego zawsze kończyły się porażką. Zarówno VISUAL STUDIO z wtyczką VISUAL MICRO  jak i PLATFORIO są znakomite. Aż za bardzo. Ten ogrom możliwości i dostępnych funkcji jest imponujący ... tylko po co? Szczególnie gdy coś zacina się przy próbie wgrania kodu do układu. Prosty ARDUINO IDE w tej podstawowej funkcji nie zawiódł nigdy.  Jeśli więc celem samym w sobie nie jest programowanie a stworzenie kolejnego działającego mikroprocesorowego projektu zdecydowanie polecam ARDUINO IDE.

Dziś więc tekst jak ja sobie instaluję ARDUINO IDE z BLYNKiem w tle i obsługą mikroprocesorów ESP by nie sprawiał mi nieoczekiwanych niespodzianek. Opis dotyczy systemu WINDOWS.

niedziela, 10 czerwca 2018

ESP8266 i pomiar długości impusu z BLYNkiem w tle

LED w liczniku energii miga radośnie. I jak na razie bezproduktywnie. Pomysłowy sensor chińskiej produkcji bez problemu odbiera wszystkie błyski licznikowego LEDa ale D1 MINI nic z tym sensownego nie potrafi zrobić. Na razie. A temat wydaje się banalnie prosty i brzmi: jak w miarę dokładnie pomierzyć długość impulsu w zakresie 300ms - 36 s podawany na dowolny pin mikrokontrolera. Czemu w takim zakresie? Odpowiada to mierzonemu przez licznik energii zakresowi mocy. W tym przypadku jest to 10 kW - do 100 W dla 1000 impulsów LED/kWh. 10 kW to maksymalna moc wynikająca z zabezpieczeń. A 100 W to praktycznie  minimum poboru energii patrząc na ilość domowych urządzeń włączonych na stałe. Jak pomierzyć odcinek czasu pomiędzy dwoma błyśnięciami LEDa - to temat  dzisiejszego wpisu.

środa, 3 stycznia 2018

Operacje na tablicy struktur - czyli mini baza adresów urządzeń dla routera 433MHz

Struktury upakowane w tablice znakomicie rozwiązują wiele problemów w konfiguracji bezprzewodowego routera 433MHz. Najważniejszym ich plusem jest stworzenie, niejako przy okazji innych ułatwień , czegoś na kształt bazy danych. Przy kilku urządzeniach dołączonych do routera nie ma to większego znaczenia. Ale gdy takich układów będzie kilkanaście lub nawet kilkadziesiąt odszukiwanie właściwego kodu (adresu) wymaga już działań systemowych. To zadanie wprost idealne dla obiektów magazynowych jakim są w informatyce bazy danych.

wtorek, 26 grudnia 2017

środa, 20 grudnia 2017

ESP8266 > zapis do pamięci EEPROM kodów routera 433 MHz

Kody urządzeń nadawczych i odbiorczych musimy gdzieś zapisać. Można to zaszyć na stałe w programie naszego routera ale wtedy jakakolwiek zmiana urządzenia wymagać będzie zmiany programu. Lepszym rozwiązaniem jest zapamiętanie kodów w pamięci nieulotnej mikrokontrolera.  To właśnie pamięć EEPROM gwarantuje nam zachowanie wartości zmiennych programu po zaniku zasilania. Ulubiona ATmega328 ma jej 1024 bajty. W porównaniu z kartami SD to naprawdę niedużo.
Ale jeszcze 40 lat temu taka  pojemność byłaby kosmicznie wielka. Pamięci ferrytowe (na zdjęciu obok) odpowiednik współczesnych EEPROMów miały pojemności rzędu kilkudziesięciu BITÓW na płycie o wymiarach kartki A4. A dodatkowo zawartość pamięci kasowała się samoistnie podczas operacji odczytu danych!!! Nośnikiem informacji był namagnesowany rdzeń toroidalny wielkości obrączki. We współczesnych pamięciach jest nim ładunek elektrostatyczny zgromadzony na nanometrowej powierzchni. To obok tranzystora najbardziej spektakularny przykład miniaturyzacji jaka dokonała się w elektronice przez te lata. Skorzystajmy z tego przy budowie naszego routera.

wtorek, 12 grudnia 2017

Router433 - jak programować. Schematy blokowe, grafy i takie tam różne automaty

Programowanie to sztuka wyborów. A że programiści to umysł ścisły przeważnie wybierają melodię co ją już raz słyszeli. Co ma jednak zrobić (nie)młody adept programowania, który nie słyszał praktycznie żadnej melodii? Może napisać własną....
No to dziś trochę zabawy z układaniem nowych melodii .. pardon .... programów.

niedziela, 3 grudnia 2017

Flash firmware ESP-12 / D1 MINI - jak wgrać nowe oprogramowanie AT

Chińskie kości z ESP8266 docierają do nas z różnym oprogramowaniem - najczęściej mocno nieaktualnym. Np. zakupione w tym roku moduły D1 MINI mają wsad z 2013 r. co objawiło się przy okazji mocno nieprzyjemnych samoistnych  resetów (poprzedni post). W takich przypadkach znalezienie przyczyny resetów należy rozpocząć od aktualizacji firmware. Dawno temu (jakiś rok z kawałkiem 😁 ) opisywałem sposób zmiany oprogramowania dla ESP-01. D1 MINI to tak naprawdę ESP-12F z dodatkami i wymaga nieco innego podejścia. Uaktualniły się też narzędzia do programowania nie mówiąc oczywiście o "wsadzie".  A więc powtórka z rozrywki - czyli jak przywrócić oryginalne oprogramowanie do ESP-12F zamontowane w sympatycznym D1 MINI.

czwartek, 5 października 2017

finite state machine (automaty skończone) w praktyce Arduino - GrzyboSuszarka po nowemu

Pierwszy raz próbuję świadomie napisać program z zastosowaniem automatu skończonego. Świadomie - wcześniej oczywiście mówiłem prozą ale w stanie pewnej pomroczności. Nazwanie stanów programu a w zasadzie ich ponumerowanie samo poukładało strukturę wewnętrzną programu i dowiązało do nich potrzebne instrukcje i procedury. Najważniejszą jest decyzja jak stany będą w programie zmieniane określonymi sygnałami (wejściowymi) i w jaki sposób poszczególne stany zostaną obsłużone tzn jak wygenerują sterowania (sygnały wyjściowe).
Do tej pory w programach określony stan na wejściu modułu wywoływał program obsługi w następstwie czego generowane było sterowanie. W automacie skończonym sygnał powoduje jedynie zmianę stanu wewnętrznego programu. Obsługa zaś stanów wewnętrznych czyli generowanie sterowań wyjściowych dokonywana jest w całkiem innym miejscu. Może tego nie widać na pierwszy rzut oka ale to  naprawdę jest REWOLUCJA.