Zegarek z budzikiem – Arduino

Witaj w drugiej części naszych poradników dla początkujących użytkowników Arduino. Masz już zbudowany pierwszy projekt zegara opartego z #SK01? Chcesz rozszerzyć go o dodatkowe funkcje? W tym artykule dowiesz się, jak dodać funkcjonalność budzika rozbudowując nieco poprzedni projekt. Zaczynajmy więc!

Lista potrzebnych części

Czytaj dalej

Pogodełko – IoT w pogodzie – część 2

Pogodełko, czyli nasza miniaturowa stacja pogodowa w kartonie spotkała się z ciepłym przyjęciem. Złożenie jej nie jest skomplikowane. Wystarczy podłączyć 10 przewodów i gotowe. Wstępnie zaprogramowana płytka NodeMCU V3 od razu pokazuje czy wszystko zostało złożone poprawnie.

W tym artykule omówimy kod źródłowy i pokażemy jak samodzielnie zmodyfikować Pogodełko. A do tej pory modyfikacji widzieliśmy sporo. Najprostszą z nich jest wymiana czujnika Bosch BMP280 na BME280. Uzyskujemy w ten sposób dodatkowy pomiar wilgotności. W następnych częściach przyjrzymy się innym modyfikacjom wartym wspomnienia – dodanie zewnętrznego czujnika temperatury DS18B20 czy czujnika pyłu zawieszonego SDS011.

Czytaj dalej

Alternatywne środowiska do Arduino – Atom

Z pewnością zdecydowana większość użytowników Arduino używa domyślnego środowiska dla tej platformy, czyli Arduino IDE. Jest ono moim zdaniem bardzo mało user-friendly. Prawie nie pozwala na żadne rozszerzenia, nie można zintegrować z nim żadnych popularnych narzędzi programistycznych, a w dodatku nie wspomaga programisty (np. podpowiadaniem parametrów funkcji lub ich nazw). Nie wszyscy jednak wiedzą, że równie dobrze mogą używać innych edytorów. W tej mini serii chciałbym przybliżyć Wam kilka alternatyw dla Arduino IDE, a na pierwszy ogień wezmę pod lupę edytor Atom z dodatkiem PlatformIO.

Czytaj dalej

Raspberry Pi – konfiguracja multicast DNS

Często instalując świeży system na karcie pamięci Raspberry musimy zaraz po uruchomieniu przeskanować siec w poszukiwaniu adresu IP, który został przydzielony do naszej malinki. Nie wszyscy o tym wiedzą, ale nowe raspbiany (nawet wersja lite) mają już zainstalowane specjalne daemony które sprawiają, że nie trzeba już sprawdzać adresów IP przydzielonych przez DHCP albo ustawiać stałego adresu. W dzisiejszym artykule pokażę Wam w jaki sposób skonfigurować swój komputer oraz malinkę do obsługi mDNS.

Czytaj dalej

NodeMCU – Minimalny obwód dla gołego ESP8266

Podczas tworzenia jakiegoś urządzenia najpierw robimy jego prototyp. Jeżeli wykorzystujemy do tego procesor ESP8266 to najprawdopodobniej najlepszym wyborem do prototypowania będzie płytka developerska NodeMCU. Po tym jak uznamy, że na breadboardzie wszystko śmiga jak w zegarku projektujemy płytkę drukowanę, lutujemy procesor ESP i… nie działa. W dzisiejszym artykule zaprezentuję jak należy w minimalnym stopniu zaprojektować układ wykorzystujący ESP8266, aby wszystko działało tak jak należy.

Czytaj dalej

Raspberry Pi – Pre konfiguracja systemu operacyjnego (headless install)

Pomimo tego, że Raspberry Pi potrafi obsłużyć mysz, klawiaturę oraz monitor to przy bardziej ukierunkowanych zastosowaniach raczej się ich nie używa. Instaluje się wtedy minimalny system, który udostępnia jakieś usługi, wykonuje jakieś zadania, a jego interakcja z użytkownikiem może odbywać się inaczej niż przez myszkę i klawaiturę (np. przez wyprowadzone na zewnątrz obudowy systemu wbudowanego przyciski, diody, wyświetlacze). W dzisiejszym artykule pokażę Wam jak zainstalować minimalny system operacyjny na malince wyposażonej w WiFi oraz skonfigurować połączenie sieciowe jeszcze przed pierwszym włożeniem karty SD do komputerka.

Czytaj dalej

Zapis i odczyt danych na karty MIFARE

Jeżeli posiadamy czytnik kart RC522 oraz kilka tagów do niego możemy poza samym odczytem ich unikalnych identyfikatorów chcieć przechowywać na nich dane. W końcu posiadają one 1kb nieulotnej pamięci, która tylko czeka aż coś do niej wpiszemy.

Czytaj dalej

Dlaczego Stringi w Arduino są złe?

Kiedy komunikujemy się z naszym Arduino za pomocą np. portu szeregowego przez konwerter USB-TTL, płytkę Arduino czy też moduł Bluetooth lub np. wyświetlamy jakieś dane na ekranie LCD to z reguły używamy do tego celu napisów pod postacią obiektów String. Czy jednak kiedyś zastanawialiście się jak ta klasa tak bardzo ułatwiająca życie działa pod spodem? Niestety w tym przypadku wygoda okupiona jest wydajnością. W tym artykule przedstawię Wam pokrótce jak działa klasa String, dlaczego to co robi jest złe dla wydajności i przedstawię kilka funkcji ze standardowej biblioteki C do operowania na odpowiednich tablicach charów (C stringach).

Czytaj dalej