neděle 31. ledna 2016

Orange Pi Plus - opravdu nabušený mikropočítač

Jak jsem si kupoval maličký počítač Orange Pi Plus v Číně a co z něj v první chvíli vylezlo jsem sepsal, nafotil a právě mi vychází článek na webzinu Root.cz - najdete ho tady.

úterý 12. ledna 2016

Knight Rider a Arduino

Jak už jsem psal před dvěma a půl lety zde na blogu, Arduino mi připadá jako vhodné řešení mnoha drobných problémů: třeba když je potřeba rozblikat světla na kapotě KITTa - bájného to vozidla Michaela Knighta ze seriálu Knight Rider. Když jsem pak před pár týdny na Google Plus narazil na nějakou debatu, kde lidé nevěděli, jak přesně právě ta KITTova světla na Arduinu udělat, neodolal jsem a pustil se do díla. Z původně plánované jednovečerní akce mezi Vánocemi a Novým rokem se vyklubalo něco poněkud většího, a protože mě to mimořádně bavilo, napsal jsem o tom nakonec delší blog post, ve kterém podrobně vysvětluji, jak jsem co naprogramoval a proč.

Ten blog post dnes měl vyjít zde na tomto místě, ale na poslední chvíli byl přesměrován na můj oblíbený webzine Root.cz, kde se za pár minut (už o půlnoci na 13.ledna) objeví online na této adrese. Věřím, že vás pobaví stejně, jako mě bavilo to nejdřív naprogramovat a pak o tom napsat :-)


S malými počítači se roztrhl pytel

Určitě všichni znáte Raspberry Pi - anglický počítač určený původně k výuce (resp. k přilákání školních dětí k programování počítačů). Za 35 amerických dolarů spousta výkonu na maličké destičce. Byl to velký hit 2012/2013 - sám jsem podlehl davu a na konci jara 2013  si ho také koupil. Bohužel jsem pro něj dlouho neměl žádné rozumné využití, snad s výjimkou nočního kamerového hlídače. Jako náhrada stolního počítače, srdce multimediálního centra, webového serveru či síťového disku, jak ho většina lidí používá, je bohužel velmi nevhodný, protože má pomalou grafiku, pomalé síťové rozhraní a chybějící rozhraní pro připojení pevného disku.

Během roku 2015 se vyrojila velká spousta podobných počítačů, které nad původním Raspberry Pi vynikají jak vyšším výkonem, tak i nižší cenou. A jak se blížily Vánoce, nové počítače se vynořovaly prakticky každý týden. Sám jsem nevěděl, který si vybrat, a tak jsem v rámci průzkumu trhu sepsal tento krátký aktuální přehled malých jednodeskových počítačů, který mi vyšel na Root.cz první pracovní den letošního roku. Je pod ním, jak je zvykem, bohatá diskuse s pár užitečnými informacemi.

Na podzim 2015, když na webu raspberrypi.org vyšly aktualizované obrazy operačního systému Debian Jessie, jsem neodolal a pro účely jednoho projektu jsem si koupil "dvojku", tedy čtyřjádrový Raspberry Pi 2. Papírově měl být mnohem rychlejší než "jednička", tak jsem doufal, že už bude použitelný. Bohužel se ukázalo, že pro účely náhrady stolního počítače je téměř stejně nevhodný jako "jednička" - je stále velmi pomalý, akcelerovaná grafika chybí jako sůl. Samozřejmě programy se pomalu spouští a v relativně omezené paměti jich moc naráz nezůstane. Swapovat na SD kartu nemá smysl. Jako multimediální centrum je trochu lepší než jednička, ale pořád to není žádný "blesk".

Po zklamání z Raspberry Pi 2 na 900 MHz jsem neodolal a koupil si v Číně Orange Pi PC - kopii Raspberry Pi 2, ale s jiným procesorem taktovaným na 1,6 GHz. Doufal jsem, že mi dorazí do Vánoc a budu schopen vedle sebe na stole porovnat Raspberry Pi "jedničku" a "dvojku" a také Orange Pi PC. Už jsem plánoval nějaké rozumné testy, připravoval se na Phoronix Test Suite, ale pak uplynulo 49 dní a ukázalo se, že Orange Pi PC nikdy neopustilo hranice Číny a prodejci se vrátilo jako nedoručitelné. Jaká ironie, když mi od téhož prodejce přišla kamerka k Orange Pi, koupená ve stejný moment s tím PC a odeslaná na stejnou adresu.

