Cosik – czyli Nordic Thingy:52 – pierwsze wrażenia

‚Cosik’ wylądował u mnie na warsztacie:) Nordic Semiconductor Thingy:52 – to raczej rzadki gość w rodzimych projektach zrób-to-sam. Niewiele sklepów go sprzedaje, a cena w TME to prawie 180 złotych netto. W detalu byłoby to pewnie ponad 220. Za tyle można już spokojnie kupić Raspberry Pi z osprzętem. A szkoda… bo moduł jest naprawdę ciekawy.

Już samo pierwsze wrażenie jest bardzo pozytywne. Niewielka skrzyneczka ma rozmiary 6x6cm i 2 cm grubości. Obleczona w czarną gumę z akumulatorem LiPo w środku – sprawia wrażenie solidności i kompletności. Aż zachęca, żeby… COŚ z nią zrobić:)

Całością zawiaduje chip nRF52832 zgodny z Bluetooth 5. Bluetooth służy do wymiany danych (łącznie ze streamowaniem audio), jak i do programowania. Dodatkowo, Thingy może komunikować się po NFC. Oprogramowanie umożliwia łączenie się z chmurą IFTTT (If This Then That). W specyfikacji płytki uderza imponująca ilość wbudowanych  czujników:

  • wilgotności i temperatury,
  • cisnienia,
  • CO2 i TVOC,
  • koloru i intensywności światła,
  • ruchu: akcelerometr, żyroskop i kompas,
  • mikrofon,

Na płytce znajduje się też pojedynczy przycisk typu micro-switch, głośnik i programowalna dioda RGB.

Cały projekt i wszystkie materiały dotyczące Thingy (łącznie z dostarczonym kodem) dostępne są w sieci na zasadach otwartego oprogramowania.

Pierwsze wrażenie

‚Cosik’ dostarczany jest w niewielkim kartonowym pudełku.

W środku znajdziecie Thingy w gumowej osłonce nałożonej na plastikową obudowę. Poza tym – nie ma żadnych dodatkowych akcesoriów, instrukcji czy karteczek w stylu ‚witaj świecie’.

‚Gumówka’ to całkiem oryginalny – ale i praktyczny gadżet. Jest w stanie zamortyzować mniejsze upadki. Bez strachu można nosić Thingy w torbie. Podobno w sprzedaży są również inne kolory niż czarny:) Całość sprawia solidne wrażenie, choć budowa nie jest pyło- lub wodoszczelna.

Co ciekawe, plastikowa obudowa ma na spodzie otwór, który skojarzył mi się ze zatrzaskiem na wkręt w ścianie… Thingy można powiesić – i użyć jako np. czujnik temperatury:)

Uważajcie przy ściąganiu tej gumy z obudowy – schodzi dość ciężko – a zaraz pod nią znajduje się antena NFC oraz płytka Thingy.

Gumowa osłonka skrywa plastykową pół-obudowę. Na jej boku znajdziecie przycisk włączania, gniazdo USB i gniazdo służące do podłączenia programatora:

W  obudowie na zatrzaskach umieszczono sam układ. Co bardzo praktyczne – na naklejce nadrukowano adres  modułu Bluetooth.

Pod płytką znajduje się ogniwo LiPo – pojedyncze (nominalnie 3.7V) o pojemności aż 1440mAh. Ogniwo podłączone jest do płytki poprzez gniazdo. Płytka musi więc zawierać  stabilizator i układ ładujący LiPo.

Trochę dziwnie wygląda ta antena NFC na elastycznej taśmie…

Jest raczej delikatna. Wydaje się, że stosunkowo łatwo ją uszkodzić. Ale Nordic i o tym pomyślał. Zainstalowano ją na złączu – można ją łatwo odłączyć, gdy niepotrzebna.

Na płytce znajdują przelotki, do których można wlutowć piny. W ten sposób dostaniecie się do portów kontrolera – jak np. szyny i2c czy zasilania. Część z nich rozmieszczona jest na standardowym rastrze 2.54mm – ale niektóre 2mm.

Oczywiście wlutowanie pinów wykluczy możliwość dalszego używania obudowy. 

Pierwsze uruchomienie

