Raspberry Pi – szczypta prywatności dla każdego

O tym jakim kombajnem do wszystkiego jest ten niepozorny mały komputerek chyba wszyscy już wiemy. Możemy na nim postawić serwer www, bazę danych, centrum multimedialne, stację pogodową, serwer NAS czy co tam dusza zapragnie. Dziś dowiemy się jak zwiększyć naszą prywatność, kiedy korzystamy z otwartych punktów WiFi poza domem – nasza malinka posłuży nam jako domowy serwer OpenVPN. Dzięki takiemu serwerowi będziemy mogli cały nasz ruch sieciowy z jakiegoś darmowego hotspotu wifi przekierować przez prywatny tunel biegnący przez nasze domowe łącze.

Czytaj dalej

Raspberry Pi – Obraz skrojony na miarę

Hej! W dzisiejszym artykule dowiemy się jak przenieść obraz systemu, który fizycznie zajmuje np. 1 GB z karty o dużej pojemności na mniejszą kartę. W moim przypadku będzie to przeniesienie systemu zajmującego około 1,2 GB z karty 16 GB na kartę 2GB. Analogiczny ruch będziemy mogli wykonać w drugą stronę, czyli jeżeli braknie nam miejsca na aktualnej karcie możemy z łatwością przenieść cały sytem bez szwanku na większą kartę :)

Czytaj dalej

Raspberry Pi – instalacja serwera www (apache)

Raspberry Pi jest malutkim komputerem na którym możemy uruchamiać wiele ciekawych aplikacji, a dzięki złączu 2×20 pin mamy dostęp do portów GPIO przez które możemy podłączyć różnego rodzaju czujniki, diody i przyciski. Dziś pokażę Wam jak zainstalować serwer www, który pozwoli nam postawić na naszej malinie w pełni funkcjonalną stronę www (która może być np. panelem wyświetlającym wartości czujników).

Czytaj dalej

Mały robot sterowany przez Bluetooth – micro:bit w akcji

Od pewnego czasu bardzo mi się podoba Micro:Bit. Od momentu, kiedy mogłem samemu coś na nim zrobić bardzo polubiłem tą platformę. Jeśli nie wiesz zupełnie o co chodzi to może zobacz to krótkie wideo, które nagrałem:

Płytka Micro:Bit oferuje dwa podstawowe sposoby programowania – Python oraz składanie programu w sposób graficzny z dostępnych komponentów (kto widział już Scratcha ten dokładnie wie o co chodzi).

Zajmiemy się dziś tym drugim, bo wydaje się to doskonałym rozwiązaniem, gdy chcesz przedstawić Micro:Bita młodszym użytkownikom. Jednocześnie system ten jest łatwy i zrozumiały jak i dopracowany. Korzystając z przeglądarki składamy elementy blokowe a gdy program jest gotowy, to ściągamy skompilowany plik .hex. Wystarczy teraz podłączyć Micro:Bit do komputera i wgrać plik hex na niego (tak jak się wgrywa pliki na pendrive), to cała filozofia.

Dobra, zrobimy robota, którego można sterować przez Bluetooth. Będzie to wyglądało mniej więcej tak:

 

Dobra, co potrzebujemy? Micro:bit, sterownik silników moto:bit i jakaś platforma robota, tutaj jest to Magician Chassis ale może to być dowolna, dwusilnikowa platforma. Do sterowania potrzebny jest telefon z Bluetooth 4.0 pod kontrolą Androida.

Robocik po zmontowaniu

Gotowy program jest do zobaczenia tutaj: https://makecode.microbit.org/_arAAUz7gMi1b Tam możecie użyć opcji „Download” by ściągnąć plik .hex.

Program dla micro:bit

Jak wygląda program? Ano tak: Czytaj dalej

Raspberry Pi – Sterowanie portami GPIO w Pythonie

Kiedy postawiliśmy już system na malince oraz zabezpieczyliśmy kartę pamięci przed zbyt szybkim zużyciem pora na krótki wstęp do sterowania portami GPIO. W dzisiejszym artykule poznamy podstawową składnię języka Python (np. jak stworzyć zmienną, funkcję lub napisać pętlę) a także dowiemy się w jaki sposób Python może pomóc nam sterować portami GPIO (czyli np. zaświecić diodę LED lub wykryć wciśnięcie przycisku).

Czytaj dalej

Raspberry Pi – Na ratunek karcie pamięci

W dzisiejszym wpisie poświęconym mini komputerkowi Raspberry Pi dowiemy się jak uchronić kartę pamięci na której zainstalowany jest system operacyjny od przedwczesnej śmierci. Jak wiadomo każda pamięć typu flash (a do tego grona zaliczają się właśnie karty pamięci używane w RPi) ma ograniczoną ilość cykli zapisów. Po ich wyczerpaniu komórki pamięci nie mogą być nadpisane i tym samym karta zaczyna umierać. Dziś zaprezentuję Wam kilka trików jak ograniczyć ilość zapisów które Raspbian wykonuje pod maską.

Czytaj dalej

