Rozważania o wymianie laptopa

W związku z pandemią koronawirusa pojawiła się konieczność zdalnego nauczania. Spowodowało to wzrost cen kamer internetowych w Polsce. Wydały mi się na tyle drogie, że zacząłem się zastanawiać, czy nie prościej kupić cały poleasingowy laptop, z wbudowaną kamerą. I faktycznie, poleasingowe laptopy na Allegro w dość sensownych konfiguracjach „do internetu” (CPU i3/i5, dysk, system[1], 4 GB RAM, kamera) zaczynają się od 400 zł, przy zakupie od firm – pomijam detal. Trzeba uważnie czytać opisy często czegoś im brakuje. Na przykład nie ma baterii, albo są sprawne technicznie, ale mają uszkodzenia obudowy, rozmiar ekranu to tylko 12,5-14″. Niemniej da się znaleźć w pełni sprawne, a nawet takie do nauki wystarczą i o dolną granicę ceny chodziło. To oczywiście drożej, trochę niż sama kamera, ale… porównywalnie.

Pomyślałem jednak o czymś innym – czy warto, ze względu na pobór prąd wymienić laptopa na coś współczesnego? Nawet jeśli mamy do dyspozycji sprawny stary sprzęt. Powiedzmy jakieś C2D z 4 GB RAM i 95W zasilaczem. Trochę ponaciągałem, trochę uprościłem, wrzuciłem dane w kalkulator zwrotu i… się zdziwiłem.

Przyjąłem aż 8h działania laptopa dziennie. Pobór prądu nowego sprzętu na poziomie 15W (raczej zaniżony), pobór starego na poziomie 100W. Ten ostatni zawyżony, skoro zasilacz ma 95W, to rzeczywisty pobór będzie co najwyżej taki, w praktyce sporo mniejszy. Stary sprzęt już jest, nowy kosztuje 400 zł. Cenę prądu przyjąłem 55 gr/kWh, czyli sprzed podwyżek, ale zmiana nie była duża.

Okazało się, że laptop będzie się zwracał aż 3 lata. Bardzo długo, szczególnie, że nie nie mówimy tu o nowym sprzęcie, tylko używanym, więc nawet nie wiadomo, czy tyle „pożyje”. Oczywiście można rozważać inne korzyści, typu bogatsze wyposażenie (szczególnie, jeśli potrzebujemy kamery internetowej, a stary sprzęt nie ma), większa wydajność (dyskusyjne), ale ze względu na sam pobór prądu wymiana nie ma sensu.

Przypomniało mi się, że z podobnych względów nie kupiłem najbardziej oszczędnego sprzętu AGD do domu. Różnica była na poziomie 400-500 zł, co oznaczało zwrot ok. 5 lat, a na tyle szacowałem czas życia produktów. Tu patrząc z perspektywy akurat trochę żałuję decyzji, bo sprzęt działa już dłużej, ceny prądu rosną, ale… to wiem dopiero po fakcie. I nadal przy zakupie AGD nie zakładałbym, że podziała ponad 5 lat.

1. Zwykle Windows 7, ale można go zaktualizować do Windows 10, zresztą tu powinien wystarczyć Linux.

Ergonomia maca

Yzoja napisała wpis o siedmiu miesiącach z macOS, a to przypomniało mi, że miałem w planie ponarzekać na ergonomię maca. Nawet szkic notki miałem gotowy. Nie będzie jednak o systemie, a wyłącznie o hardware, w postaci MacBook Pro 13″. Na system przyjdzie jeszcze kiedyś czas. Dla przypomnienia: korzystam z niego w pracy od jakichś pięciu miesięcy, w domu Linux. Jeśli miałem się do czegoś przyzwyczaić, to już się przyzwyczaiłem, lepiej nie będzie.

MacBook Pro 13"
Źródło: https://www.engadget.com/2018/07/13/macbook-pro-2018-hands-on/

Klawiatura