Zdejmijcie gumową osłonkę. Uważajcie na odstającą antenę. Z boku obudowy znajduje się przełącznik zasilania.

Instrukcja zachęca, żeby od razu włączyć Thingy. Mój egzemplarz… nie zareagował. Przyczyna była trywialna: rozładowana bateria. Thingy trzeba było najpierw podładować. Obok wyłącznika znalazłem port micro USB. Wystarczyło podłączyć go do ładowarki – a Thingy ożyła pulsując diodą na niebiesko.  Teraz już możecie podłączyć się do niej telefonem. Pobierzcie oprogramowanie Nordic Thingy z Google Play czy iTunes. Uruchomcie Bluetooth i zezwólcie na lokalizację. Później trzeba przejść przez proces parowania z urządzeniem – dosłownie 3 kliki. W czasie tego procesu nadacie Thingy nazwę własną. Będzie ją później łatwo odróżnić od pozostałych urządzeń BLE w domu.

Po podłączeniu się do Thingy, dioda  zmienia kolor na zielony a aplikacja rozpocznie wyświetlanie danych z sensorów.

Obracając Thingy w powietrzu można się pobawić gyro – całkiem ciekawe demo.

BTLE

Thingy wyposażono w Bluetooth 5 z trybem Low Energy (LE). Trochę mnie to zastanawiało, bo w tej chwili na rynku jest niewiele telefonów wyposażonych w moduły zgodne z tą specyfikacją. Ale: BT 5 LE jest kompatybilny z poprzednimi BT4.x LE. Znaczy to, że wszystkie telefony kompatybilne z BT LE powinny działać z Thingy.

Do Thingy podłączałem się Xiaomi A1, ZTE Blade v6 i Huawei y5. Wszystkie działały bez problemów. Instrukcja mówi, że do działania oprogramowania wymagany jest Android 6.

CO2 i TVOC

Dwutlenku węgla w zasadzie nie trzeba Wam przedstawiać. Thingy mierzy jego zawartość w ppm – czyli cząstkach CO2 na milion wszystkich cząstek (parts-per-milion). Normalnie w składzie powietrza jest około 400ppm. W latach 60 stężenie dwutlenku węgla w atmosferze było w granicach 315ppm – cóż zrobić, globalne ocieplenie. Wiki mówi, że 350-450ppm to normalne stężenie na zewnątrz. Zależnie od organizacji, 1000ppm-1500ppm to maksymalne dopuszczalne stężenie w pomieszczeniu.

VOC: lotne związki organiczne (volatile organic compounds) stanowią źródło zanieczyszczeń środowiska. ‚T’ pochodzi od total – całkowita ilość. W pomieszczeń zamkniętych ich stężenie może być nawet 10x większe, niż na zewnątrz.  Stanowią 60% procent wszelkich zanieczyszczeń atmosfery, a 73% jest rakotwórcze. Thingy mierzy je w ppb – czyli ich ilości w miliardzie cząstek (parts-per-bilion). Źródła wspomianją, że wartości między 50 a 325 ppb są uważane za akceptowalne, ale nie powinny skakać powyżej 500 ppb.

Obydwie wartości są wyświetlane na aplikacji Thingy. Co2 zmienia wartości, gdy na niego się dmucha. Szukam jakiegoś sposobu na dokładniejsze przetestowanie tych czujników:)

Programowanie

Ok – pobawiliście się aplikacją. Pomierzyliście zawartość CO2 w Waszych okolicach. Co dalej?!

I tu zaczynają się schody. Raspberry to Linux – nieograniczane możliwości. Arduino ma swoje IDE, micro:bit – JavaScript Blocks i microPython. Wszędzie kolorowo, z bloczkami, w przeglądarce – i za darmo. Przegladając stronę Nordica, widzimy tylko GCC, Keil, i inne zaklęcia…

Sprawa w tej chwili wygląda tak:

  • Firmware: możecie budować aplikacje, które zostaną przeniesione na sam układ – ale czeka Was niezła przeprawa z konfiguracją SDK, linią komend itd.,
  • Usługi: możecie skorzystać z usług, które oferuje Thingy przez BLE – i zbudować na nich własne aplikacje.

