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ć:)

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

micro:bit:czas – zegar z ds1307

Pole LEDowe na płytce  micro:bit można wykorzystać na wiele sposobów. Fakt – 5×5 diod to może niewiele… Ale jeżeli będziecie trochę kreatywni…:)

Najlepiej zacząć od potrzeby. Po remoncie okazało się, że w pokoju… nie ma żadnego zegarka:) Pokój otrzymał dość nowoczesny wystrój.  Nic okrągłego czy tradycyjnego nie pasowało… Coś jakby szansa dla micro:bit?

5×5 diod – czy da radę na tym wyświetlić godziny, minuty? Oczywiście można przewijać czas, ale to niezbyt czytelne. Analogowy zegar (ze wskazówkami) nie wyglądał zbytnio wyraźnie. Dlatego postanowiłem skonstruować… zegar binarny:) Ale po kolei.

Czytaj dalej micro:bit:czas – zegar z ds1307

Kolejny zegar czasu rzeczywistego: podłączenie ds1307 do Arduino – i kilka słów o i2c

W poprzednim poście  podłączałem do Arduino zegar PCF8563. Ale PCF8563 to nie jedyny układ, który możecie użyć jako odniesienie czasu. DS1307 to inny popularny czip tego typu. I podobnie jak pcf – podłącza się go do szyny i2c. Przyjrzymy się ds1307 – oraz bibliotekom umożliwiającym korzystanie z niego.

Czytaj dalej Kolejny zegar czasu rzeczywistego: podłączenie ds1307 do Arduino – i kilka słów o i2c

Zegar czasu rzeczywistego: podłączenie PCF8563 do Arduino

Jeżeli kiedykolwiek postanowicie zbudować zegarek, prędzej czy później będziecie potrzebowali układ  odniesienia czasu. Każdy procesor zlicza czas od swojego uruchomienia. Ale po resecie, zaniku napięcia zasilającego lub przepełnieniu odpowiedniego rejestru – zaczyna od zera. W zupełności wystarcza to dla funkcji opóźnienia i wielu innych, które korzystają z czasu – jak PWM czy watchdog. Słabo nadaje się jednak na zegarek.

Dlatego stosuje się układy odniesienia czasu. Są to dodatkowe czipy,  najczęściej niezależnie zasilane (przez baterię lub kondensator). Ich rolą jest zapamiętywanie godziny i daty – i odliczanie jej nawet, gdy cały komputer jest wyłączony. Zawartość takich czipów może być ustawiona przez użytkownika – albo np. synchronizowana z usługą czasu sieciowego NTP.

Podobnych układów jest na rynku kilka np. DS1307, MCP79400. Tutaj zajmę się zegarem firmy NXP: PCF8563.

Czytaj dalej Zegar czasu rzeczywistego: podłączenie PCF8563 do Arduino

micro:bit:zasilanie z jednego paluszka AA? TAK: złodziej Jouli

micro:bit można zasilać na kilka różnych sposobów. Jest USB (które dodatkowo służy do programowania). Standardowy zestaw zawiera zasobnik na dwie baterie 2xAAA. W poprzednim tekście mówiłem o zasilaniu micro:bit przez moduł Mi:Power. Wiemy już, że micro:bit może działać na pastylkowej baterii cr2032. Ale – czy są inne sposoby zasilania?

Oczywiście – każde źródło zasilania, którego napięcie dostosujecie do poziomu akceptowalnego przez micro:bit. Ale tym razem chciałem wspomnieć o … złodzieju dżuli (joule Thief). Dlaczego? Bo dzięki niemu możecie zasilić micro:bit… z jednego paluszka AA:) A podobno 1.5v nie wystarczy…

Czytaj dalej micro:bit:zasilanie z jednego paluszka AA? TAK: złodziej Jouli

micro:bit:Mi:Power – czyli micro:bit zasilany z cr2032 (i biblioteka filesystem)

micro:bit można zasilać z USB, przez gniazdo baterii lub bezpośrednio przez pin 3v. Rozszerzenie Mi:Power wykorzystuje tą ostatnią możliwość. Moduł zasila micro:bit z baterii pastylkowej typu cr2032. Dodatkowo na płytce MiPower umieszczono buzzer – dzięki czemu możecie rozszerzyć możliwości micro:bit o wydawanie dźwięków.

Czytaj dalej micro:bit:Mi:Power – czyli micro:bit zasilany z cr2032 (i biblioteka filesystem)

micro:bit:led (full of stars!)

Jedną z ciekawszych części micro:bit jest 25-diodowe pole znajdujące się na górnej stronie płytki. Diody można zapalać, gasić – a nawet zmieniać jasność ich świecenia. Domyślna biblioteka pozwala na łatwe wyświetlanie strzałek, napisów, liczb, ikon itp.

Do ilustracji obsługi pola LED użyję środowiska JavaScript Blocks (https://makecode.microbit.org). Nowy program będzie powtarzał sekwencję:

  • Losuję jedno pole na wyświetlaczu (aka. „trafienie”),
  • Dla każdego pola będę zliczał ilość „trafień” zwiększając licznik o „1” przy każdym wylosowaniu pola,
  • Im więcej trafień – tym pole będzie świeciło jaśniej,
  • Wciśnięcie klawisza „A” pokaże na ekranie led maksymalną ilość trafień,
  • Klawisz „B” wyzeruje licznik trafień.

Efekt powinien być ciekawy, przy okazji nauczymy się kilku nowych trików z ledami – no i przetestujemy generator liczb losowych:) Do roboty.

Czytaj dalej micro:bit:led (full of stars!)

micro:bit:wstęp

Zamiast standardowego „hello-world”… spróbujmy zacząć od czegoś bliższego mikrokontrolerom i urządzeniom wbudowanym. Może… termometr?

  1. Otwórzcie stronę ze środowiskami programowania micro:bit: Let’s code!
  2. Wybierzcie „JavaScript Block Editor” i kliknijcie „Let’s Code”,
  3. Do elementu „Forever” dodajcie następujące bloczki:

    • Z grupy „Basic”: element „Show number” dołączcie do „Forever”
    • Z grupy „Input”: elementem „temperature” zastąpcie „0” w „Show number”
  4. Kliknijcie ikonkę „Download” i pobierzcie plik „hex” na swój komputer,
  5. Podłączcie microbit do USB, przegrajcie na niego pobrany plik hex,
  6.  Na micro:bit wciśnijcie „Reset”.
  7. Teraz wiecie, jaka temperatura panuje w Waszym pokoju:)

Zainteresowani?

Czytaj dalej micro:bit:wstęp

Terminal HP: serwer wydruku i skanowania (CUPS i SANE)

Ostatnio budowałem serwer wydruku na Raspberry. Udało się – serwer cały czas działa umożliwiając drukowanie z każdego komputera podłączonego do domowej sieci.

Jednak mój Brother DCP-J100 to nie tylko drukarka – ale i skaner. Skoro serwer obsługuje drukowanie – dlaczego nie miałby umożliwić również zdalnego skanowania?

I tu pojawił się problem. Owszem – Brother udostępnia linuxowe sterowniki tak do drukarki, jaki i do skanera. Niestety – są one przeznaczone na architekturę i386/amd64 – a nie na ARM’a napędzającego Raspberry. Stąd pojawił się pomysł, żeby zastąpić Raspberry terminalem HP.

Czytaj dalej Terminal HP: serwer wydruku i skanowania (CUPS i SANE)