Raspberry Pi – Instalacja Raspbiana z pomocą narzędzia NOOBS

Po długiej wakacyjnej przerwie chciałbym uruchomić na blogu nową serię wpisów – poradniki dotyczące mini komputerka Raspberry Pi. W dzisiejszym pierwszym z serii artykule dowiemy się jak w prosty sposób zainstalować oficjalny system operacyjny od twórców RPi.

Czytaj dalej

Wyświetlacze 1.4 i 1.8 cala z Arduino – sterownik ILI9163

Dodaliśmy na Nettigo dwa nowe wyświetlacze LCD. Oparte o kontroler ILI9163C posiadają efektywną rozdzielczość 128×128 (1.44 cala przekątnej) oraz 128×160 (1.8 cala przekątnej). W sieci funkcjonuje biblioteka do nich (dostępna nawet przez menedżer bibliotek w Arduino IDE) jednak nie do końca dla nas jest OK. Wyświetlacze w naszej ofercie mają nieco inne parametry i nie pracował poprawnie z tą biblioteką.

Dlatego na szybko sklonowaliśmy bibliotekę na Githubie i dokonaliśmy minimalnych poprawek by wyświetlacze można obsłużyć.

Podłączenie ich jest bardzo proste, korzystają z SPI.

Połączenie wyświetlacz <-> Arduino

  • SCK – D13 (SCK)
  • SDA – D11 (MOSI)
  • A0 – D9 (można zmienić)
  • RESET – RESET
  • CS – D10 (można zmienić)
  • GND – GND
  • VCC – 5V
  • LED – 3.3V

Zasadniczo wyświetlacz razem działa na logice 3.3V. Moduły mają wbudowane stabilizatory napięcia, więc można zasilić bez problemu 5V. Podświetlenie LED ma wbudowany rezystor i niby działa na 5V bez kłopotów, ale sugeruję jednak używanie 3.3V do zasilania LED. Przy zasilaniu LED 3.3V podświetlenie wyświetlacza 1.44″ bierze około 20 mA. Zmiana napięcia LED na 5V powoduje skok prądu do 55 mA. Jasność świecenia prawie się nie zmienia, co sugeruje że już przy napięciu 3.3V diody podświetlenia pracują w dobrym zakresie charakterystyki. Zwiększenie prądu spowoduje tylko skrócenie czasu życia diod. Dlatego zasilajmy LED 5V.

Co do logiki… Nota katalogowa ILI9163 mówi, że napięcie na pinach SPI w takim konfigu nie powinno przekroczyć 3.6V. Jednak u mnie na biurku testowe egzemplarze działają w porządku. Jednak YMMV :) czyli nie daję żadnej gwarancji a wręcz sugeruję jednak użycie konwertera poziomów logicznych. Tym bardziej, że na PCB nie widać rezystorów które mogłyby działać jako dzielnik napięcia/konwerter.

Czytaj dalej

DAC w Arduino czyli Covox na ratunek

Wiele miejsca w różnych tutorialach poświęca się tematowi konwersji sygnałów analogowych na cyfrowe. Mówiąc inaczej  – o mierzeniu napięcia. Tym razem pomówimy o procesie odwrotnym, czyli zamianie wartości cyfrowej na analogową (napięcie).

Jak mierzeniem napięcia zajmują się przetworniki analogowo-cyfrowe (ADC – Analog Digital Converter), to w drugą stronę taki przetwornik nazywamy cyfrowo-analogowym (DAC – Digital Analog Converter). ADC znajdziesz w każdym praktycznie mikrokontrolerze. DAC już jest czymś rzadszym (ale np Teensy 3.2 ma taki jeden 12-sto bitowy).

Po co może być potrzebny DAC? Najczęściej gdy mowa jest o dźwięku. Jeśli obracamy się w kontekście Arduino, to ma ono przecież funkcje tone()  i można znaleźć wiele przykładów jak zagrać melodyjkę na buzzerze. Tak, tyle że tone generuje sygnał 0/1 z odpowiednią częstotliwością i buzzer  tak pobudzony wydaje dźwięki. Ale jeżeli zapragniemy sygnału o większych subtelnościach niż 0/5V to musimy zapomnieć o tej funkcji z Arduino.

Od razu powiem, że nie próbujemy tutaj stworzyć audiofilskiego urządzenia. Z wielu powodów sygnał będzie daleki od ideału, ale i tak dużo lepiej niż z jednym pinem i tone().

Czytaj dalej

Wyłącznik czasowy na NE555

Cześć! Dziś na blogu opiszemy sobie bardzo prosty układ często stosowany np. w wyłącznikach schodowych – kiedy wciśniemy przycisk zapali nam się światło i zgaśnie samoczynnie po ustalonym czasie. Tym przykładem chciałbym Wam pokazać, że nie zawsze aby zrobić proste urządzenie trzeba zaprzęgać do niego całe Arduino lub inny programowalny mikrokontroler, czyli prościej mówiąc nie strzelajmy z armaty do komara :)

Czytaj dalej