Na początek standard do narzekań – klawiatura. Klawisze mają mały skok, jest twarda. Nie przeszkadza mi to specjalnie, ale wolę tradycyjne, miękkie, o większym skoku. C’mon, w lapkach i tak jest krótki skok klawiszy w porównaniu z klawiaturami desktopowymi, zwłaszcza starego typu. Dodatkowo klawiatura się psuje, podobno. U mnie póki co działa, ale poczekajmy dwa lata…

Kolejna wada klawiatury to układ, czyli zamieszanie z klawiszami – brak delete, który przeżyłem zaskakująco dobrze, osobny control, który cały czas boli, bo raz trzeba używać control, raz command, a jeśli ktoś używa VMek ze środowiskiem graficznym, to już zupełnie robi się cyrk. Brak funkcyjnych i escape o co widziałem żale – nie boli, bowiem można ustawić, by były domyślnie, cały czas na wyświetlaczu, a głośność itp. po naciśnięciu Fn. Jeśli ktoś tęskni za fizycznym escape i funkcyjnymi to polecam wypróbowanie tego ustawienia. Polecam też Karabiner do przemapowania klawiszy, bez tego pisanie polskich znaków może być bolesne. Jeszcze bardziej polecam przemapowanie klawiszy bez Karabinera. Podświetlanie jest oczywiście fajne, ale konkurencja (choćby Dell) też ma.

Wymiary

Czy komputer może być zbyt płaski? Brzmi paradoksalnie, ale tak, może. Na początku miałem spory problem z podniesieniem maca jedną ręką – nie ma za co chwycić, w związku z czym potrafił się przesunąć, zwłaszcza na bardziej śliskich powierzchniach. Detal i ostatecznie się nauczyłem poprzez zahaczenie czubkami palców o wcięcie, ale nadal – miało być fajnie, a w praktyce tak sobie. I żeby nie było – nie mam grubych palców.

Porty USB-C umieszczone są zbyt blisko siebie. Jeśli wetkniemy dwie wtyczki, nie można złapać wtyczki, trzeba ciągnąć za kabel lub podnosić laptopa i łapać od spodu. W zwykłych lapkach, ze zwykłymi USB nie miałem tego problemu. Możliwe, że związane z poprzednim akapitem albo ogólna wada USB-C – nie mam porównania dla innych maszyn z tymi portami. Niemniej problem występuje. Szczęśliwie można mieć stację dokującą i podłączać jeden kabel i wtedy wszystko gra. W wersji bardziej mobilnej z kolei pewnie będzie dostęp w pionie. Ale co szkodziło projektantom dać centymetr dodatkowej przestrzeni między portami? Nie wiem.

Ekran

Ekran. To najlepszy glare z jakim miałem do czynienia, ale… to nadal glare, a ja nie przepadam za glare. Palcuje się jak głupi i nieco robi za lusterko. Z tym ostatnim można walczyć zwiększając jasność i nawet jest opcja automatycznego dostosowania jasności w zależności od otoczenia, z której korzystam. Działa zacnie, tylko czasami lekko wariuje i co parę sekund (sic!) zmienia temperaturę barwy ekranu. Zdecydowanie ktoś nie znał pojęcia histereza. Ale to już zejście ze sprzętu na system, a to nie ten wpis.

Touchpad

Czy narzekanie na wychwalany wszędzie touchpad jest możliwe? Ano jest. Wada? Brak fizycznych przycisków. Prawy klik nie jest pewny – żeby zrobić prawy klik, trzeba zrobić mocniejsze przyciśnięcie. Żeby zrobić mocniejsze przyciśnięcie, trzeba zrobić słabsze, czyli lewy klik. To teraz wyobraźmy sobie, że mamy link, który bardzo chcemy skopiować, ale którego bardzo nie chcemy kliknąć. Zdecydowanie pewniej czuję się z podpiętą myszką. Zwykłą pecetową, zresztą. Tyle, że nie chodzę z myszą w kieszeni. Oddając sprawiedliwość, poza brakiem fizycznych przycisków to naprawdę dobry touchpad: duży, precyzyjny, wygodny. Jeśli jest sposób, który pozwala pewnie wyeliminować ryzyko lewokliku przed prawoklikiem na touchpadzie – dajcie znać proszę.