Jeżeli chodzi o tą pierwszą możliwość… Nie wiem o Thingy jeszcze wszystkiego… Ale wygląda mi na to, że wymaga to raczej inżynierskiego doświadczenia – i umiejętności czytania dokumentacji.

Druga możliwość wydaje się prostsza. Ale to już historia na osobny tekst:)

Kilka dodatkowych obserwacji:

  • Ładowanie: zdejmijcie gumówkę (uwaga, antena NFC). Podłączcie Thingy do ładowarki – gniazdo microUSB znajduje się z boku obudowy.  Przełącznik zasilania musi być w pozycji ON. Thingy zacznie się ładować… co nie jest jakoś specjalnie sygnalizowane – ani w trakcie, ani kiedy naładuje się w pełni,
  • Po nocnym ładowaniu baterii, poziom naładowania (według aplikacji na telefonie) wyniósł 85%… Ciekawe, że nie dobił do 100% – być może to kwestia skalowania poziomów napięcia.
  • Bateria (właściwie akumulator) wystarcza na długo. Naładowałem ją raz, na początku – bawię się od tygodnia i (według aplikacji na telefonie) poziom naładowania baterii utrzymuje się na 70%,
  • Dioda opalizująca na niebiesko oznacza, że układ jest aktywny; na zielono: podłączona do telefonu (lub komputera, też można),
  • USB… służy jedynie do zasilania. Nie można przez niego wymieniać danych ani ładować kodu,
  • Czujniki CO2 i TVOC potrzebują trochę czasu na „rozbujanie” sie – wyniki pokazują dopiero po chwili; nie miałem jeszcze okazji zweryfikować ich działania
  • Zgodnie z domyślną konfiguracją, pozostawiony sobie Thingy… będzie aktywny przez kilka minut – a później przejdzie w stan uśpienia (niebiesko opalizująca dioda zgaśnie). Trzeba nim potrząsnąć, albo wcisnąć górny przycisk – żeby go ‚obudzić’; nie da radę podłączyć się do uśpionego Thingy.

Podsumowanie

Thingy od razu mi się spodobał. Już na pierwszy rzut oka sprawia solidne wrażenie. Bateria LiPo w komplecie – tego raczej nigdzie nie znajdziecie.

Trochę szkoda, że Thingy nie jest dostarczany z jakimś sympatycznym (i darmowym) środowiskiem do łatwego programowania. Tak jak to teraz  wygląda – trzeba umiejętności, żeby coś na niego zbudować. Oprogramowanie na telefonie wydaje się mieć opcję ładowania firmware przez BT (coś w stylu OTA – OverTheAir) – i podobno służy do odświeżania firmware – może również do załadowania własnego wsadu? Do wypróbowania.

A może… po prostu Thingy:52 prezentuje trochę inną filozofię niż inne płytki? Raspberry Pi, z linuksem na pokładzie – świetnie nadaje się  jako serce instalacji i do prezentacji. Łatwe w programowaniu Arduino – do bezpośredniego sterowania elementami wykonawczymi. Może głównym przeznaczeniem napakowanego sensorami Thingy:52  jest dostarczanie wiedzy na temat samego środowiska? Mocna obudowa, własne zasilanie, otwór na wkręt w ścianie… hmm…

W kolejnych tekstach przyjrzę się Thingy bliżej.

Źródła

2 komentarze do “Cosik – czyli Nordic Thingy:52 – pierwsze wrażenia”

    1. Witaj,
      to nie tak. Nieużywane thingy po pewnym czasie przechodzi w stan uśpienia. Musisz potrząsnąć nim – lub wcisnąć przycisk, żeby wybudzić. Thingy nie uśnie, jeżeli będziesz do niego podłączony. Na razie nie dobrałem się do ustawienia, po jakim czasie thingy usypia – ani do usługi wybudzającej ją bez konieczności „fizycznego” oddziaływania. Zawsze można połączyć się, przeczytać dane, rozłaczyć się – i za pewien czas (krótszy niż uśpienie) – połączyć się z powrotem. Sądzę, że czas uśpienia może mieć coś z advertismentami po btle – ale to jeszcze muszę doczytać.
      Już niedługo będzie więcej o korzystaniu z usług thingy.
      Pozdrawiam,
      Arek

Dodaj komentarz