Aby mi Orange Pi kamerka nezůstala ležet ladem (k ničemu jinému se nedá připojit), objednal jsem obratem jednu z nejdražších a nejvybavenějších verzí - Orange Pi Plus. Ta je v tuto chvíli už tři týdny někde mezi nebem a zemí a jen doufám, že někdy dorazí až ke mně. Potom se pokusím porovnat ji alespoň s Raspberry Pi, nebo co bude zrovna po ruce. Bohužel už teď vím, že bude mít slabé a pomalé SATA rozhraní, takže mé hledání vhodné malé desky na provoz síťového serveru nekončí. A dost možná, že nad ARMovým řešením zlomím hůl a vrátím se do světa amd64, kde síťové a diskové rozhraní fungují bez obav a na plný výkon, o akcelerované grafice ani nemluvě.

pondělí 26. října 2015

Arduino na 433 MHz a bazénový teploměr

Moc se mi líbí jezdit na konference o Linuxu, Open Source a souvisejících tématech - například na LinuxDays či OpenAlt (dříve LinuxAlt). Rád se tam potkávám se zajímavými lidmi, hltám přednášky a užívám si srocení chytrých lidí a všeho toho šrumu okolo.

A letos jsem dokonce dostal příležitost na LinuxDays vystoupit s vlastní přednáškou - vlastně rovnou se dvěma přednáškami - na mé tolik oblíbené téma: Arduino. Existují videozáznamy z obou z nich, takže se můžete pobavit, i když jste v Praze nebyli.

První přednáška se jmenuje "Arduino a Internet věcí" (prezentace zde):




Druhá se jmenuje "Arduino na 433 MHz" (prezentace zde):



Jak jste si při sledování videí nemohli nevšimnout, i přes pečlivou domácí přípravu jsem zvlášť v druhé přednášce narazil v časovém stresu na opravdu zrádnou věc: skrytou vnitřní kapsu batohu, která ukrývala klíčové předměty, které se měly stát vrcholy mé přednášky. A já je prostě nedokázal v tom tlaku rychle najít a myslel jsem si, že jsem je někde zapomněl. Ale hodinu po přednášce jsem je v tom batohu už našel! Je to možné? Fakt se mi to stalo... No mrzelo mě to tak moc, že jsem se rozhodl průšvih z přednášky napravit.

A za nápravu považuji sepsání tohoto článku, který mi právě teď vychází na Root.cz. Najdete v něm nejen doplnění mé přednášky o chybějící meteostanici, ale především podrobný popis až skoro návod, jak si můžete postavit vlastní venkovní bezdrátové čidlo k existující meteostanici napájené akumulátorem dobíjeným solární energií. Tak směle do toho! :-)

EDIT: článek má ještě dvě pokračování: druhé a třetí. A pod každým je velmi výživná diskuse. Pěkné počtení! :-)

středa 7. října 2015

Dual Joystick USB adaptér

Pravděpodobně jste někdy hráli hry na starých skvělých 8bitových počítačích jako jsou Atari 800 XL nebo třeba Commodore C64. Anebo jste mladšího data výroby, takže jste už jen slyšeli vyprávět, jaké to bylo úžasné, když vaši rodiče pařili celé dny i noci nesmírně chytlavé, hratelné, boží hry.

International Karate pod posvátnou horou, která dala tvar Atari logu
Pokud nemáte to štěstí, že byste měli doma funkční počítač z osmdesátých let, nezoufejte. Existuje celá řada velmi zdařilých emulátorů, programů, díky kterým i na obyčejném kancelářském PC či Macu můžete zprovoznit k nerozeznání podobné prostředí, ve kterém bezchybně běží ty 30 i více let staré, ale stále naprosto dokonalé a zábavné hry.

Montezuma's Revenge
Jen namátkou jmenuji Atari800 emulátor (na kterém už přes deset let pracuji v celosvětovém týmu dalších dobrovolníků), nebo jsem teď třeba viděl emulátor konkurenčního počítače C64 pojmenovaný VICE. Samozřejmě existují mnohé jiné emulátory stejných počítačů - Atari 800 i C64 byly ve své době naprosté fenomény a každý je chtěl, což přetrvalo i do doby, kdy programátoři museli dospět a přejít na kancelářské nevzhledné šedivé krabice (=PC). Takže jak to bylo jen trošku možné, ti schopnější ihned začali programovat emulátory svých dávných lásek a díky tomu máme dnes skutečně bohatý výběr.

