Nettigo tinyBrd - integracja z Arduino IDE

W tym artykule przedstawiamy niezbędne kroki by zainstalować biblioteki konieczne do pracy z Nettigo tinyBrd w Arduino IDE oraz do komunikacji z tinyBrd z Raspberry (w Pythonie). Artykuł testowany był na Arduino IDE 1.6.9 ze strony Arduino.cc.

Wersja automatyczna

Od 1.06.2016 wprowadziliśmy instalację tinyBrd przez Board Manager.

W oknie preferencji (Ctrl+,) wklej link http://static.nettigo.pl/tinybrd/package_nettigo.pl_index.json w polu Additional Boards Manager URLs. Potem przejdź do menu Tools/Board/Boards Manager. W okno szukania wpisz tinyBrd, kliknij na wynik szukania i użyj przycisku Install. Arduino IDE jest gotowe do pracy z tinyBrd :)

Jeśli wcześniej instalowałeś ręcznie Nettigo tinyBrd Core to odinstaluj go (usuń z katalogu hardware) i zrestartuj Arduino IDE.

Wersja manualna

Aby móc programować tinyBrd musisz dodać paczkę z opisem tych płytek do Arduino IDE. Znajdź miejsce, w którym Arduino IDE trzyma Twoje programy. Możesz to sprawdzić w ustawieniach (Ctrl+,)

W tym przykładzie folder z programami to `/home/seba/sketchbook15`

Jeżeli w tym katalogu nie ma jeszcze podkatalogu hardware to go utwórz. Ściągnij Nettigo tinyBrd core i rozpakuj jego zawartość w katalogu hardware. Uruchom IDE, w menu powinno pojawić się nowe płytki: Menu/Board/Nettigo tinyBrd, wybierz tam wersję Nettigo tinyBrd @ 8 MHz.

Test czy możesz programować tinyBrd

Wybierz w menu Tools/Programmer odpowiedni programator. Polecamy programatory USBasp lub Arduino UNO jako programator.

Otwórz File/Examples/01. Basics/Blink zamień w tekście programu wystąpienia liczby 13 na 0 i wgraj go na tinyBrd. Po podłączeniu diody do pinu D0 będzie migać. Użytkownicy tinyBrd 2.0 mogą użyć pinu 10 i wtedy będzie migać dioda na płytce tinyBrd 2.0

UWAGA Jeżeli korzystasz do programowania z programatora USBASP z naszej oferty możesz programować tinyBrd z włożonym modułem NRF24L01. W innym przypadku, upewnij się, że programator ma wbudowane rezystory zabezpieczające, albo programuj tinyBrd z odłączonym NRFem. Dopiero tinyBrd od wersji 2.0 możesz programować z włożonym NRFem i jednocześnie mieć zworkę zasilania na USB. W wersjach przed 2.0 musisz doprowadzić zasilanie poniżej 3.6V lub wyjąć NRF i wtedy możesz podłączyć USBASP ze zworką Vcc.

W tej chwili możesz korzystać z tinyBrd jako płytki mikrokontrolera, jednak siła tinyBrd drzemie w dodatkowym złączu i przygotowanym przez nas oprogramowaniu.

Instalacja przykładów do Arduino IDE

Przygotowane przez nas szkice - ściągnij i rozpakuj w katalogu ze swoimi szkicami.

Zawsze najaktualniejsza wersja znajduje się na GitHubie: https://github.com/nettigo/tinybrd-examples

Biblioteka w Pythonie do komunikacji z tinyBrd (dla Raspberry Pi)

Zakładamy, że do Raspberry Pi masz podłączony moduł NRF korzystając z naszego NRF-hat.

Zaloguj się na Raspberry Pi. Przygotowany przez nas kod jest dostępny w formie standardowej paczki dla Pythona. Jeśli jeszcze nie masz potrzebujesz pip dla Python 3:

sudo apt-get install python3-pip git python3-rpi.gpio

Teraz zainstaluj naszą bibliotekę w Pythonie do pracy z NRF:

sudo pip-3.2 install git+https://github.com/nettigo/pyNRF.git

UWAGA Jeśli Raspberry odpowie pip-3.2: command not found sprawdź jakie wersje pip masz dostępne - napisz pip i naciśnij dwa razy klawisz TAB. Wybierz coś, co będzie najbliższe pip-3.2. Może to będzie pip3 - niestety wraz z wersjami Raspbiana zmieniają się czasem wersje i nazwy.

Ta komenda zainstaluje bibliotekę i wymagane zależności do jej pracy. Moduł NRF24L01 komunikuje się z Raspberry za pomocą protokołu SPI. Domyślnie w systemie operacyjnym Raspbian obsługa tego protokołu jest wyłączona. Najprościej będzie użyć programu konfiguracyjnego raspi-config. Uruchom go:

sudo raspi-config

Wybierz opcję 8. Advanced config, następnie A6 SPI (numery opcji mogą ulec zmianie w kolejnych wersjach Raspbiana) i wybierz odpowiedzi Yes na dwa pytanie, które zada program. Gdy wrócisz do głównego menu, wybierz opcję Finish. Raspberry spyta się czy zrestartować urządzenie. Jest to potrzebne by SPI zaczęło działać, więc odpowiedz twierdząco.

Po restarcie wszystko powinno być gotowe do pracy.

Instalacja przykładów/skryptów dla Raspberry

git clone https://github.com/nettigo/tinyBrdScripts

API programistyczne

Krótki opis API do tinyBrd (zarówno w C++ do użycia na tinyBrd jaki Pythonowe do komunikacji Raspberry <-> tinyBrd) znajduje się w tym pliku PDF.

Zawsze aktualna wersja znajduje się też w sekcji Pliki na stronie produktu tinyBrd.

Gdzie szukać więcej informacji?

Zajrzyj na stronę dokumentacji tinyBrd po więcej szczegółów.