Bateria

Kolejny nietypowy zarzut – stosunkowo krótki czas pracy na baterii. Ja rozumiem, że to tylko 13″, w dodatku płaskie, ale czemu ludzie chwalą, że maci trzymają długo na baterii? W porównaniu z Dellami, z którymi miałem do czynienia, mac wypada blado. Benchmarku nie robiłem, ale przewidywany czas pracy, który widzę, to między 3 a 5 godzin na baterii, przy zwykłym użytkowaniu. Czternastocalowy Dell o porównywalnych parametrach miał bardziej 6-8h.

Zamknięcie

Ostatnia wada – zamknięcie magnetyczne i brak możliwości sensownego umieszczenia zasłony na kamerkę. Są fajne nakładane silikonowe zaślepki na kamery, które rewelacyjnie sprawdzają się na tradycyjnych laptopach, ale niestety ich używanie na macu powoduje, że zamknięcie magnetyczne działa mało pewnie. Zasłonki w postaci naklejki są inwazyjne i też mają swoją grubość, a producent sam z siebie niczego nie zaoferował. Jeśli znacie sposób na zasłonięcie kamery – poproszę.

I tyle w kwestii ergonomii maca, jeśli chodzi o hardwar, póki co. Rzeczy oczywiste typu wszystko niewymienne, nierozbieralne i pointegrowane, o których piszą wszędzie pominąłem. Dla jasności, to co opisałem to nie są wielkie wady, po prostu sprzęt daleki jest od ideału. Najbardziej w praktyce doskwiera mi układ klawiatury. Jeśli ktoś korzysta tylko z maców, może się przestawić i przestać zwracać uwagę.

Gdybym jednak miał wybór i musiał korzystać z macOS, to wolałbym chyba hackintosha z hardware 14″ Della, ze względów czysto ergonomicznych. A gdybym najkrócej jak się da mógł opisać zmiany, dzięki którym MacBook Pro byłby IMO lepszy to: ekran 14″, matowy, miękka klawiatura o większym skoku, 3-4 milimetry grubości więcej i dłuższy czas pracy na baterii.

Banana Pi i ekran LCD podłączony po i2c

Dawno temu NAS został wyłączony, ale zmierzam do jego reaktywacji. Po głowie chodziło mi zamknięcie wszystkiego (zasilacz, dysk, Banana Pi) w zgrabnej, tym razem dedykowanej do elektroniki, obudowie.

Trochę z myślą o programie do przełączania łącza internetowego, a trochę o pomiarze temperatury przy pomocy komputera, przyszedł mi pomysł, by sygnalizować stan różnych rzeczy w sposób nie wymagający łączności sieciowej, czyli najdoskonalszy, analogowy: migając diodą. Oczywiście szybko doszedłem do wniosku, że jedna dioda nie wystarczy. Wbudowane diody to trochę mało, ale przecież w Raspbery Pi i analogach mamy GPIO, możemy tych LEDów podłączyć kilka…

Nie wiem jak dokładnie doszło do tego, ale podczas poszukiwań szybko wpadłem na ekrany LCD z serii 1602, które również można podłączyć przez GPIO. Skoro tak, to pomyślałem, że nie ma się co ograniczać. Zamiast prostej sygnalizacji stanu i konieczności pamiętania która kombinacja co oznacza można po prostu wyświetlać dowolny tekst. Niezbyt długi, ale nadal jest to znacznie większa ilość informacji, niż z kilku czy nawet kilkunastu LEDów. W dodatku cena takiego jest bardzo przystępna, czego o różnych ekranach dotykowych czy e-ink powiedzieć nie można.