legenda Quick Shot, kdo by si ho nepamatoval?

Ovšem je tu jedna věc, která zážitek kazí: chybí původní ovladače, pákové joysticky. Ano, ty otřískané, vymleté, stokrát spravované a někdy i ulomené Quick Shoty II a jim podobné. Hrát tehdejší hry na dnešní klávesnici není vůbec zábavné, je to jiné ovládání, jiný pocit. Ale kdyby tak bylo možné vzít ze skříně ten starý joystick (případně někde koupit nový) a připojit ho k PC/Mac/RaspberryPi, pustit emulátor oblíbeného stroje přes celou obrazovku, osolit zvuk naplno - tak by to bylo stejně úžasné jako tehdy!

elegantní stříbrná raketa se dvěma tryskami
Pokud chcete dětem ukázat, jaký gamesník se ve vás ukrývá, případně chcete pochopit, proč na ty staré hry s 2D grafikou a čtyřkanálovým zvukem vaši rodiče pořád s láskou vzpomínají, pořiďte si můj nejnovější vynález - Dual Joy USB adaptér.

levý je #1, pravý je #2
Díky němu jednoduše připojíte jeden nebo dva pákové ovladače k jakémukoliv stroji s USB a můžete začít pařit stejně jako tehdy!

adaptér doporučuji připojit přes USB prodlužku
Adaptér je testován pod Androidem, MS Windows XP/7/8/10, Apple OS X a Linuxem, ale nemá důvod nefungovat i kdekoliv jinde. Funguje jako standardní HID zařízení a zprostředkuje 4 směry a jedno tlačítko, přesně jako to měly ty staré Atari/Commodore joysticky (pokud tam bylo více "Fire" tlačítek, byly navzájem propojené).

Archon - bojové "šachy" pro dva hráče
Při jeho návrhu a výrobě jsem využil téměř roční zkušenosti s PARCP-USB adaptérem, takže jsem už nešel do mini USB zásuvky, ale nechal jsem trčet USB konektor ven.


Může vám to připadat nezvyklé, nebo dokonce nebezpečné, ale když použijete krátkou USB prodlužku (místo abyste adaptér cpali přímo do PC), tak ten konektor snad nevylomíte.


Vevnitř najdete mikrokontrolér a pár nezbytných součástek. Ano, chtěl jsem tam původně vestavět Arduino Pro Mini, ale o pár milimetrů se mi tam nevešlo, tak jsem stejně jako u PARCP-USB musel nakonec navrhnout vlastní plošný spoj a osadit to jiným procesorem. Nevadí, aspoň to vypadá krásně elegantně nejen zvenku, ale i uvnitř :-)

Takže pokud máte o tento můj nejnovější vynález zájem, napište mi mail.

A to nejlepší na závěr: pokud nemáte dostatek Atari her, určitě hned zamiřte na Fandalův archív - nebudete věřit, kolik tam toho má!

čtvrtek 3. září 2015

Solární dobíjení autobaterie - fáze I

Letošní horké léto dalo slušně zabrat olověným akumulátorům v automobilech. Nedávno jsem, při hrátkách s napojením se na sběrnici automobilu (což je další zajímavý příběh), změřil napětí baterie a zjistil, že má sotva 11,8 V - to je už podpětí zkracující životnost akumulátoru. Musel jsem rychle jednat - otevřel jsem motorový prostor, našel akumulátor, odpojil ho, přinesl nabíječku, připojil jsem ji k autobaterii a začal rychle dobíjet. Po hodině jsem šel situaci zkontrolovat a našel (komerční) nabíječku mrtvou. Pochopil jsem, že tudy cesta nevede a rozhodl jsem se pro lepší řešení - místo občasného složitého dobíjení autobaterie velkou nabíječkou z elektrické sítě bude lepší trvale a průběžně dobíjet autobaterii energií solární.

Samozřejmě, že pro solární dobíjení existují hotová řešení. A samozřejmě, že jsem si žádné z nich nekoupil a raději zkusil postavit vlastní. Proč? No přece abych si pohrál, a hlavně abych to udělal lepší, než jsou na trhu nabízená řešení. Lepší znamená mít vevnitř Arduino. Ale to bude až ve druhé fázi, nejdřív předvedu fázi I.

