Raio 15 - dotykowy ekran o rozdzielczości FullHD dla Raspberry Pi 4B
Zazwyczaj, gdy mówimy o ekranach dotykowych dla Raspberry pi, na myśl przychodzą nam te małe 3,5" wpinane w GPIO albo większe 7", takie jak oficjalny ekran dotykowy dla RPi. Jednak często 7" to za mało i potrzebujemy większej powierzchni np. dla panelu do sterowania drukarkami 3D, albo po prostu budujemy centrum zarządzania wszechświatem i musimy je jakoś kontrolować. No wiecie, te relaksacyjne weekendowe projekty.
Gdybyśmy szukali czegoś FullHD o przekątnej przynajmniej 15", to pewnie stanęłoby na rezygnacji z panelu dotykowego i kupnie zwykłego monitora LCD, który spełniałby te zadania. Jednak jak się okazuje, są takie duże panele dotykowe dostępne na rynku. W dodatku nawet jako urządzenia dedykowane dla Raspberry Pi. Dzięki uprzejmości firmy iTouchSystem, mam okazję dla Was przetestować i opisać swoje wrażenia z używania panelu iTouchSystem Raio 15 pojemnościowy LCD 15.6' 1920x1080px w stalowej obudowie dla Raspberry Pi 4B
Zacznę od tego co pierwsze rzuciło mi się w oczy, gdy otrzymałem paczkę z tym ekranem. Jest on ciężki. Waży jakieś 3 kilogramy i ma z tyłu, solidną, grubą, stalową obudowę, która pozwala na przymocowanie naszego panelu np. do ściany. Dodatkowo, mamy z tyłu wyprowadzone dwa złącza USB 3.0 oraz LAN. W zestawie jest oczywiście specjalny zasilacz. Jak już zapewne się domyślacie, LAN i USB 3.0, to złącza wyprowadzone z Raspberry Pi z wnętrza obudowy. Warto tutaj zaznaczyć, że RPi 4B nie wchodzi z zestaw z ekranem i trzeba je dokupić samodzielnie. W środku znajdziemy specjalne miejsc do zamocowania RPi, oraz wszystkie kable, które należy podłączyć do Malinki. Pozwalają one na wyświetlanie obrazu na ekranie, obsługę panelu dotykowego, czy są wspomnianymi wcześniej wyprowadzeniami złącz na tył obudowy. Mamy tutaj też zasilanie dla RPi. Oznacza to, że jedyny kabel jaki podpinamy do ekranu, to właśnie przewód z zasilacza.
Na początku postanowiłem zobaczyć jakiej jakości jest sam ekran i jak reaguje na dotyk. Postanowiłem zacząć od wrzucenia najnowszej wersji Raspbiana na kartę pamięci i sprawdzenia czy wymagane są jakieś dodatkowe sterowniki, czy kalibracja aby cieszyć się z zalet ekranu dotykowego. Ku mojemu zaskoczeniu, okazało się, że wszystko działa bez najmniejszych problemów. Nie musiałem nic instalować, czy kalibrować. Ekran po prostu działał. Podobnie jak ten 7" ekran dedykowany dla Raspberry Pi. W zasadzie to widzę wiele podobieństw pomiędzy tymi dwoma produktami. Oba mają bardzo dobrą jakość wykonania i świetnie reagują na dotyk. W obu przypadkach nie mamy problemów z uciążliwą kalibracją i instalacją sterowników. W obu przypadkach mamy stosunkowo wysoką rozdzielczości jak na przekątną jaką posiadają te ekrany.
Skoro sam ekran działa bardzo sprawnie, to pora zrobić z nim coś użytecznego. Myślałem początkowo o opisie instalacji domoticza, Home Assistant albo Grafany lub OctoPrint albo Repetiera do zarządzania drukarką 3D, ale stwierdziłem, że na początek lepszym pomysłem będzie po prostu Chromium w wersji infokiosk, czyli pełnoekranowa wersja przeglądarki, która pozwoli nam wyświetlanie na ekranie dowolnej strony internetowej.
Na początku, tworzymy folder na naszą konfigurację oraz kopiujemy do niego plik z ustawieniami.
Edytujemy ten plik i wklejamy do niego kilka poniższych parametrów. Dla przykładu komentujemy pierwszy z nich. Spowoduje to wyłączenie wygaszacza ekranu. W ostatnim możemy wybrać adres strony internetowej, która ma być ładowana zaraz po starcie naszego infokiosku.
nano /home/pi/.config/lxsession/LXDE-pi/autostart
#@xscreensaver -no-splash @xset s off @xset -dpms @xset s noblank @chromium-browser --incognito --kiosk http://malinowepi.pl/
Na koniec oczywiście restart, aby sprawdzić czy wszytko zadziałało.
sudo reboot
Ekran zaskoczył mnie bardzo pozytywnie jakością wykonania i precyzją działania. Teraz planuję znaleźć dla niego inne zadanie. Mianowicie będzie zarządzał obsługą drukarek 3D, ale to temat na kolejny wpis…
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Raspberry Pi 4 – Przemyślenia po kilku dniach użytkowania
Wśród nowości jest również zasilanie poprzez złącze USB-C. Warto o tym pamiętać zamawiając nową Malinę. Musimy zaopatrzyć się w stosowny zasilacz lub kabel. Adaptacja USB-C idzie wolniej niż można się było tego spodziewać i część osób może jeszcze nie mieć takich kabli i zasilaczy. Jednak większym problemem jest microHDMI zastosowane zamiast standardowego wyjścia HDMI. Rozumiem po części taką decyzję. MicroHDMI jest znacznie mniejsze i dzięki temu zmieściły się dwa wyjścia. Pytanie tylko, czy naprawdę aż tyle osób zależy na obsłudze dwóch monitorów, że wszyscy będziemy musieli kupić specjalne kable lub przejściówki? Pewnie bym się o to nie czepiał, gdyby w Raspberry Pi Zero użyto od razu microHDMi, tam jest jednak miniHDMI. Two dwie zupełnie równe wtyczki, więc nawet jeśli ktoś miał wcześniej Raspberry Pi, to raczej na pewno nie korzystał z microHDMI. Wśród nowości, które mogą się nie spodobać części osób, jest również zamienienie miejscami złącza Ethernet z USB. To wszystko sprowadza się do tego, że pomimo tego, że Raspberry Pi 4 nie zmieniło swoich rozmiarów w stosunku do poprzedników, to raczej na pewno stare obudowy nie będą pasować do nowej Maliny.
Nie chcę jednak, żebyście mieli wrażenie, że tylko narzekam na nowe Raspberry Pi. Uważam, że to świetny kolejny krok w ewolucji Maliny. Gigabit ethernet, które realnie osiąga transfery na poziomie około 930Mb/s oraz pełna obsługa USB3, to dwie rzeczy, których najbardziej brakowało w Raspberry Pi. W dodatku teraz USB nie „zabiera” transfery z ethernetu. Mamy osobne kontrolery. Ethernet ma swój gigabit, a na wszystkie złącza USB mamy 4 gigabity do podziału(czyli wszystkie USB mogą jednocześnie przesyłać dane z pełną możliwą szybkością). To naprawdę świetna wiadomość dla każdego kto chciałby podłączyć dysk do Raspberry Pi i udostępnić coś w sieci. Dodatkowo system odpalony z pendrive’a na USB3 powinien działać znacznie szybciej.
Wydajniejszy procesor oraz układ graficzny, który radzi sobie z 4K w 60 klatkach na sekundę lub 30 klatkach, przy podłączonych dwóch monitora, wydaje się również czymś co znacznie wpłynie na działanie Maliny jako multimedialne centrum rozrywki czy emulator starszych konsol.
Plusów jest na tyle dużo, że już zapomniałem o tych 20 złotych, które zapłaciłem za przejściówkę microHDMI. Pora sprawdzić jak RPi 4 radzi sobie w rzeczywistości, bo na papierze wygląda fenomenalnie.
Na co dzień działają u mnie dwie Malina. Model 3B praz Zero W. Na Zeto W mam w zasadzie tylko postawiony homebridge, a na 3B działa spora baza danych, domoticz, grafana, kilka moich skryptów pythonowych oraz kilka dodatkowych aplikacji. We wtorek(25 czerwca) wieczorem zaktualizowałem wszystkie pakiety na 3B, wyjąłem kartę pamięci i przełożyłem do RPi 4, podłączyłem kabel USB do zasilania. Nie miałem jeszcze przejściówki na microHDMI, więc postanowiłem podłączyć kabel ehternet do laptopa, żeby na początku połączyć się przez SSH i zobaczyć czy wszystko działa. Po podłączeniu „czwórki”, otworzyłem na laptopie przeglądarkę, aby pobrać nową wersję Raspbiana, bo jak się okazało Raspberry Pi 4 nie działa ze starszą wersją systemu. Możliwe, że już dzisiaj nie ma tego problemu, a jeśli wciąż występuje, to pewnie w ciągu najbliższych dni, maksymalnie tygodni zostanie rozwiązany.
Pobrałem nową wersję Raspbiana - Buster. Miała premierę przy okazji pojawienia się nowej Maliny. Pomyślałem, że wrzucę ją na pendrive’a z USB3, będzie działać szybciej niż karta pamięci. Ku mojemu zaskoczeniu, Raspbian na Raspberry Pi 4 nie ruszył z tego pendrive’a. Nie wiem czym było to spowodowane. Dopiero po wrzuceniu systemu na kartę pamięci, Raspberry Pi 4 ruszyło.
W pierwszej kolejności sprawdziłem transfery, bo chciałem się upewnić czy gigabit ethernet, to naprawdę gigabit ethernet oraz czy USB3 to USB3. Tak, to nareszcie działa tak jak powinno i mamy na prawdę dostępną pełną przepustowość tych złączy.
Kolejną rzeczą, którą chciałem przetestować na nowej Malinie, to obsługa 4K. Po kupnie wspomnianej wcześniej przejściówki na microHDMI, odpaliłem przeglądarkę i sprawdziłem jak działa YouTube. Na początku odpaliłem wideo w 1080p, a później chciałem w 4K. Choć nie mam monitora 4K, tu swoją drogą widać jak wolno idzie adaptacja nowych rozwiązań. Zwłaszcza u mnie w ostatnim czasie, ale mam wrażenie, że sporo osób również nie ma jeszcze urządzeń z USB-C, czy monitorów 4K. Wracając jednak do 4K na YouTube, no to niestety nie mogłem go włączyć w Choromium na Raspberry Pi. Przy 1080p miałem wrażenie, że czasami gubi klatki, ale nie wiem czy to wina Raspberry Pi, czy mojego dostawcy internetu(musiałem czekać chwilę aż wideo mi się zbuforuje, więc możliwe, że to było przyczyną). Oczywiście tutaj największym problemem jest przeglądarka internetowa i obsługa przez nią wideo. Zupełnie inaczej to wygląda, gdy odtwarzamy wideo z dysku USB. W takim wypadku nie ma problemów najmniejszych z 1080p. Jestem pewien, że z 4K z podłączonym monitorem 4K również nie będzie problemu.
Jestem ciekaw jak będą działać takie rozwiązania jak Plex na nowym Raspberry Pi 4. Plex umożliwia konwertowanie wideo w czasie rzeczywistym i streamowanie go przez sieć do jakiegoś innego urządzenia(np. telefonu czy tabletu). Do tej pory nie można było włączyć tej opcji na Raspberry Pi. Możliwe, że dzięki RPi 4 to się w końcu zmieni, bo mamy jednak wyraźnie szybszy procesor, lepszy układ graficzny z obsługą 4K oraz znacznie więcej pamięci RAM.
Po tych kilku dniach z Raspberry Pi 4 jestem nadal przekonany, że to świetny następca modelu 3B. Zwłaszcza dzięki nowym, znacznie szybszym złączom. Gigabit ethernet oraz USB3 wiele zmienia i powoduje, że RPi 4 będzie miało znacznie dłuższy okres żywotności. Podobnie z zasilaniem poprzez USB-C, obecnie może być problematyczne, ale użycie tego złącza pokazuje, że RPi 4 będziemy mogli bez problemu zasilić nawet za kilka lat, gdy USB-C będzie tak rozpowszechnione jak obecnie USB-A. Zastanawiam się tylko, dlaczego w przypadku złącz do transferu danych użyto USB3 w wersji A a nie C podobnie jak do zasilania? Raspberry Pi Foundation mogło być konsekwentne i wszędzie użyć USB-C, choć pewnie wtedy narzekałbym, że nie mam przejściówki do dysku i pendrive’a, żeby je podłączyć ;)
Na koniec chciałbym podziękować sklepowi Botland.com.pl za udostępnienie mi do testów Raspberry Pi 4 w wersji 2 GB. Raspberry Pi 4 oraz wszystkie akcesoria do nich możecie znaleźć w ich sklepie internetowym. Raspberry Pi 4 z 1 GB kosztuje 166 zł, model z 2 GB pamięci 212 zł, natomiast za Raspberry Pi 4 z 4 GB pamięci RAM przyjdzie nam zapłacić 259 zł.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Szczerze, to nie spodziewałem się, że Raspberry Pi Foundation odświeży model A. Od pewnego czasu miałem wrażenie, że zastępują go po prostu przez Zero. Model A to coś pomiędzy „klasycznym” modelem B, a Zero. Zarówno jeśli chodzi o wymiary, jak i o możliwości, czy ilość złącz znajdujących się na samej płytce. Sądziłem, że model A nie cieszył się zbyt dużym zainteresowaniem i postanowiono z niego zrezygnować i skupić się na rozwoju B oraz Zero. Dlatego ku mojemu sporemu zaskoczeniu, 15 listopada Raspberry Pi Foundation ogłosiło odświeżenie modelu A.
Model 3A+ posiada dokładnie taki sam układ(SoC) jak model 3B+, czyli czterordzeniowy, 64-bitowy procesor taktowany z częstotliwością 1.4 GHz(ARM Cortex-A53). 512 MB pamięci RAM(tyle samo co Zero, 3B+ ma 1 GB). Model 3A+ wspiera również 802.11ac i to w dwóch kanałach: 2,4 GHz i 5 GHz. Dodano również obsługę Bluetooth 4.2. W zasadzie jeśli chodzi o specyfikację to dostajemy to samo co oferuje 3B+, jedynie ilość pamięci RAM została zmniejszona do 512 MB. Nowe 3A+, podobnie jak wcześniejszy model A, posiada pełnowymiarowe wyjście HDMI, Jack oraz tylko jedno złącze USB.
Model 3A+ spowodował, że zacząłem się zastanawiać dla kogo adresowana jest ta płytka. Tak jak wspominałem na początku. Jeśli ktoś potrzebuje RPi do prostych zadań i zależy mu na wielkości, nie potrzebuje pełnowymiarowego USB czy Ethernetu, to użyje Zero. Sam tak zrobiłem w moim niedawnym projekcie. Zero miało być w nim jednostką centralną, która na 7” dotykowym ekranie będzie wyświetlać stronę internetową z danymi pomiarowymi z moich czujników w mieszkaniu. Jednak jak szybko się przekonałem Chromium w trybie pełnoekranowym, webserwer napisany w pythonie i dwa skrypty odpalane co kilka minut to zbyt wiele dla Zero. Oczywiście całość działała, jednak czekanie 20 sekund aż poruszy się kursor to nie jest to na co liczyłem. Postanowiłem sprawdzić jak z tym zadaniem poradzi sobie odświeżone A+. Mocniejszy, czterordzeniowy procesor powinien sobie lepiej poradzić z wykonywaniem mojego kodu, a co za tym idzie znacząco poprawić wydajność i szybkość reakcji.
Dzięki uprzejmości sklepu Botland.com.pl, od kilku dni mogę testować odświeżony model 3A+. Postanowiłem go od razu podłączyć zamiast Zero do mojego panelu wyświetlającego dane pomiarowe. Różnica w szybkości działania jest ogromna. Obecnie kursor reaguje na kliknięcie w czasie poniżej jednej sekundy i naprawdę da się z tego korzystać.
Poza znacznie szybszym działaniem zauważyłem jeszcze jedną różnicę – minimalnie większe zużycie prądu. Zasilanie panelu było przygotowane pod Zero i na modelu A+ dostaję informację przy uruchamianiu się systemu(komunikat tekstowy) oraz w czasie działania(piorun w prawym górym rogu) zbyt słabym zasilaniu.
Dla kogo w końcu jest odświeżony model 3A+? Dla tych wszystkich osób, którym nie wystarcza Zero, ale nie potrzebują Ethernetu oraz większej ilości portów USB. A+ jest świetnym rozwiązaniem dal takich niewielkich projektów, jak mój panel wyświetlający informacje pomiarowe z innych urządzeń.
Nowy model Raspberry Pi 3A+ możecie zamówić w sklepie Botland.com.pl. Cena wynosi 119 zł plus koszt dostawy.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Nie będę tutaj zanudzał suchą specyfikacją nowego 3B+, jeśli chcecie ją sprawdzić, to zerknijcie do poprzedniego wpisu – Nowe Raspberry Pi 3B+. Chciałbym na początku podziękować sklepowi Botland.con.pl za egzemplarz do testu.
Przesiadkę na 3B+ z 3B rozpocząłem od aktualizacji systemu, który miałem zainstalowany w 3B. Klasyczne sudo apt-get update, sudo apt-get upgrade, sudo apt-get dist-upgrade oraz sudo rpi-update. Po wykonaniu tych poleceń przełożyłem kartę pamięci z modelu 3B do 3B+. Wszystko ruszyło bez problemu.
Na pierwszy ogień poszły testy WiFi. Przyśpieszenie połączenia bezprzewodowego jest dla mnie bardziej istotne niż szybszy ethernet. To dlatego, że jedyne urządzenie, które mam podłączone kablem do routera, to mój dysk sieciowy. Wszystkie pozostałe urządzenia łączą się bezprzewodowo. Mój router to TP-LINK Archer C3200. Oferuje on łączna prędkość bezprzewodową na poziomie 3200 Mb/s na paśmie 2,4 GHz (600 Mb/s) i dwóch pasmach 5 GHz (1300 Mb/s każde). To istotne, bo bez routera wspierającego 802.11ac na paśmie 5 GHz, nowe RPi 3B+ nie będzie miało wyższych transferów przy połączeniu bezprzewodowym. Testy wykonałem przy użyciu mojego laptopa, który również obsługuje 802.11ac na 5 GHz.
Na początek sprawdziłem połączenie 802.11ac na paśmie 5 GHz. Wynik uzyskany przez ipref był zaskakująco wysoki i wynosił około 95 Mb/s. Trzeba tutaj pamiętać, że takie wyniki model 3B osiągał przy połączeniu przewodowym!
W dalszej kolejności sprawdziłem jakie transferu uda się osiągnąć przy sieci 802.11n. Model 3B+ uzyskał wynik około 40 Mb/s. Dla porównania model 3B przy takich samych warunkach miał transfery na poziomie zaledwie 25 Mb/s. W tym wypadku oczywiście zarówno Maliny jak i mój laptop działały na sieci 802.11n.
Na koniec zrobiłem jeszcze test mieszany. Czyli Malina w sieci 802.11n, a mój laptop 802.11ac na 5 GHz. Byłem ciekawe czy w takim wypadku wyniki będą trochę lepsze czy nie. W takich warunkach ograniczeniem będzie tylko przepustowość połączenia RPi - Router. Model 3B+ uzyskał transfer na poziomie około 58 Mb/s, a 3B – 45 Mb/s. Doskonale tu widać, że jeśli macie możliwość gdziekolwiek używać 802.11ac na 5 GHz zamiast 802.11n, to róbcie to, bo transfery są znacząco wyższe.
Pora na test połączenia przewodowego. W tym wypadku zarówno Malina jak i mój laptop zostały podłączone do routera kablami. Model 3B+ uzyskał wynik około 305 Mb/s. Deklarowane przez Raspberry Pi Foundation 300 Mb/s to prawda. Faktycznie tyle wyciąga się z 3B+ przy połączeniu przewodowym. Dla porównania model 3B uzyskał wynik na poziomie zaledwie 94 Mb/s.
Transfery dla połączeń bezprzewodowych:
Sieć 802.11n na Raspberry Pi oraz na laptopie:
Raspberry Pi 3B – 25 Mb/s
Raspberry Pi 3B+ – 40 Mb/s
Sieć 802.11n na RPi i 802.11ac 5 GHz na laptopie:
Raspberry Pi 3B – 45 Mb/s
Raspberry Pi 3B+ – 58 Mb/s
Sieć 802.11ac 5 GHz:
Raspberry Pi 3B+ – 95 Mb/s
Następne w kolejce są testy chłodzenia, a właściwie nagrzewania się Raspberry Pi. Temperaturę sprawdziłem 5 minut po uruchomieniu systemu, po jednokrotnym wykonaniu testu sysbench oraz po pięciu sysbench’ach. Do testu użyłem polecenia sysbench --test=cpu --cpu-max-prime=10000 --num-threads=4 run. Temperaturę sprawdzałem poleceniem /opt/vc/bin/vcgencmd measure_temp.
Temperatura CPU po 5 minutach od uruchomienia:
Raspberry Pi 3B – 45°C
Raspberry Pi 3B+ – 46°C
Temperatura CPU po jednym teście sysbench:
Raspberry Pi 3B – 53,7°C
Raspberry Pi 3B – 51°C
Temperatura CPU po 5 testach sysbench:
Raspberry Pi 3B – 59,6°C
Raspberry Pi 3B+ – 55,3°C
Jak widać przy dłuższym obciążeniu temperatura modelu 3B+ jest niższa niż w przypadku modelu 3B. Spowodowane jest to lepszym odprowadzaniem ciepła i zastosowaniem radiatora IHS.
Na koniec zostawiłem sobie wisienkę na torcie, czyli bootowanie z pamięci USB. Wgrałem najnowszą wersją Raspbiana na pendrive’a. Dokładnie w taki sam sposób jak wgrywa się je na karty pamięci. Podłączyłem USB w modelu 3B+, wyjąłem kartę pamięci i podłączyłem zasilanie. Wszystko ruszyło bez problemu i działało tak jak powinno. Dodam tutaj, że w przypadku modelu 3B takie rozwiązanie również działa. Problemem są dyski twarde, które wymagają większej ilości prądu lub dłuższego czasu uruchomienia się. Niestety nie mam takie, więc nie byłem w stanie sprawdzić jak model 3B+ zachowa się z takim urządzeniem. Ze zwykłym pendrivem działa idealnie. Z dyskami SSD też nie powinno być problemów.
Powyższe testy to oczywiście tylko sprawdzenie kilku nowych lub udoskonalonych rozwiązań w 3B+. Chciałbym w przyszłości sprawdzić jak będzie się sprawować PoE, czyli zasilanie RPi z kabla ethernet.
Jeśli chodzi o szybkość działania samej Maliny, to procesor taktowany o 200 MHz wyżej niż w modelu 3B, nie robi większej różnicy. Urządzenie działa tak samo jak wcześniej. Sam układ oraz pamięć RAM nie uległy zmianie, stąd nie ma większych różnic w prędkości działania samej płytki.
Jeśli stałbym dzisiaj przed wyborem czy kupić model 3B czy 3B+, to wziąłbym 3B+. Dla samego 802.11ac warto dopłacić. Jednak jeśli miałbym już model 3B i zastanawiał się czy warto go zmienić na 3B+, to miałbym twardy orzech do zgryzienia. Z jednej strony wyższe transfery to spore udogodnienie, ale czy tylko dla nich warto zmienić Malinę? Wszystko zależy od tego do czego i jak używamy naszego Raspberry Pi.
Nowy model Raspberry Pi 3B+ możecie zamówić w sklepie Botland.con.pl. Cena wynosi 179 zł plus koszt dostawy.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Trochę ponad 2 lata temu, 29 lutego 2016 roku, do sprzedaży trafiło Raspberry Pi 3B. Największa nowością w tym modelu był wbudowany moduł WiFi. Dzisiaj Raspberry Pi Foundation zaprezentowało następcę modelu 3B – model 3B+. Odświeżona wersja najmocniejszej Maliny nie różni się diametralnie od poprzedniczki. Plus w nazwie Raspberry Pi pełni trochę taką rolę jak „S” w iPhone’ach. Bardziej wydajne podzespoły w dobrze znanym opakowaniu.
Kilka lat temu, po Raspberry Pi B pojawiło się Raspberry Pi B+. Teraz mamy powtórkę. Nowy model 3B+, różni się od poprzedniego tym, że został wyposażony w czterordzeniowy, 64-bitowy procesor taktowany z częstotliwością 1.4 GHz(ARM Cortex-A53), zamiast 1.2 GHz jak w poprzedniku.
Model 3B+ wspiera również 802.11ac i to w dwóch kanałach: 2,4 GHz i 5 GHz. Dodano również obsługę Bluetooth 4.2. Raspberry Pi Foundation zapewnie, że dzięki zastosowaniu 802.11ac na 5 GHz można uzyskać prawie trzykrotnie wyższe transfery niż w modelu 3B.
Zmianie uległ również moduł odpowiedzialny za komunikację poprzez Ethernet. Wcześniej w Raspberry Pi stosowano układ LAN951x. W modelu 3B+ użyto nowego LAN7515. Dzięki temu transfery przy użyciu kabla, są również trzykrotnie wyższe. Wcześniej prędkość połączenia Ethernet była mocno ograniczona przez układ LAN951x, który obsługiwał tylko Ethernet 100. LAN7515 obsługuje Gigabit Ethernet, ale wciąż podłączony jest do USB 2.0, więc transfery będą ograniczone przez przepustowość USB 2.0.
To nie koniec nowości w Raspberry Pi 3B+. Zapowiedziano wprowadzenie do oferty specjalnej płytki rozszerzeń, która umożliwi obsługę PoE, czyli zasilania RPi poprzez kabel Ethernet. Usprawniono obsługę PXE oraz uruchamiania RPi z systemu, który znajduje się na urządzeniu podłączonym pod USB. Do tej pory przy systemie zainstalowanym na pamięci USB, wciąż trzeba było używać karty pamięci, bo tylko z niej startowała Malina. W przypadku 3B+ karta pamięci nie będzie już wymagana, jeśli nasz system będzie zainstalowany na pamięci USB.
Nie zapomniano również o jednej z bolączek modelu 3B, czyli przegrzewaniu się. W modelu 3B+ poprawiono ten mankament i pomimo wyższego taktowania procesora, Raspberry Pi 3B+ powinno się mniej nagrzewać niż poprzedni model.
Nowy model Raspberry Pi 3B+ będzie kosztował $35, czyli dokładnie tyle samo co do tej pory model 3B. Sprzedaż modelu 3B+ rusza już dzisiaj.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Pierwszy raz o Homebridge na RPi usłyszałem chyba z 2 lata temu. Chciałem je wtedy zainstalować, ale poległem. Gdybym zaczął liczyć to za pierwszy dzień pisania tego wpisu, to byłby to chyba jeden z najdłużej powstających wpisów w polskiej blogosferze. Próbowałem kilkukrotnie i nawet raz zadziałał, ale zaraz po restarcie RPi nie chciał ponownie ruszyć. W końcu po wielu próbach i różnych kombinacjach, udało mi się w pełni zainstalować i skonfigurować Homebridge na Raspberry Pi.
Homebridge pozwala na wygenerowanie takie kodu QR i dodanie dowolnego przełącznika, miernika czy innego urządzenia obsługiwanego i podłączonego do RPi do aplikacji Dom w naszym iPhonie czy iPadzie. Jak nie trudno się domyśleć, sporo tanich akcesoriów nie wspiera domyślnie HomeKit. W dodatku ciężko powiedzieć, żeby nasz przekaźnik podłączony kablem do RPi wspierał coś takiego sam od siebie. Przy użyciu Homebridge możemy nim sterować za pomocą Siri. Producenci „smart” urządzeń, sprzedają też często wraz z nimi za kilkaset złotych przystawkę z którą łączy się nasz iPhone i ta przystawka później komunikuje się np. z przekaźnikami, żarówkami czy innymi miernikami temperatury. Raspberry Pi z Homebridge pełni właśnie rolę takiego pośrednika.
W moim przypadku mam jedno RPi 3B, które działa czasu czas. Jest zamontowane jako komputer do sterowania drukarką 3D i działa na nim Repetier-Server. Skoro to RPi działa 24/7, a z drukarki korzystam czasami, to na co dzień głównym zadaniem jest zbieranie danych z ESP12 do Domoticza. Wśród tych danych jest temperatura powietrza w pomieszczeniu, wilgotność, ciśnienie, jasność oraz temperatura grzejnika. W zależności od tego czy mam pod ręką jakieś dodatkowe czujniki, to czasami mierzę jeszcze więcej rzeczy np. zanieczyszczenie powietrza PM2.5 albo poziom CO2. Dane te wizualizuję sobie za pomocą Grafany. DO tej Maliny mam jeszcze podłączony moduł radiowy 433MHz, którym zapalam i gaszę 2 zdalnie sterowane gniazdka(kiedyś kupiłem taki zestaw 3 gniazdek z pilotem w Biedronce). Mogę w ten sposób zapalać i gasić oświetlenie w pokoju. Sterowanie tymi gniazdkami również jest dodane do wspomnianego wyżej Domoticza. Całość zamyka jeden przekaźnik 5V 10A/250VAC, którym zapalam lub gaszę listwę LED zamocowaną pod biurkiem. Przekaźnik ten jest podłączony kablem do tej Maliny i również obsługiwany przez Domoticza. W mojej konfiguracji miałem już dostęp do tych wszystkich urządzeń zdalnie. Z poziomu przeglądarki internetowej. Dzięki Homebridge mogę sterować wspomnianymi przekaźnikami za pomocą Siri oraz zapytać ją o temperaturę w pomieszczeniu.
Na początku łączymy się poprzez SSH z RPi(Aplikacja PuTTY na Windowsie; W Linuksie i macOS w Terminalu wpisujemy ssh pi@[IP_Maliny]), lub klasycznie podpinamy do niej monitor, myszkę i klawiaturę oraz odpalamy terminal.
sudo apt-get upgrade - sprawdzamy dla pewności czy wszystkie pakiety są aktualne. Możliwe, że apt-get znajdzie nam jakieś niepotrzebne lub brakujące i zasugeruje sudo apt-get autoremove. Wykonajmy to polecenie.
sudo npm install -g homebridge - instalujemy Homebrigde. Gotowe! Nie. Nie tak szybko. Jeszcze musimy zainstalować pluginy.
sudo npm install -g homebridge-edomoticz - tak jak napisałem na początku. U mnie Homebridge ma pobierać dane z Domoticza i umożliwiać sterowanie przełącznikami, które mam tam dodane.
sudo npm install -g homebridge-http - jeszcze jeden plugin. Umożliwia on wywołanie jakiejś strony internetowej za pomocą naszego wirtualnego przełącznika w Homebridge. Może się nam przydać jeśli będziemy chcieli wysłać coś w stylu "http://Adres_IP/controller/ON" po wydania polecenia głosowego Siri, albo kliknięciu odpowiedniego guziczka w iPhonie.
cd ~/.homebridge/ - przechodzimy do folderu konfiguracyjnego Homebridge.
nano config.json - tworzymy plik konfiguracyjny w którym musimy dodać wszystkie nasze urządzenia. Jeśli użyjemy tutaj czegoś do czego wcześniej nie wgraliśmy pluginu, to Homebridge w ogóle się nie uruchomi. Dlatego jeśli coś mamy tutaj dopisać, to robimy to na koniec. W przypadku Domoticza i wyżej wymienionej wtyczki, mamy o tyle ułatwione zadanie, że konfiguracja je jako platformę i wszystko co mamy dodane do Domoticza automatycznie samo pojawi się w Homebridge. Nie musimy dodawać ręcznie każdego przełącznika i miernika temperatury. Do pliku wklejamy poniższą konfigurację.
Jak widzimy w pliku konfiguracyjnym musimy wpisać adres MAC naszej RPi. No, przynajmniej powinniśmy. Musimy tu wpisać jakikolwiek adres MAC. Po nim aplikacja Dom na iOSie rozpoznaje czy dane urządzenie zostało już do niej dodane czy nie. Najlepiej wpisać sobie MAC swojej Maliny. Można go sprawdzić wpisując w Terminalu ifconfig i sprawdzając co mamy po „HWaddr” przy naszym połączeniu WiFi (wlan0 albo wlan1). Trzeba tutaj pamiętać, że litery w adresie MAC muszą być napisane WIELKIMI LITERAMI! W pliku konfiguracyjnym mamy również podany adres IP Domoticza. Jako, że jest na tym samym urządzeniu to zostawiamy 127.0.0.1. Jeśli nasz Domoticz działa na innym porcie niż „8080”, też musimy to zmienić. Możemy też włączyć SSL ustawiając zamiast „0” – „1”. Musimy przy tym pamiętać o zmianie portu na „443”. Zapisujemy plik(„ctrl+x” i „y” a następnie enter).
homebridge - możemy uruchomić po raz pierwszy Homebridge. Zobaczymy czy wszystkie wymagane pakiety i pluginy są zainstalowane i działają. Jeśli tak to powinniśmy zobaczyć w terminalu duży QR Code. W tej chwili możemy wziąć naszego iPhone’a czy iPada i uruchomić aplikację Dom. Dodać w niej nowe urządzeni i zeskanować ten kod. Aplikacja Dom zapyta nas czy chcemy dodać wszystkie urządzenia i będziemy musieli zaakceptować każde z urządzeń(mierniki, przełączniki) podłączonych do Domoticza. Możemy nadać im nazwy, pogrupować razem albo przypisać do różnych pokoi. Wszystko powinno na tym etapie działać. Jeśli nie zobaczymy w terminalu kodu QR, zostanie wyświetlony błąd. Najprawdopodobniej związany z niezainstalowaniem jakiegoś wymaganego pakietu.
Po dodaniu wszystkiego i sprawdzeniu czy działa, pora na skonfigurowanie Homebridge’a w taki sposób, aby uruchamiał się zawsze przy starcie naszej Maliny. W tym celu musimy go na chwilę wyłączyć (ctrl+c). Znalazłem kilka opisów w sieci jak zrobić, żeby Homebridge uruchamiał się przy starcie, ale żaden mi nie działał poprawnie. Postanowiłem rozwiązać ten problem w bardzo prosty i uniwersalny sposób. Zrobiłem skrypt, który jest wykonywany każdorazowo po starcie systemu. Skrypt ten uruchamia Homebridge.
cd ~/.homebridge/
nano RunHomebridge.sh - tworzymy nasz skrypt do uruchamiania Homebridge. Oczywiście możemy go nazwać jakoś inaczej niż „RunHomebridge”. Skrypt jest bardzo długi, bo ma aż dwie linijki:
#!/bin/bash homebridge
sudo chmod +x RunHomebridge.sh - Po stworzeniu takiego dużego i rozbudowanego skryptu pora nadać mu stosownych uprawnień pozwalających na wykonywanie go.
crontab -e - otwieramy crona i dopisujemy w ostatniej linijce @reboot /home/pi/.homebridge/./RunHomebridge.sh.
Teraz po starcie systemu zawsze powinien nam automatycznie startować Homebridge. Powodzenia!
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Na początku września miałem okazję testować płytkę Onion Omega 2 Plus wraz z Power Deckiem. Pierwsze wrażenia i opis zestawu znajdziecie we wpisie Onion Omega 2. Dzięki uprzejmości sklepu Botland.com.pl, miałem przyjemność przez dłuższy czas używać Cebuli i dziś będę miał dla Was mały konkurs, w którym do wygrania będzie wspomniany zestaw z Onion Omega 2+ oraz Power Dockiem.
Zanim przejdziemy do konkursu chciałbym jeszcze opisać w jaki sposób przy użyciu Cebuli zrobić prostą stację pogodową podającą informacje na temat temperatury i wilgotności powietrza. W tym celu poza Onion Omega 2+ użyłem jeszcze DTH22, do dokonywania tych pomiarów. Całość podłączyłem do Power Docka. Sposób podłączenia DHT22 jest identyczny jak w przypadku DHT11. Schemat podłączenia znajdziecie w tym wpisie.
Po podłączeniu i wstępnej konfiguracji Cebuli, możemy przejść do Terminalu i połączyć się przez SSH z Cebulą(login/hasło: root/onioneer). Gdy to zrobimy, możemy przejść do pobrania programu do odczytu temperatury i wilgotności powietrza.
opkg update
opkg install wget - instalujemy wget’a
cd /root
wget https://community.onion.io/uploads/files/1450434316215-checkhumidity.tar.gz - pobieramy program do odczytu danych z miernika
tar -zxvf 1450434316215-checkhumidity.tar.gz
chmod -R 755 /root/checkHumidity/bin/checkHumidity - zmieniamy uprawnienia programu do odczytu danych
cd /root/checkHumidity/bin/
./checkHumidity 20 DHT22 - liczba 20 oznacza tutaj pin GPIO Cebuli, do którego podłączyliśmy miernik. DHT22 to model miernika. Możemy użyć DHT11, wtedy w tym miejscy wpisujemy DHT11. Jeśli otrzymujemy wartość 255, oznacza to, że mamy źle podłączone DHT22.
Dane z czujnika możemy szybko wyświetlić na stronie internetowej. W tym celu wystarczy przejść do folderu /www/php (cd /www/php)i stworzyć w nim plik dht.php(nano dht.php). Następnie wkleić do niego poniższy kod:
The current temperature is " . $temp . "°C and the humidity is . " . $humidity . "%" ; } else { echo "Error: " . $message; } function get_dht_values($pin, $dht_type) { if( ( $dht_type != "DHT11" ) && ( $dht_type != "DHT11" ) ) { return array("Invalid DHT Type", 0, 0); } // Run the command using the exec() function, delivers the output in $output exec("/root/checkHumidity/bin/checkHumidity $pin $dht_type 2>&1", $output, $return); // -255 = bad if( $output[0] == "-255.000000" ) { return array("Unable to read sensor, check the wiring, pin number!", 0, 0); } // must be all good, lets return the data $output[0] = number_format( (float)$output[0], 2, '.', '' ); // temp $output[1] = number_format( (float)$output[1], 2, '.', '' ); // hum return array( "success", $output[0], $output[1] ); }
Teraz pod adresem http://omega-ABCD.local/php/dht.php(IP_Cebuli/php/dht.php) powinniśmy znaleźć dane na temat wilgotności i temperatury powietrza.
KONKURS
Jak już wspomniałem na początku wpisu. Mam do rozdania zestaw składający się z płytki Onion Omega 2 Plus i Power Deck. Zestaw ten został ufundowany przez sklep Botland.com.pl.
Aby wziąć udział w konkursie napiszcie co zrobilibyście z Onion Omega 2+. Jakich innych płytek rozszerzeń dla Cebuli użylibyście(możecie je znaleźć tutaj). Konkurs trwa do piątku włącznie. Komentarze z opisami zostawcie pod tym wpisem. Powodzenia!
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Ile prądu zużywają poszczególne modele Raspberry Pi?
Zastanawialiście się ile prądu zużywa poszczególny model Maliny oraz ile wymaga mA do działania? Zazwyczaj o tym nie myślimy, ale czasami takie informacje mogą być dla nas bardzo ważne. Zwłaszcza, gdy chcemy aby Malina działała na baterii.
Nie trudno się domyśleć, że najmniej prądożerna będzie wersja Zero bez WiFi, a najwięcej model 3B (obecnie, w przeszłości najwięcej zużywał pierwszy model B). W serwisie raspi.tv możemy znaleźć test poszczególnych modeli RPi. Przebadano je w kilku przypadkach.
Pierwszym jest „Idling”, czyli Malina jest włączona ale nie wykonuje żadnych operacji. Drugi „Loading LXDE” to ilość mA wymagana w czasie ładowania się systemy graficznego LXDE (Raspbian). Trzecim „Watch 1080p Video” to oglądanie wideo z karty pamięci, na której jest system, a ostatni, czwarty „Shoot 1080p Video”, to nagrywanie wideo przy użyciu kamery. Oczywiście wideo to jest zapisywane na karcie pamięci. Do Każdego z RPi w czasie testy podłączony był monitor poprzez HDMI oraz klawiatura na USB. Maliny, które mają wbudowany moduł bezprzewodowy (Zero W oraz 3B) były podłączone do sieci WiFi. Wyniki możecie zobaczyć w poniższej tabelce.
Jak się dane o natężeniu zużywanego prądu mają, do faktycznie zużywanego prądu? Wystarczy podstawić je do wzoru i możemy policzyć ile watów zużywa.
P = U ∗ I ∗ cos(φ)
P – moc urządzenia, którą chcemy poznać (wyrażona w watach [W])
U – napięcie zasilania (zakładam dla uproszczeni równe 5V)
I – natężenie prądu w amperach (dane z tabelki powyżej; 1A = 1000mA)
cos(φ) – współczynnik mocy (dla uproszczenia założę, że wynosi „1”)
Raspberry Pi Zero W: P = 5 * 0.170 * 1 = 0.85W
Wynik ten oczywiście możemy pomnożyć przez 24h i otrzymamy dobowe zużycie w Wh. W przypadku Raspberry Pi Zero W będzie to 20.4Wh na dobę. Tera możecie sobie to porównać z ceną kWh prądu u waszego dostawcy. 1kWh zazwyczaj kosztuje od 50 do 60 groszy. Przy dobowym zużyciu na poziomie 16.8Wh, koszt działania Maliny to około 55 groszy(w zależności od stawki za 1kWh) za 49 dni pracy. Warto tutaj pamiętać, że w rzeczywistości wyniki będą trochę inne, bo podany powyżej koszt, dotyczy prądu zużytego tylko przez RPi i nie uwzględnia zasilania dla monitora i routera, które są również wymagane w tym wypadku (przyjąłem zużycie 170mA).
Tabelkę z informacjami, ile prądu zużywają poszczególne modele RPi znajdziecie poniżej.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
W lipcu zeszłego roku Cebulowa ruszyła kampania na Kickstarterze. Pamiętam, że pojawiły mi się o niej informacje w kilku miejscach. Chciałem nawet zamówić płytkę, ale w końcu tego nie zrobiłem. Nie wiedziałem za bardzo co miałbym z nią zrobić i bałem się trochę, że projekt, jak wiele innych, padnie po kilku miesiącach. Okazuje się jednak, że Onion Omega 2 żyje i ma się całkiem nieźle.
Dzięki uprzejmości sklepu Botland.com.pl, mogłem przez ostatni tydzień testować Cebulę[sorry, ale nie mogę tej płytki nazywać Omega 2. Cebula brzmi znacznie lepiej] w najmocniejszej wersji Omega 2+ wraz ze stacją PowerDockiem. Był to mój pierwszy kontakt z Cebulą i byłem ciekaw jak wypada na tle konkurencji. Przez konkurencję rozumiem tutaj głównie, trochę tańsze ESP8266. Choć trzeba przyznać, że w przedziale cenowym 40-55 zł, mieści się też Raspberry Pi Zero W. Jednak Cebuli jest znacznie bliżej do Huzzah ESP8266 czy WeMos D1 mini lub NodeMCU v3. Wszystkie te płytki są oparte o ESP8266 i można je kupić w cenie od 40 do 55 zł.
Onion Omega 2 występuje w dwóch wersjach. Podstawowej oraz wersji Plus. Obie posiadają taki sam układ MediaTek MT7688 (MIPS; 1 rdzeń; 32-bity; 580 MHz). Podstawowa wersja posiada 64 MB pamięci RAM, a wersja Plus – 128 MB. Dodatkowo wersja Plus dysponuje 32 MB pamięci Flash. Podstawowa Cebula ma tylko 32 MB pamięci Flash. Onion 2+ ma również slot kart pamięci microSD. Pozwala to rozszerzyć dostępną w niej przestrzeń "dyskową" ze standardowych 32 MB nawet do kilkudziesięciu GB. No i oczywiście jeszcze jedna drobna różnica – cena. Onion Omega 2 kosztuje 49 zł, natomiast Onion Omega 2 Plus… 74 zł.
Cebula posiada sporą liczbę dedykowanych modułów rozszerzeń. Przykładem może być Onion Power Dock, który posiada wyprowadzenie wszystkich pinów z cebuli oraz umożliwia jej zasilanie z baterii 3.7V. Dodatkowo ma on też port USB, włącznik, no i oczywiście możliwość zasilania wszystkiego poprzez microUSB. Onion Power Dock kosztuje 59 zł, ale warto się również przyjrzeć innym modułom. Ciekawy wydaje się Onion Ethernet Expansion czy Onion GPS Expansion - USB, czyli moduł wpinany do portu USB, któregoś z Docków i posiadający moduł GPS.
Wróćmy jednak do Cebuli. Model podstawowy za 49 zł powinien konkurować z wymienionymi wcześniej płytkami opartymi na ESP8266. Jest nawet od nich minimalnie droższy, więc powinien oferować coś więcej.
Cebula oferuje więcej pinów GPIO, bo aż 15. Płytki na ESP8266 zazwyczaj mają około 10, ale za to na każdym z nich mamy wyjście PWM. W przypadku Cebuli, tylko na dwóch. W dodatku płytki na ESP8266 prawie zawsze mają w standardzie microUSB, które jest bardzo wygodne do ich zasilania. Jak na razie Cebula nie błyszczy[to w końcu cebula, więc może powinna szczypać w oczy i wywoływać płacz?].
Onion Omega 2 wyposażona jest w układ MediaTek MT7688 i działa pod kontrolą LEDE (odmiana OpenWRT). Takie rozwiązania stosuje się w routerach i urządzeniach sieciowych. Pod tym względem Cebula radzi sobie znacznie lepiej od konkurencji. Zrobienie z niej WiFi Range Extender (urządzenie do zwiększania zasięgu sieci WiFi) zajęło mi jakieś 3 minuty. W połączeniu z Onion Power Dock i zasilaniem całości z baterii LiPo 3.7V (na 1500mAh Cebula potrafi działać ponad 10 godzin).
Kończąc już porównanie kwestii sprzętowych, które nie wypada dla Cebuli rewelacyjnie, warto przypomnieć, że za wspomniane 52 zł można kupić tak naprawdę kilka ESP8266. Wspomniane wcześniej, to komercyjne płytki, to właśnie ESP8266 z dodatkami. Jeśli mamy już gotowy projekt, wiemy dokładnie czego potrzebujemy i jak ma działać, możemy kupić "gołe" ESP8266 za kilka-kilkanaście złotych. Cena to chyba największa bolączka Cebuli.
Jak wygląda sprawa z programowaniem i obsługą Cebuli? Trochę inaczej niż z ESP8266. Przy ESP8266 używamy zazwyczaj Arduino IDE i wgrywamy kablem przygotowany wcześniej kod. Oczywiście można też rozbudować możliwości ESP8266 i dodać obsługę instalacji dodatkowych elementów poprzez WiFi, ale w standardzie używamy połączenia przewodowego.
W przypadku Cebuli jest zupełnie inaczej. Tutaj od samego początku wszystko robimy bezprzewodowo. Po podłączeniu zasilania (3.3V, podobnie jak przy ESP8266 bez microUSB; lub 5V z microUSB jeśli mamy np. Onion Power Dock) dioda LED na Cebuli zapali się kilkukrotnie i po paru sekundach urządzenie stworzy własną sieć WiFi. Będzie mieć ona nazwę Omega-[ostatnie 4 znaki adresu MAC Cebuli]. Do podłączenia się musimy podać hasło: 12345678. Gdy już jesteśmy połączeni, otwieramy przeglądarkę i wpisujemy w niej adres http://192.168.3.1 lub http://omega-ABCD.local/ jeśli nasz system operacyjny obsługuje Apple Bonjour [jeśli macie Windowsa, to najszybciej będzie wpisać adres 192.168.3.1 niż bawić się z Bonjourem]. Pod tym adresem zobaczymy bardzo ładny panel sterowania Cebuli. Zostaniemy poproszeni o login i hasło: root / onioneer. Przy pierwszym zalogowaniu się, zostanie uruchomiony Setup Wizard. Zostaniemy poproszeni o wybranie naszej domowej sieci WiFi, będziemy mieli możliwość konfiguracji Onion Cloud [Cebulowa Chmura!], a na sam koniec konfigurator poinformuje nas, żebyśmy zaktualizowali firmware Cebuli. Jeśli w naszym domowym WiFi mamy dostęp do internetu [dah!], to wystarczy wybrać opcję, Upgrade Firmware. Warto też zaznaczyć w tym miejscu opcję (jedyną dostępną): "Install Console". Pozwoli to nam później na łączenie się z Cebulą przez SSH.
Gdy przejdziemy proces konfiguracji po pierwszym uruchomieniu, możemy zobaczyć panel kontrolny Cebuli. Cały interface jest bardzo przejrzysty i czytelny. Mamy tutaj dostęp do wszystkich podstawowych funkcji urządzenia. Z tego miejsca możemy również zacząć pisać nasz kod dla Cebuli. Oczywiście moje stare nawyki zawsze biorą górę i wolę to robić w jakimś IDE niż w przeglądarce. Poniżej przedstawię w jaki sposób przerobić Cebulę na WiFi Range Extender (urządzenie do zwiększania zasięgu sieci WiFi).
Zaczynamy od połączenia się z Cebulą przez SSH. W terminalu wpisujemy ssh root@[IP_Cebuli] i podajemy hasło onioneer lub używamy aplikacji PuTTY, jeśli mamy Windowsa.
opkg update - na początku aktualizacje, jak zwykle.
opkg install nano - instalujemy edytor nano. Vi jest w standardzie, ale chcemy się zmieścić w 3 minutach, a w takim czasie nie zdążymy dowiedzieć się jak zamknąć Vi.
nano /etc/config/firewall - edytujemy plik konfiguracyjny firewalla wbudowanego w Cebulę. W sekcji "wan" zmieniamy option input, option output oraz option forward na ACCEPT. Zapisujemy plik [ctrl+W, a następnie y i enter].
/etc/init.d/firewall restart - restart firewalla i gotowe. Teraz Nasza Cebula "przepuszcza" do sieci WiFi, którą tworzy, internet z naszej domowej sieci WiFi.
Połączenie Cebuli z WiFi Range Extender wraz z Onion Power Dock dają niewielkie urządzenie, które może działać na baterii i w całkiem niezły sposób zwiększa zasięg naszego WiFi. To oczywiście tylko jedna z wielu możliwości Cebuli. Pełną dokumentację znajdziecie na stronie docs.onion.io.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
S.USV Pi Basic – UPS z RTC, czyli zasilanie awaryjne dla Raspberry Pi
S.USV Pi brzmi tajemniczo. Nie powinno to nikogo dziwić, bo ta niemiecka firma ma zaledwie kilka produktów w ofercie. Głównym jest właśnie S.USV Pi Basic oraz S.USV Pi Advanced.
UPS to zasilacz awaryjny, który ma pozwolić na działanie urządzenia po utracie zasilania z sieci. Rozwiązanie idealne działa w taki sposób, że nie zauważymy zaniku zasilania z sieci. Dostaniemy powiadomienie o przejściu na zasilanie awaryjne, a gdyby brak zasilania z sieci trwał dłużej, to system przed rozładowaniem baterii powinien się bezpiecznie wyłączyć, aby uniknąć błędów.
Zanim jednak przejdę do opisu podstawowych funkcji S.USV Pi Basic, przedstawię najważniejsze możliwości i opcje, chciałbym napisać kilka słów o różnicach pomiędzy modelem S.USV Pi Basic i S.USV Pi Advanced.
S.USV Pi Basic oraz S.USV Pi Advanced różni jedna rzecz. Model Advanced posiada dodatkowy system zasilania umożliwiający podłączenie zasilania od 7 V do 24 V. W przypadku wersji Basic nie ma tej sekcji zasilania. S.USV Pi bierze zasilanie z GPIO lub z zewnętrznej baterii dołączonej do zestawu(3,7 V, 300mAh). S.USV Pi Advanced umożliwia podłączenie dodatkowego zasilania.
S.USV Pi posiada również zegar czasu rzeczywistego(RTC). Jak wiecie RPi nie ma własnego RTC i czas w systemie pobierany jest z internetu. Jeśli nie mamy dostępu do sieci, to RPi pokazuje nam jakąś szaloną datę. RTC to zewnętrzny zegar, który dostarcza czas systemowi. Zasilany jest z baterii zewnętrznej podtrzymujący działanie RPi. Dzięki zastosowaniu RTC, S.USV Pi umożliwia ustawienie godziny o której nasz Malinka ma się wyłączyć lub włączyć. To bardzo przydatne rozwiązanie do automatyzacji wielu zadań.
S.USV Pi dostępne są w sklepie Botland.com.pl. Zarówno testowany przeze mnie model Basic jak i Advanced. Ceny tych płytek rozszerzeń to 189 zł za wersję Basic i 349 zł za Advanced. Czy warto dopłacać 160 zł za możliwość zasilania RPi napięciem z zakresu 7 V do 24 V? Na to pytanie musicie odpowiedzieć sobie sami.
W zestawie z S.USV Pi otrzymujemy baterię 3.7V o pojemności 300mAh. Nie jest to wiele i zgodnie z danymi producenta, powinna wystarczyć na około 30 minut pracy Maliny(Sprawdziłem z RPi 3B podłączonym do sieci WiFi, bezprzewodową myszką oraz podłączonym monitorem. Całość działała na zasilaniu z baterii 300mAh przez 28 minut i 26 sekund). Oczywiście jeśli do RPi podłączymy monitor HDMI oraz kilka urządzeń na USB, będziemy korzystać z sieci WiFi itd., czas ten spadnie. Baterie tego typu możemy kupić w wielu sklepach. W zależności od pojemności, czas pracy będzie się zmieniał. Od 20 zł możemy zamówić już takie o pojemności 1000mAh lub więcej. Pozwolą nam one na przynajmniej godzinę pracy RPi bez zasilania z sieci.
W pudełku wraz z S.USV Pi i baterią 300mAh znajdziemy jeszcze śrubki do montażu. Samo S.USV Pi to standardowa płytka rozszerzeń wpinana do GPIO. Ma wyprowadzone wszystkie Piny i pozwala na wpięcie kolejnych urządzeń go GPIO. Sam UPS nie wymaga instalacji dodatkowego programowania. Wszystko powinno działać zaraz po podłączeniu. Jednak działanie będzie się ograniczać tylko do zasilania RPi po utracie zasilania z sieci, oraz do ładowania baterii w czasie zasilania RPi z sieci. Warto tutaj zaznaczyć, w jaki sposób działa ten zasilacz UPS. Monitoruje on napięcie jakim jest zasilane RPi z sieci i gdy spada ono poniżej 4,75 V automatycznie zmienia źródło zasilania na baterię. Zapobiega to restartowi urządzenia. Dlatego system ciągle działa, pomimo zmiany źródła zasilania. Trzeba tutaj pamiętać, że RPi może działać przy niższym napięciu niż 4,75 V. Niektóre tańsze i słabsze zasilacze mogą dawać takie napięcie. Wtedy S.USV Pi, pomimo podłączenia do zasilania z sieci, będzie zmieniał od razu główne źródło zasilania na baterię.
Jeśli chcemy mieć dostęp do wszystkich opcji jakie daje nam S.USV Pi, musimy doinstalować odpowiednie oprogramowanie. Jest ono dostępne na stronie producenta. Nie mamy tutaj potrzeby pobierania specjalnej wersji systemu i skomplikowanej instalacji. Całość sprowadza się do instalacji jednego pakietu .deb.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python-smbus i2c-tools - oba pakiety powinny być domyślnie zainstalowane wraz z systemem, ale zawsze warto się upewnić.
wget http://seprotronic.com/susv/files/software/susvd-en-2.2-systemd-all.tar.gz - pobieramy dodatkowe oprogramowanie ze strony producenta.
sudo tar -xvf susvd-en-2.2-systemd-all.tar.gz - rozpakowujemy paczkę.
cd /opt/susvd - przechodzimy do katalogu, w którym znajduje się zainstalowane oprogramowanie.
sudo ./susvd -start - uruchamiamy!
sudo hwclock -r - tym poleceniem możemy sprawdzić aktualną godzinę zapisaną w zegarze czasu rzeczywistego. Jeśli nie będzie poprawna, powinniśmy połączyć RPi z internetem i gdy w systemie będziemy mieć poprawny czas wpisać polecenie sudo hwclock -w.
sudo ./susv -timer 10 - po ilu sekundach od przejścia na zasilanie z baterii, Raspberry Pi ma bezpiecznie się wyłączyć. Domyślna wartość to 10 sekund. Jeśli chcemy wyłączyć tę funkcję używamy polecenia sudo ./susv -timer -1.
Raspberry Pi zostanie bezpiecznie wyłączone, gdy jest zasilane z baterii i jej poziom naładowania spadnie poniżej 10%. Funkcję tę można wyłączyć pleceniem sudo ./susv -auto 0, choć nie polecam tego rozwiązania. Jeśli chcemy włączyć tę funkcję ponownie, wpisujemy sudo ./susv -auto 1.
./susv -status - tym poleceniem możemy wyświetlić w Terminalu zestaw informacji na temat ustawień naszego UPSa oraz informacje czy w danej chwili mamy podłączone zasilanie z sieci czy „jedziemy” na baterii, zobaczyć dokładny czas oraz poziom naładowania naszej baterii.
./susv -mail 1 - polecenie to pozwala włączyć powiadomienia mailowe. Domyślnie są one wyłączone. Oczywiście musimy je później skonfigurować. W tym celu zmieniamy katalog cd /opt/susvd/scripts i edytujemy skrypt odpowiedzialny za wysyłanie maili z powiadomieniami sudo nano mail.py. Domyślnie adres smtp ustawiony jest na gmaila i jedyne co musimy zrobić to podać naszego maila oraz hasło. Możemy też edytować treść powiadomienia mailowego.
./susv -boot 1 - włączenie automatycznego wybudzania Raspberry Pi. Domyślnie opcja ta jest wyłączona. Pozwala ona dzięki wbudowanemu zegarowi czasu rzeczywistego(RTC), na ustawienie o której godzinie, ma się uruchamiać nasza Malina. Po włączeniu tej funkcji, ustawiamy godzinę wybudzania. Robimy to poleceniem ./susv -setboot HH:mm:ss, gdzie „HH” odpowiada za godzinę, „mm” za minuty, a „ss” za sekundy.
./susv -shutdown 1 - analogicznie jak w przypadku automatycznego uruchamiania RPi o konkretnej godzinie, możemy je też wyłączać w taki sposób. Godzinę zamknięcia ustawiamy poleceniem ./susv -setshutdown HH:mm:ss. Opcja domyślnie jest wyłączona.
./susv -vin [0] - dzięki temu poleceniu możemy sprawdzić jakim napięciem zasilane jest w danej chwili RPi. Możemy dzięki temu zobaczyć, czy nasz zasilacz faktycznie daje 5V.
./susv -capbat [0] - sprawdzenie poziomu naładowania baterii.
Spis wszystkich poleceń i opcji znajdziecie w pliku PDF na stronie producenta. Więcej informacji, jak również najnowsze wersje oprogramowania do obsługi UPSa dostępne jest również tutaj.
Jestem bardzo pozytywnie zaskoczony działaniem S.USV Pi Basic. Automatyczne zamykanie systemy przy 10% mocy baterii, powiadomienia email, bezproblemowa obsługa i niezauważalna zmiana źródła zasilania. Wszystko to działa dokładnie tak jak powinno. S.USV Pi nawet w wersji Basic nie należy do najtańszych rozwiązań, ale spełnia wszystkie swoje zadania bez najmniejszego problemu. Dawno nie byłem tak pozytywnie zaskoczony działaniem i bezproblemowością płytki rozszerzeń dla Raspberry Pi.
<
p>Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Grafana i InfluxDB, czyli wykresy Domoticz na sterydach
Grafana umożliwia tworzenie o wiele lepszych wykresów niż Domoticz. Do działania potrzebuje bazy danych. W tym celu użyjemy InfluxDB, którego da się łatwo połączyć z Domoticzem.
Przejdźmy zatem do instalacji. W tym celu będziemy potrzebować Malinki z systemem Raspbian oraz zainstalowanym na niej Domoticzem. Jak go zainstalować przeczytacie tutaj. W celu dalszej instalacji będziemy potrzebować dostępu do internetu w Malinie, myszki, klawiatury i monitora, albo dostępu przez SSH(można włączyć w sudo raspi-config).
sudo apt-get update
sudo apt-get upgrade - aktualizujemy listę repozytoriów, oraz pakietów do najnowszej wersji.
wget https://dl.influxdata.com/influxdb/releases/influxdb_1.2.4_armhf.deb - pobieramy najnowsza wersję InfluxDB. Na chwilę obecną (4.07.2017) jest to wersja 1.2.4. Najnowsza wersja zawsze dostępna jest na stronie influxdata.com. Interesuje nas wersja "Linux Binaries (ARM)".
sudo nano /etc/influxdb/influxdb.conf - otwieramy plik konfiguracyjny InfluxDB. Musimy w nim zmienić kilka wpisów(głównie to usunięcie "#" i zmiany false na true). Wymienione niżej fragmenty pliku, są dokładnie w takiej formie w jakiej powinniśmy je mieć po wszystkich zmianach. Ustawcie je sobie tak samo.
[admin] # Determines whether the admin service is enabled. enabled = true # The default bind address used by the admin service. bind-address = ":8083"
[http] # Determines whether HTTP endpoint is enabled. enabled = true # The bind address used by the HTTP service. bind-address = ":8086"
sudo service influxdb start - uruchamiamy InfluxDB i otwieramy przeglądarkę na naszym komputerze. Wpisujemy adres: "http://[IP_Maliny]:8083/". W "Connection Settings" wpisujemy username i password. W obu miejscach wpisujemy "domoticz". W okienku "Host" podajemy adres IP naszego RPi. Następnie tworzymy nową bazę danych o nazwie… domoticz. Gotowe. To wszystko jeśli chodzi o InfluxDB.
Teraz musimy ustawić wysyłanie danych z Domoticza do InfluxDB. W tym celu logujemy się na nasz panel administratora Domoticza i wybieramy Konfiguracja>Więcej Opcji>Wysyłanie danych>HTTP. Jako adres podajemy http://[IP_Maliny]:8086/write?db=domoticz&u=domoticz&p=domoticz&precision=ms. W danych wpisujemy device_%V value=%v %t3, a Metodę zmieniamy na POST. Wybieramy nasze urządzenia i dane, które chcemy przekazywać. Całość powinna wyglądać jak na screenie poniżej.
wget https://github.com/fg2it/grafana-on-raspberry/releases/download/v4.3.2/grafana_4.3.2_armhf.deb - pobieramy najnowszą wersję Grafana dla RPi. Na chwilę obecną jest to wersja 4.3.2. Najnowsza wersja jest zawsze dostępna na stronie projektu na githubie.
sudo apt-get install -y adduser libfontconfig
sudo dpkg -i grafana_4.1.2-1487023783_armhf.deb
Po instalacji musimy jeszcze dodać Grafana do aplikacji uruchamianych przy starcie systemu. Możemy to zrobić poprzez dodanie odpowiedniego polecenia do pliku "/etc/rc.local".
sudo nano /etc/rc.local - wklejamy sudo service grafana-server start pomiędzy linijki # By default this script does nothing. i # Print the IP address.
sudo reboot - po restarcie mamy wszystko gotowe. Możemy otworzyć panel Grafana w przeglądarce i dokończyć tam konfigurację. Znajduje się od pod adresem http://[IP_Maliny]:3000. Domyślny login i hasło to admin/admin. Źródło danych powinniśmy skonfigurować zgodnie z ustawieniami InfluxDB, czyli tak jak na screenie poniżej.
Gotowe, teraz możemy cieszyć się lepszymi wykresami, które możemy konfigurować praktycznie w dowolny sposób.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
MagPi z zestawem do budowy asystenta głosowego od Google
Wraz z 57 numerem magazynu MagPi dostajemy zestaw części, z których możemy zbudować niewielkie urządzenie na wzór „inteligentnego głośnika” od Amazonu z Alexą na pokładzie. Zestaw w MagPi jest darmowym prezentem od Google i nie ma wpływu na cenę gazety. Jak można się było spodziewać, taki prezent spowodował wyprzedanie się wszystkich egzemplarzy pisma w mgnieniu oka. Magazyn dostępny jest tylko w sklepach w UK. Można go zamówić z wysyłką do Polski w sklepie The Pi Hut za £6 + £4 wysyłka, ale oczywiście wszystkie egzemplarze rozeszły się w niecałe 10 minut.
Udało mi się dostać jeden z egzemplarzy magazyny wraz z zestawem do budowy urządzenia z Google Assistant. Jeśli nie wiecie jeszcze co to jest Google Assistant, to zerknijcie na serwisy technologiczne. Wczoraj na konferencji Google, była o nim mowa i na pewno wszędzie piszą o asystencie od Google. Zanim przejdę do opisu tego co wchodzi w skład zestawu i jak wygląda budowa samego urządzenia, to chciałbym ustalić jak będę je nazywał. W MagPi pojawia się nazwa AIY Projects (AIYourself), później jest mowa o voice kit, a Google nazywa to Google Assistant i samo urządzenie zapytane o imię, odpowiada Google Assistant, więc daruję sobie wszystkie aiy-kity i też będę używał nazwy Google Assistant. Wydaje mi się, że samo Google jest winne temu zamieszaniu z nazewnictwem. W dodatku, gdy zapytamy naszego asystenta o wymiary, to poda specyfikację głośniczka Google Home.
Google Assistant, to rozbudowana wersja „OK Google” znanego z telefonów z Androidem. To taki odpowiednik Siri od Apple czy Alexy od Amazonu. Wraz z MagPi otrzymujemy pełen zestaw części do złożenia takiego głośniczka z wbudowanym mikrofonem oraz przyciskiem. W zestawie nie ma tylko Raspberry Pi. Malinkę musimy mieć swoją.
Pierwszym elementem budowy naszego Google Assistant, jest złożenie obudowy ze specjalnie wyciętej tektury (chyba im dużo została po Google Cardboard). Następnie do naszego Raspberry Pi (zalecają użycie RPi 3B, ale podobno z Zero też działa. Nie sprawdzałem) wpinamy specjalną płytkę zaprojektowaną dla tego projektu. Ma ona wyprowadzenie kilku pinów GIOP oraz miejsce na wpięcie dwóch taśm oraz podłączenie głośniczka. Kolejnym elementem budowy jest podłączenie kabli do głośnika, a następnie podłączenie taśmy do przycisku oraz drugiej do płytki z dwoma mikrofonami. Na koniec pozostaje nam najtrudniejszy element, czyli przyklejenie płytki z mikrofonami do papierowej obudowy. Robiłem to chyba z cztery razy i za każdym razem odklejała mi się taśma klejąca.
Gdy uda nam się poskładać całość i zamknąć obudowę, pozostaje już tylko pobranie i skonfigurowanie oprogramowania odpowiedzialnego za sterowaniem całością. W tym przypadku najprościej udać się na stronę aiyprojects.withgoogle.com/voice i pobrać specjalnie przygotowaną wersję systemy Raspbian. Po wgraniu systemy na kartę pamięci pozostaje nam tylko podłączyć monitor, klawiaturę i myszkę w celu skonfigurowania połączenia z internetem oraz pobranie kluczy autoryzujących nasze urządzenie.
Specjalna wersja Raspbiana, ma też na pulpicie 3 skrypty, sprawdzające poprawność działania wszystkich elementów urządzenia. Gdy wszystko jest w porządku, możemy przejść do rejestracji na Google Cloud Platform. Dostęp do API związanych z rozpoznawaniem mowy oraz AI jest płatny ($300 na rok), ale na szczęście dostajemy przy tym projekcie darmowe 12 miesięcy. Dokładny opis wraz ze screenami tworzenia projektu oraz kluczy do autoryzacji znajdziecie tutaj, więc nie będę go opisywał.
Na koniec przechodzimy do najciekawszych opcji, czyli dodawania własnych polecenim głosowych oraz tworzenia trigger, czyli takiego „OK Google” czy „Hej Siri”. Domyślnie mamy dostępny przycisk do uruchomienia nagrywania, ale w kodzie jest też gotowa druga opcja - rozpoznawanie poleceń po klaśnięciu. Kolejne triggery możemy stworzyć sami.
Jeszcze ciekawsze od triggerów jest tworzenie własnych poleceń dla Google Assistant. Mogą one wykonywać praktycznie dowolny kod napisany w Pythonie. W MagPi opisany jest przykład zapalania LEDa podłączonego do GPIO04. Dwa niewielkie fragmenty kodu, które musimy dodać, aby nasz asystent głosowy poznał nowe sztuczki, możecie znaleźć tutaj. Całość to dosłownie 15 linijek.
Google Assistant można zbudować bez zestawu od Google. Wystarczy nam do tego Raspberry Pi z mikrofonem i głośnikiem. Jednak to niewątpliwie miły prezent od Google. Najważniejszym elementem jest tutaj łatwość z jaką można integrować asystenta głosowego z projektami, które już mamy. W najbliższym czasie pewnie zobaczymy popularyzację takich rozwiązań i dodawanie kontroli głosowej w kolejnych urządzeniach. Jeśli miałbym wymienić jakiś minus tego rozwiązania, to wymieniłbym nawet trzy. Pierwszym jest wymóg rejestracji w płatnej usłudze (API Google Cloud Platform kosztuje $300, tylko pierwszy rok mamy za darmo). Drugim fakt, że to urządzenie podsłuchuje nas przez cały czas i w dodatku wysyła informacje do ogromnej korporacji. Trzecim minus to oczywiście coś co z czasem zniknie, czyli brak obsługi języka polskiego. Obecnie Google Assistant na Raspberry Pi wspiera tylko język angielski, francuski, niemiecki, indyjski, japoński, portugalski oraz hiszpański.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Raspberry Pi Zero W - recenzja najmniejszego Raspberry Pi z WiFi [KONKURS]
Na pierwszy rzut oka Zero W nie różni się niczym od zwykłego Zero. Wygląda praktycznie identycznie, wymiary ma te same, procesor taki sam, też taktowany na 1 GHz, pamięci RAM również 512 MB. Nawet wyjścia te same i rozmieszczone w identyczny sposób. Warto zapłacić dwa razy więcej za prawie takie samo urządzenie?
Testy nowych modeli Raspberry Pi to zazwyczaj dość problematyczna sprawa. Malina najczęściej jest używana razem z Kodi, więc po raz kolejny opisać instalację i wrażenie używania OSMC? Kolejne zastosowanie to Raspbian i podłączenie jakiegoś czujnika lub miernika. Ciężko przy czymś taim pokazać jakąś różnicę w urządzeniach. Nawet przy tym wspomnianym OSMC równice w szybkości działania mogą być bardzo subiektywnym odczuciem i w sporej mierze zależą od karty pamięci. Zresztą, jeszcze gdyby Zero i Zero W różniły się podzespołami, to miałoby to sens, ale jedyna różnica to wbudowane WiFi oraz Bluetooth 4.1. Postanowiłem więc skupić się na wadach zwykłego Zero i tego co mnie najbardziej w nim irytowało.
Od czasu premiery Raspberry Pi 3 B strasznie się rozleniwiłem i nie wyobrażam już sobie używania Maliny bez WiFi. Nie chodzi tutaj nawet o przesyłanie jakiś wielkich plików. Często RPi leży na biurku, obok mam laptopa z którego łączę się z Maliną przy użyciu SSH i coś na niej robię. Brak konieczności używania kabla ethernet mocno ułatwia życie. Zwłaszcza, jeśli nie ma się złącza ethernet w laptopie i za każdym razem trzeba szukać przejściówki. Zresztą kabla też zawsze trzeba szukać, a WiFi jest wszędzie dookoła i tylko czeka na użycie. Gdy chciałem użyć Zera, to musiałem poszukać przejściówki z microUSB na USB i karty WiFi na USB. Mam kilka takich kart jeszcze z czasów pierwszego Raspbery Pi (Ktoś je jeszcze pamięta?). Zero z takim sterczącym „ogonkiem”, to często było za mało, bo chciałem też podłączyć monitor. Dochodzi nam kolejna przejściówka z miniHDMI na zwykłe HDMI. To prawda, że mam laptop od Apple i przejściówki nie są mi obce, ale dlaczego muszę mieć też komplet dla Maliny…
Zazwyczaj kończyło się to tak, że zamiast używać do czegoś Zera, to brałem z szafki 3B. Prościej, łatwiej i wygodniej. Oczywiście, gbydym chciał zbudować coś małego, to pewnie byłbym się przemógł i użył Zera ze względu na jego wymiary… a nie, chwila… W takim wypadku użyłbym ESP8266 i znowu poradziłbym sobie bez kabli, bo przecież ma zbudowane WiFi. W dodatku kosztuje mniej niż Zero. Co prawda nie ma w ogóle USB czy HDMI, ale przecież ma kilka pinów GPIO i można podłączyć dowolne czujniki i przesyłać z nich dane. Bezprzewodowo. Do Maliny z Domoticzem. Ostatnio głównie w taki sposób rozwiązywałem obsługę i sterowanie przeróżnych urządzeń. Przerobiłem nawet mój filtr powietrza w taki sposób, że ma WiFi. Właśnie dzięki użyciu wspomnianego ESP8266.
Wróćmy jednak do Zera. Wiele osób chciało je kupić z powodu ceny. Jest to w pełni uzasadnione. 26 złotych za Zero to świetna cena. Problemem była i wciąż jest dostępność Zera. Zazwyczaj nie ma go w sklepach, a gdy jest to wyprzedaje się w kilkanaście minut.
W przypadku Zero W mamy dwa razy wyższą cenę, czyli 52 zł. Obecnie jest je łatwiej kupić. Jedynym organiczeniem jest limit jednej sztuki na zamówienie, ale w przypadku zwykłego Zero też tak mamy. Oczywiście to cena samego Zero W. Należy pamiętać, że Malina ta do działania potrzebuje jeszcze karty pamięci microSD oraz zasialcza 5V i kabla z microUSB. Oczywiście zasilacz i kablem ma każdy, bo tak zazwyczaj ładujemy naszego smartfona czy czytnik ebooków. Jednak nawet przy tej wyższej cenie, to tylko 26 zł różnicy. Warto się zastanowić czy za 26 zł kupimy przejściówkę z microUSB na USB oraz kratę WiFi. Może być ciężko.
Zero W wciąż kosztuje niewiele i rozwiązuje jeden z największych problemów, które miałem z Zerem. W końcu nie muszę do niego podpinać nic innego niż zasilanie. Wbudowane WiFi to spore udogodnienie. Z Zero W spędziłem ledwo jeden dzień, ale chciałbym kupić kilka sztuk i nawet pokusić się użycie ich w kilku projektach, gdzie obecnie używam ESP. Dodatkowo chyba zamontuję je na stałe za telewizorem. Jestem ciekaw jak sobie poradzi z RasPlex’em i streamowaniem wideo z dysku NAS.
Raspberry Pi Zero W, które mam okazję testować dostałem od sklepu Botland.com.pl. Możecie w nim zamówić Raspberry Pi Zero W za 52 zł lub zwykłe Raspberry Pi Zero za 26 zł.
KONKURS
W komentarzy pod tym wpisem, opiszcie swój pomysł na uczynienie waszego domu lub mieszkania bardziej inteligentym dzięki Raspberry Pi. Możecie puścić wodzę fantazji i poza samym RPi opisać użycie innych elementów dostępnych w sklepie Botland.com.pl (podajcie linki do nich).
Autor najciekawszego i najbardziej oryginalnego pomysłu wygra Raspberry Pi Zero W.
Konkurs trwa do środy 10 maja. W czwartek skontaktuję się ze zwycięzcą i postaram się w piątek wysłać mu Zero W.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Model Zero, to płytka o wymiarach 65mm x 30mm x 5mm(o wiele mniejsza niż obecne modele).
Układ Broadcom BCM2835(1GHz ARM11) - Do dyspozycji mamy jednordzeniowy procesor, taktowany na 1GHz. Oznacza to mocniejszy układ niż w modelach A/B/B+(o około 40%), ale słabszy niż w 2B czy Modelu 3B.
512MB Pamięci RAM - Dla zainteresowanych - są to układy LPDDR2 SDRAM.
Wbudowany moduł Bluetooth 4.0 oraz WiFi działające w paśmie 2.4GHz i standardach 802.11b/g/n.
Zero posiada dokładnie to samo 40 pinów GPIO co model A+/B+/2B/3B.
micro-SD - podobnie jak w Modelu A+/B+/2B/3B system instalujemy na karcie pamięci micro-SD.
Dwa złącza micro-USB. Jedno do zasilania, a drugie do podłączenia urządzeń peryferyjnych.
mini-HDMI - mniejsze złącze HDMI, więc będziemy potrzebowali przejściówki na zwykłe.
Dodatkowo pojawiła się też oficjalna obudowa dla nowego Zero.
Zdjęcie w nagłówku: raspberrypi.org
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Dzisiaj będzie coś zupełnie innego niż zwykle i nie do końca związanego z Raspberry Pi. W zasadzie w ogóle nie związanego z Raspberry Pi.
Wszyscy doskonale wiemy, że stan powietrza w Polsce jest delikatnie mówiąc daleki od normy, a co dopiero od tego jaki powinien być. Co kilka dni czytamy o przekroczeniu norm o 500% czy 700%, a o ponad 1000% nie będę wspominał. Tu oczywiście mowa o naszych Polskich normach, które i tak mocno odbiegają od tych europejskich. Mógłbym wkleić teraz kilkanaście linków do wpisów na temat stanu powietrza, ale wkleję tylko ten jeden do danych ze stacji pomiarowych. Sprawdźcie sobie sami na stronie GIOŚ jak to wygląda w Waszej okolicy. Najprawdopodobniej znowu przekroczone jest stężenie pyłu PM10 i PM2.5. Zwłaszcza w godzinach wieczornych.
Sam zaciekawiłem się tematem filtrów i dosyć szybko okryłem, że wszystkie wyglądają jak przenośny klimatyzator i kosztują zazwyczaj ponad dwa tysiące złotych. Szybko mnie to zniechęciło do pomysłu zakupu jednego z nich. Postanowiłem samemu zbudować taki filtr. W dodatku chciałem, żeby nie wyglądał jak plastikowy szary klocek.
Pomysł filtra nie zrodził się z niczego. Już rok temu myślałem nad zrobieniem sobie mobilnego urządzenia do pomiaru pyłu PM10 i PM2.5. Jednak ugrzązłem przy kalibracji, bo musiałbym nad tym spędzić kilka dni siedząc przy jednej ze stacji pomiarowych w Polsce i porównywać wyniki. Zarzuciłem wtedy ten pomysł, ale sporo nauczyłem się na temat samych zanieczyszczeń powietrza i sposobów ich badania.
W tym roku, tuż przed Świętami postanowiłem rozpocząć składanie własnego filtra powietrza. Miałem przy tym kilka założeń. Oczywiście jednym z nich był wspomniany wcześniej wygląd. Jednak nie był on jedynym. Chciałem jak najwięcej elementów urządzenia wykonać za pomocą technologii, które znam i najlepiej wykonać je własnoręcznie.
Filtr miał mieć wbudowany czujnik zanieczyszczeń powietrza. Nie samego pyłu zawieszonego, ale ogólnie zanieczyszczeń powietrza. Tak aby mógł wykrywać również poziom CO2, gazu, benzenu czy dym papierosowy. Po wykryciu zanieczyszczeń, urządzenie powinno się samo uruchomić i filtrować powietrze. Dodatkowo powinno informować użytkownika o działaniu. Całość powinna być w pełni bezobsługowa i nie wymagać od osoby posiadającej taki filtr żadnego dodatkowego działania.
Zanieczyszczone powietrze postanowiłem oczyszczać poprzez trzy filtry. Pierwszym z nich jest gąbka HEPA, kolejnym granulat z aktywnego węgla, a ostatnim gąbka z aktywnym węglem. Powietrze po przejściu przez te trzy filtry powinno być wydmuchiwane z urządzenia przez dwa wiatraczki.
Przy takich założeniach dość naturalnym rozwiązaniem wydało się wydrukowanie potrzebnych elementów na drukarce 3D. Jakieś 36 godzin i około 400 gram filamentu później, miałem gotowe swoje elementy do Filtra. Oczywiście to tylko plastikowe elementy znajdujące się wewnątrz urządzenia.
Kolejnym etapem była elektronika. Tutaj układem sterowania zostało Arduino Nano. Za czujnik posłużył moduł mierzący jakość powietrza - MQ-135. Działanie jest dość proste. Gdy poziom zanieczyszczenia przekroczy wskazany poziom, urządzenie uruchamia wiatraczki i zapala diody LED, które sygnalizują działanie Filtra.
Gdy całość działała zgodnie z oczekiwaniem zamówiłem aktywny węgiel oraz pozostałe elementy oczyszczające powietrze w urządzeniu i przeszedłem do ostatniego elementu - obudowy.
Postanowiłem wykonać ją z drewna o grubości 3 mm. Wszystkie części zostały laserowo wycięte. Mogą zostać zabarwione na dowolny odcień przy użyciu bejcy do drewna. Jeden z elementów bocznych obudowy został wycięty z akrylu o grubości 3 mm. To właśnie do tego elementu zamocowałem diody sygnalizujące działanie urządzenia. Gdy miałem już to wszystko gotowe, to mogłem przejść do złożenia całości. Filtr zasilany jest ładowarką 12V 1.25A i podłączenie jej jest jedyną czynnością wymaganą od użytkownika.
W czasie budowy tego Filtra wpadłem jeszcze na kilka pomysłów, które chciałbym zrealizować i wprowadzić w kolejnej wersji urządzenia.
Jeśli jesteście zainteresowani rozwojem projektu dajcie mi znać w komentarzu i zerknijcie na aukcję, gdzie możecie licytować opisany powyżej i Filtr. Pieniądze z aukcji i darowizn pozwolą na dalszy rozwój projektu i stworzenie kolejnej wersji urządzenia. Zapraszam również do polubienia profilu SmoothAir na FB. Będę tam informował na bierzaco o pracach nad kolejnymi modelami Filtra.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Raspberry Pi i sterowanie przekaźnikami radiowymi 433Mhz
Ponad rok temu kupiłem w Biedronce nadajniki Clarus sterowane pilotem. Wpina się je do gniazdka i pozwalają na zdalne włączenie i wyłączenie podłączonego do nich urządzenia. Działają, podobnie jak wszystkie takie włączniki, na częstotliwości 433 MHz. Pilot nadaje radiowo odpowiedni sygnał, który oznacza włączenie lub wyłączenie danego gniazdka.
Szybko stwierdziłem, że ciekawym pomysłem jest sterowanie tymi przekaźnikami z poziomy Raspberry Pi np. z zainstalowanym Domoticzem. Tani nadajnik i odbiornik na AliExpressie kosztuje poniżej jednego euro. W Polsce spokojnie można je kupić w cenie poniżej 10 zł. Oczywiście mają one słaby zasięg i często są zawodne. Pierwszy zestaw, który zamówiłem zupełnie nie działał. Dopiero za drugim razem się udało.
Całe zadanie, które przed nami stoi jest dosyć proste. Odbiornik radiowy 433MHz podłączony do RPi pozwoli nam sczytać kody do włączenia i wyłączenia danego przekaźnika. Następnie nadajnik umożliwi wysyłanie tych samych kodów w celu włączenia lub wyłączenia przekaźnika.
W przypadku tych tanich nadajników, mają one 3 piny: 5V, GND oraz Data. Odbiorniki natomiast posiadają 4 piny: 5V, GND oraz dwa piny DATA (używa się tylko jednego z nich). Jak łatwo się domyślić, zasilanie (5V i GND) możemy pobrać bezpośrednio z naszej Maliny, a piny DATA to dowolne programowalne piny w GPIO. Domyślnie najlepiej użyć pinu GPIO0 dla nadajnika oraz Pinu GPIO2 dla odbiornika.
Do obsługi pobierania i wysyłania danych użyjemy 433Utils. Zanim jednak do tego przejdziemy, musimy upewnić się czy mamy zainstalowane WiringPi.
git clone git://git.drogon.net/wiringPi
cd ~/wiringPi
./build
sudo reboot - po restarcie możemy przejść do instalacji 433Utils.
sudo ./RFSniffer - teraz wystarczy, że na pilocie do naszych przekaźników zaczniemy naciskać kolejne przyciski. Będą się nam wtedy na ekranie pojawiać kolejne wysyłane przez pilot kody. Musimy je sobie gdzieś skopiować. Gdy już zapisaliśmy, który kod odpowiada za włącznie i wyłączenie, każdego z kolejnych przekaźników możemy przejść dalej.
sudo ./codesend Kod_Przekaźnika - sprawdzamy czy wszystko działa. Wysyłając, któryś z zapisanych przed chwilą kodów. Jeśli coś w tym momencie nie działa i kod, który powinien wyłączyć nasz przekaźnik, nie działa i nic nie robi. Najprawdopodobniej podłączyliśmy nadajnik do złego pinu. Jeśli jednak wszystko jest poprawnie podłączone zostaje jeszcze jedna opcja: edycja pliki codesend.cpp.
nano codesend.cpp i pomiędzy linijką RCSwitch mySwitch = RCSwitch();, a if (protocol != 0) mySwitch.setProtocol(protocol); dodajemy mySwitch.setPulseLength(168);. Zapisujemy plik, a następnie wpisujemy w terminalu make all i sprawdzamy czy teraz da się wysłać zapisane wcześniej kody: sudo ./codesend Kod_Przekaźnika.
W tym momencie możemy przejść do Domoticza. Jak, go zainstalować opisałem tutaj, dlatego teraz opiszę tylko, w jaki sposób dodać nasze przełączniki i sterować nimi z poziomu przeglądarki internetowej lub aplikacji na telefonie.
Otwieramy w przeglądarce naszego Domoticza i wchodzimy w Konfiguracja -> Sprzęt. Dodajemy wirtualne urządzenie Dummy wpisujemy nazwę np. 433 MHz i klikamy Dodaj. Teraz u góry obok naszego urządzenia klikamy „Utwórz wirtualne czujniki”. Wpisujemy nazwę np. „Gniazdko 1” oraz ustawiamy typ „Przełącznik” i dodajemy wszystkie nasze gniazdka. Gdy mamy dodane wszystkie przekaźniki wchodzimy w „Przełączniki” i klikamy „Edycja” i w „Włącz akcję” wpisujemy: script:///home/pi/433Utils/RPi_utils/codesend Kod_Przekaźnika. Podobnie w „Wyłącz akcję”. Oczywiście w miejsce Kod_Przekaźnika wpisujemy zapisane przez nas wcześniej kody do włączeniu i wyłączenia przekaźnika. Powtarzamy tę czynność w przypadku każdego utworzonego gniazdka. Gotowe! Teraz z poziomu Domoticza lub aplikacji mobilnej do sterowania nim, możemy kontrolować nasze gniazdka radiowe działające na częstotliwości 433MHz.
Na koniec warto jeszcze dodać, że do nadajnika możemy przylutować antenę(np. kawałek przewodu), aby zwiększyć zasięg nadawanych komunikatów.
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.
Artykuły na temat Raspberry Pi w styczniowym wydaniu miesięcznika „Linux Magazine” zawierają teksty opisujące sterowanie czasowe Raspberry Pi przy użyciu programowalnej wtyczki elektrycznej WiFi oraz test bestsellera w niskiej cenie - Raspberry Pi Zero.
Artykuł wiodący opisuje umieszczanie w zdjęciach informacji dotyczących położenia geograficznego za pomocą pary narzędzi do geotagowania obrazów cyfrowych digiKam i GPS Correlate. Z wydaniem powiększonym o cztery strony rozpoczyna się też nowy dział LinuxVoice z pytaniami i odpowiedziami, najciekawszymi projektami i grami, samouczkami i felietonem. Na dołączonym DVD znajduje się Fedora 25.
Wydanie na allegro (bezpłatna dostawa): http://allegro.pl/show_item.php?item=6661152615 e-wydanie „Linux Magazine” 12/2016 na allegro (bez płyty DVD): http://allegro.pl/show_item.php?item=6667650456 pakiety Linux Magazine na allegro: http://allegro.pl/show_item.php?item=6368163954 pakiet wydań Raspberry Pi: http://allegro.pl/show_item.php?item=6597038039 megapakiety Linux Magazine na allegro: http://allegro.pl/megapakiet-wydan-linux-magazine-z-dvd-i6404755490.html i http://allegro.pl/megapakiet-e-wydan-linux-magazine-i6403798011.html
Jeśli chcesz podyskutować lub wymienić się swoimi spostrzeżeniami i opiniami o Raspberry Pi, albo po prostu szukasz inspiracji w jaki sposób wykorzystać swoją Malinkę, zapraszamy do naszej grupy na FB! - facebook.com/groups/malinowepi i do polubienia naszego profilu na Facebooku - facebook.com/malinowepi oraz zapisania się na Malinowy Newsletter.