Emulacja i testy jednostkowe dla Arduino

W dzisiejszym świecie inżynierii oprogramowania trudno jest sobie wyobrazić projekty bez testów. Lepsze bądź gorsze biblioteki wspomagające pisanie i uruchamianie testów istnieją praktycznie dla każdego współcześnie używanego języka programowania.

IoT – moje przemyślenia

Internet Of Things (Internet Rzeczy) to od jakiegoś czasu bardzo popularne i często używane pojęcie. Nikt raczej nie będzie miał raczej problemu ze zdefiniowaniem w jednym zdaniu o co w nim chodzi. W założeniu, urządzenia wyposażone w różnego rodzaju czujniki, elementy wykonawcze i odpowiedni software, mają być podłączone do sieci. Za pośrednictwem sieci można tymi urządzeniami sterować i kolekcjonować zebrane przez nie dane. Urządzenia również same mogą wymieniać dane pomiędzy sobą.

SandwichBoxBot – komunikacja ze „światem zewnętrznym”

Temat ustawiania parametrów i eksploracji możliwości połączenia WiFi modułu nodemcu Amica, który wykorzystuję jako „mózg” dla robota, miałem zaplanowany na nieco później. Przy okazji implementacji OTA Update zdecydowałem się zająć od razu również tą kwestią jak i pozostałymi tematami związanymi z komunikacją ze „światem zewnętrznym”.

Multicast DNS i Bonjour/Zeroconf

Multicast DNS (mDNS) służy do tłumaczenia nazw sieciowych na adresy IP w małych sieciach pozbawionych lokalnego serwera nazw. Jest to tak zwana usługa zero-config – nie wymaga żadnej konfiguracji, aby korzystać z połączenia pomiędzy urządzeniami w sieci.

ESP8266 – jak korzystać z EEPROM-u

Większość mikrokontrolerów dostępnych obecnie w sprzedaży posiada jakąś formę pamięci nieulotnej. Zwykle program przechowywany jest w pamięci Flash,  natomiast do użytku programisty pozostaje pamięć EEPROM. Pamięć ta kasowana jest za pomocą prądu elektrycznego i ilość możliwych kasowań i zapisów jest ograniczona. Ilość odczytów nie ma wpływu na żywotność tej pamięci.