Pierwotnie chciałem podłączyć LCD do Orange Pi zero, ale niestety, nie ma on pinów GPIO. Są wyprowadzenia, ale trzeba by lutować, co pewnie docelowo zrobię, ale bardziej chodziło mi o sprawdzenie sterowania. Zatem użyłem będącego pod ręką Banana Pi. Gdy szukałem schematu jak podłączyć ekran do Banana Pi, natknąłem się na coś znacznie ciekawszego. Wersję ekranu LCD ze sterownikiem podłączanym przez interfejs i2c. Dzięki podłączenie temu jest bardzo proste. Wystarczą raptem cztery przewody, nawet nie trzeba lutować, o ile używa się gotowych przewodów z końcówkami. Dodatkowo – i to najlepsza część –  całością daje się w elegancki sposób sterować za pomocą Pythona.

Efekt końcowy wygląda tak:

LCD 1602
LCD 1602 Źródło: fot. własna

Zdjęcie zrobione telefonem, po ciemku. Z tyłu płytki jest potencjometr pozwalający na regulację kontrastu. Poziom podświetlenia jest stały, można tylko włączyć i wyłączyć LED, zarówno hardware’owo (zworka), jak i programowo. Ekran LCD bierze bardzo mało prądu – przy pomocy watomierza nie udało mi się zarejestrować różnicy, czyli całość zużywa poniżej 0,1 W.

Jak to zrobić? Powtórzę instrukcje, z których korzystałem. Instalujemy dodatkowe pakiety:

apt-get install i2c-tool python-smbus

Następnie podłączamy ekran i sprawdzamy adres przy pomocy polecenia:

i2cdetect -y 1

Otrzymaną wartość należy wpisać w skrypcie (stała ADDRESS, linia 29 w przytoczonym przykładzie).

Następnie możemy sterować ekranem z poziomu języka Python. Na przykład wywołanie efektu widocznego na ekranie można zrobić przy pomocy polecenia:

python test_lcd.py "Pomiedzy bitami" "https://zakr.es/"

Gdzie test_lcd.py ma zawartość:

import sys

from i2c_lcd import *

display = lcd()
display.lcd_display_string(sys.argv[1], 1)
display.lcd_display_string(sys.argv[2], 2)

Biblioteka pozwala na dużo więcej, między innymi na własne znaki, ale tym się póki co nie bawiłem. Wyświetlony tekst pozostaje na ekranie po zakończeniu programu do momentu wpisania nowego lub skasowania poprzedniego. Jeśli do ekranu będzie dostarczone napięcie, to wyłączenie Banana Pi nie wpływa na wyświetlany tekst. Dlatego jeśli chcemy monitorować, czy nasz komputer się nie zawiesił, musimy zmieniać okresowo tekst. W innym wypadku zawartość LCD nie świadczy o niezawieszeniu się komputera.

Sterowanie włączaniem i wyłączaniem podświetlania to:

display.backlight_on(False)
display.backlight_on(True)

Wyświetlać przy pomocy Banana Pi na ekran LCD można cokolwiek – temperaturę, zajętość dysku, opóźnienia/straty na sieci, kurs BTC (pozdro dla L.!), adres IP (po starcie!), informacje o nowych mailach…

Pozostało mi wymyślenie, w jaki sposób zrobić sensowne sterowanie. Po głowie chodzi mi demon, który będzie pobierał informacje do wyświetlenia z jakiejś kolejki, w zależności od ich priorytetu, czasu ostatniego wyświetlenia i pory dnia sterował oświetleniem i wyświetlał informacje. A może już jest coś takiego?

I garść linków pomocnych przy tworzeniu ww. rozwiązania AKA źródła:

  1. pinout Banana Pi
  2. Raspberry Pi i ekran LCD na i2c
  3. Banana Pi i urządzenia i2c
  4. Skrypt w Pythonie (dead link)
  5. Biblioteka Python do obsługi ekranów LCD po i2c

UPDATE Dla zainteresowanych kupnem – ekran z modułem do komunikacji i2c kosztuje ok. 12 zł na Allegro. Na zdjęciu jest wersja zielona, ale istnieją też wersje niebieskie, gdzie tło jest ciemne, a napisy jasne.