Miesiąc: kwiecień 2016

ESP8266 robi zdjęcia – ArduCam na ESP8266

ArduCam Mini jest dość niszowym produktem. Mała kamerka która możesz podłączyć do Arduino lub ESP8266. Dlaczego to jest możliwe? Otóż ArduCam to nie tylko układ optyczny i przetwornik. To również dedykowany układ CPLD, który zajmuje się obróbką obrazu. Dzięki temu nawet Arduino może przez SPI i I2C odebrać dane z kamery. Przetworzyć to już pewnie nie da rady, ale na kartę SD to może zapisać. ESP8266 ma nieco większe możliwości. Gdy wpadł nam w ręce testowy układ ArduCam Mini 2 MP postanowiłem  przetestować kamerę – podłączając ją do ESP8266 i udostępniając obraz przez WWW. Dla jasności – ESP ma nieco

Czytaj dalej...

Biblioteka Timers v.16.4.0 – Program sterowany czasem

Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. Badum-tsss. Właściwie tutaj mógłbym skończyć swoje filozofowanie i wrócić do pisania kolejnej mrugającej diody. Jednak do dzwonka jeszcze daleko i nie chcę zostawić cię szanowny czytelniku z niczym. Bo wkurza mnie, że na Arduino tak trudno napisać coś bardziej skomplikowanego. Wielu już próbowało. Wielu się nawet udało. Jednak ich kod wyglądał po tej operacji jak koń po westernie. Jedną z większych bolączek jest funkcja „delay(czas)”. Użyjesz takiej, to ci zablokuje cały program. Więc program może robić tylko jedną rzecz. Jak chcesz zrobić inną w tym samym

Czytaj dalej...

Co spowodowało reset Arduino?

Reset Arduino może być spowodowany przez różne źródła. Może to być sygnał reset,  zabezpieczenie przed zbyt niskim napięciem czy może działanie watchdoga. W zaawansowanych scenariuszach, gdy coś resetuje Arduino może to być ważna informacja. Na szczęście w procesorach Atmela jest rejestr przechowujący takie informacje.  Nazywa się on MCUSR. Jak odczytać przyczynę resetu z MCUSR?

Czytaj dalej...

tinyBrd – przerwania

tinyBrd to fajne narzędzie. Niecałe 5 µA w trybie uśpienia… to długie tygodnie pracy na zwykłej baterii CR2032. Nasz testowy tinyBrd w tej chwili działa już 9 tygodni, wysyłają co 30 sekund temperaturę z DS18B20. A co jeżeli nie potrzebujesz wysyłać danych regularnie? Mając taki uniwersalny, programowalny i zdalny czujnik jak tinyBrd można mieć pomysły na reakcję gdy tylko coś się zdarzy. Mowa o nieregularnych zdarzeniach, w przeciwieństwie do cyklicznej pracy jak np wysyłania pomiaru co 30 sekund. Pomyślmy, np wysłanie informacji o jakiś nieregularnych zdarzeniach, odczytanych np z czujnika zbliżeniowego (kontaktronu). Dotychczas wymagało to regularnego wybudzania i sprawdzania czy

Czytaj dalej...

ESP8266, IoT – praktyczny przykład cz. 4 – Arduino IDE

ESP8266 dotąd programowaliśmy z użyciem ESPtool i w języku LUA. Tym razem  zaprogramujemy ESP bezpośrednio z Arduino IDE. Jakie są różnice? nodeMcu był to firmware wgrany na flash ESP8266. Programy w języku LUA były wgrywane na wydzielony system plików, sam firmware pozostawał bez zmian. Różnica jest taka, że Arduino IDE będzie przygotowywać za każdym razem nowy firmware który będziemy wgrywać na ESP. Na nasze szczęście, Arduino IDE potrafi zrobić to same, więc narzędzie esptool nie będzie nam potrzebne. No, precyzyjnie mówiąc – nie musimy mieć specjalnie zainstalowanego esptool Arduino IDE za nas to zrobi. Arduino IDE i ESP8266 w jednym

Czytaj dalej...

ESP8266 – jak sprawdzić rozmiar pamięci flash?

Jak sprawdzić ile Twój moduł ESP8266 ma pamięci Flash? ESP8266 nie posiada zintegrowanej pamięci flash, pamięć jest podłączona na zewnętrznym układzie. Dlatego różne moduły mogą mieć różne ilości dostępnej pamięci. I teraz jedyną bezinwazyjną metodą jest jednak skorzystanie z programu esptool o którym mowa była w pierwszej części przewodnika IoT dla ESP8266. Dotyczy to oczywiście modułów jak ESP8266-07 czy -12, które mają sam ESP i układ flash osłonięte ochronną blaszką. ESP8266-01 ma na wierzchu układy, więc można oznaczenie scalaka po prostu odczytać. Zakładamy, że układ jest tak samo podłączony jak w tamtej części przewodnika i masz już esptool w systemie.

Czytaj dalej...