Takže pro solární dobíjení potřebujeme solární panel. Na AliExpressu jsem si koupil krásný "Solar Panel Module for Light Battery Cell Phone Charger Portable 6V 2W 330MA DIY" za $3,36, tedy asi 84 Kč:



Bylo zrovna 1. září, půl páté odpoledne, když jsem k panelu připájel kabely a poprvé ho zkusil vystavit středoevropskému slunečnímu svitu:



7 voltů místo slibovaných 6, a skoro 300 miliampér ve zkratu? To jsou na tak pozdní odpoledne výborné hodnoty!

Teď jen potřebuju z těch až sedmi voltů vyrobit trvalých 14,40 V, což je prý takové rozumné napětí pro konečnou fázi nabíjení ("udržovací napětí") plně nabité 12V olověné baterie/akumulátoru. Na to použiji osvědčený "zvyšovač" napětí s čipem XL6009 - "1pcs XL6009 DC-DC Booster module Power supply module output is adjustable Super LM2577 step-up module" za krásných $0,90, tedy asi 22 Kč:


No a na výstup měniče napětí stačí připojit konektor do "cigaretového zapalovače", trimrem nastavit správné napětí, zastrčit do palubní desky a už nabíjíme! :-)

EDIT 4.září: podle první reakce pod článkem jsem zřejmě nenapsal, co přesně od solární dobíječky autobaterie očekávám, takže to sem doplňuji: Tento můj "vynález" nemá za úkol naplno dobít zcela "vytlučenou" baterii, ale má jen doplňovat ztráty způsobené samovybíjením baterie a odběrem stojícího vozidla. Pokud zvládne i víc (doplňovat odběry způsobené starty motoru, hlasitým poslechem autorádia či svícením světlomety bez běžícího alternátoru), bude to příjemný bonus.

Podle Wikipedie se samovybíjením olověného akumulátoru ztratí 3 - 20 % kapacity měsíčně. Mám novou 60 Ah baterii, tak dejme tomu 5 % za 30 dní, to jest 0,1 Ah za den.

Elektrosoustava stojícího vozidla (tj. jen alarm, rádio, blikající LED na palubovce) odebírá například 5 mA (to jsem neměřil, ale díval jsem se po fórech a může to být kolem 4 mA, nebo při více spotřebičích trochu víc) - tak potom je denní ztráta 0,12 Ah.

Dohromady tedy denně baterie stojícího automobilu zchudne o 0,22 Ah (velmi hrubým odhadem) . A toto množství energie tam potřebujeme doplnit. Moje sestava solárního panelu a měniče dokáže dodávat řekněme 100 mA (nezměřeno, jen tipuju) při opravdu pěkném slunečním svitu. To znamená, že za tři hodiny by měla denní ztráty pokrýt...

Samozřejmě v praxi budou všechna ta čísla u každého auta úplně jiná, podle stáří baterie, zapojení vozidla, nastavení panelu ke Slunci atd. Plus kdo denně 10x startuje, ale ujede dohromady jen 5 km, vybije baterii startérem. Ale čistě teoreticky by to mělo být schopno autobaterii aspoň trošku udržovat při životě... Praxe ukáže!

V plánované fázi II připojím k sestavě Arduino s displejem, které bude měřit napětí, proud, a počítat energii, kterou Slunce do akumulátoru vložilo. O tom napíšu zase příště, až budou fotky, schéma, plošný spoj a program hotový.

středa 2. září 2015

Stabilní napájení pro Raspberry Pi s WiFi a NoIR kamerou

Kromě haldy Arduin mám doma i jedno staré Raspberry Pi s (infra) kamerkou. Kdysi jsem si ho koupil, abych mohl sledovat a nahrávat noční život. Na nic jiného se Raspberry Pi asi nehodí - protože všechno ostatní zastane Arduino :)

Když jsem ho teď po půldruhém roce našel, oprášil a pokusil se ho použít, narazil jsem na zásadní problémy s napájením. Jak jsem je vyřešil, a co jsem na infra kamerku nakonec natočil, jsem sepsal do blogpostu, který se nakonec proměnil v článek na http://www.root.cz/clanky/nocni-lovy-beze-zbrani-s-raspberry-pi/