pondělí 16. října 2017

Přednáška o novinkách u Espressif Systems na LinuxDays 2017

Na letošních LinuxDays jsem měl i přednášku věnovanou výrobci známých a nesmírně populárních WiFi čipů ESP8266 a ESP32 (a jejich dalších variant). Přednášky věnované ESP8266 a ESP32 jsem měl už dříve (jak na LinuxDays a InstallFestu v Praze, tak i na OpenAltu v Brně), takže tentokrát jsem se mohl zaměřit jen na některé konkrétní věci, a samozřejmě zmínit všechno nové, co se u ESP událo od poslední přednášky.

Seznam mých přednášek s prezentacemi v PDF a videi na Youtube najdete zde: pstehlik.cz/prezent


Pozor, ironický sarkasmus!

Po mé minulé naprosto nadšené přednášce o ESP32, kde jsem nešetřil superlativy při popisu všech těch fantastických novinek a hardwarových vychytávek, které Espressif Systems dokázali nacpat do jádra ESP32, jsem dostal krom řady pozitivních i jednu negativní reakci. Spočívala v tom, že když jen takto nekriticky chválím, tak působím nedůvěryhodně, protože skutečný odborník by prý zmínil i negativa. Vzal jsem si to k srdci a rozhodl se tuto přednášku, nebo alespoň její větší část, vést sarkasticky v rádoby velmi kritickém duchu, abych uklidnil skutečné odborníky a spravil si u nich svou "pošramocenou pověst" :-)

Cítil jsem, že je to poměrně riskantní krok, protože mě málokdo zná dost dobře na to, aby věděl, kdy si dělám legraci. Proto jsem rovnou na první slajd celé přednášky v PDF napsal 

Nemilosrdná kritika skutečného odborníka

a jelikož jsem si pořád ještě nebyl jist, jestli to diváci pochopí jako nadsázku, tak jsem ještě výslovně v přednášce vysvětloval, že tento text měl být v uvozovkách - nejdřív ten skutečný odborník, protože jím zdaleka nejsem, no a pak i ta nemilosrdná kritika, neboť to bylo celé míněno velmi ironicky.

Dlužno dodat, že i když jsem se snažil rádoby drsně kritizovat, tak všechno, co jsem říkal, byla neustále fakticky pravda - tj. v ESP32 jsou skutečně hardwarové chyby, v nové revizi se podařilo opravit jen část z nich, jedna chyba se dokonce objevila při opravě předchozí chyby a navíc je tam ten nelineární a poněkud nepřesný ADC převodník, takže měřit analogové veličiny není s ESP32 moc dobrý nápad. 

Při tom jsem se mimochodem spletl - ESP32 má přepínatelnou přesnost ADC, takže není jen 10bitová (jak jsem uváděl), ale i 9, 11 a 12bitová. Navíc umí přepínat "zesílení", takže jakoby mění referenční napětí. A z této komplexnosti asi plyne i nějaká ta chybička v hardware, kterou se inženýři v Espressif Systems snaží prozatím obejít softwarově.

Zároveň je ale i pravda, a to jsem na přednášce také zdůrazňoval, že v reálu se s většinou těchto chyb nepotkáte. Velkou většinu z nich se podařilo obejít v SDK (v knihovnách, které použijete při programování ESP32) a pokud nepřipojíte externí SRAM a nebo nebudete v assembleru šachovat ve vícevláknovém procesu na určitých specifických adresách v paměti, nemělo by vás při programování nic trápit.

A to nepřesné ADC? To by bylo nejjednodušší vyřešit připojením externího ADC komunikujícího přes I2C. Takových broučků za pár korun budou na trhu mraky.

Brno je zlatá loď, za děvčaty z Brna choď...

Na přednášce jsem též s chutí zmínil novinky, kterých je u Espressif Systems hodně. Nejzajímavější je otevření prvního zahraničního vývojářského centra, pro které si Číňani nějakým zázrakem vybrali z celého světa právě Brno. Je neuvěřitelné, že naši čeští (a slovenští) inženýři můžou být přímo u zdroje ESP čipů a svou každodenní pečlivou prací vylepšovat softwarovou podporu pro tento celosvětově úspěšný čínský čip. Přiznejme si, že i když na ESP-IDF (SDK pro ESP32) odvedli v Číně obrovský kus práce, tak pořád je nejméně stejný díl před nimi. Bude naprosto super, jestli k tomu přispějí i kluci a holky v Brně.

ESP32-PICO-D4

Díky Johnu Lee z Espressif Systems jsem i letos mohl přímo na přednášce něco unboxovat, tedy rozbalit a v přímém přenosu předvést celému sálu a světu. Bohužel jsme to technicky nezvládli - i když jsem si původně plánoval připravit pětikorunu jako měřítko, tak jsem zapomněl položit na tu promítací zvětšovací věc, tím pádem jsem neměl vychytané zaostření na tak maličký čip, jakým je ESP32-PICO-D4, a na tom to celé selhalo. Omlouvám se a doufám, že to alespoň pobavilo. Zde je zaostřená fotka, která ukazuje, jak miniaturní ESP32-PICO-D4 doopravdy je:



Je zřejmé, že ESP32-PICO-D4 je opravdu fantasticky integrovaný systém. Stačí fakt jen anténa a zdroj a máme funkční WiFi počítač s několika procesory, na 240 MHz, s velkou pamětí a se spoustou vnitřních senzorů. Jsem tím doslova uchvácen a je mi fuk, že to nekritizuju, takže odborníci z toho budou zase mimo. Doufám, že budu mít chvíli času k tomuto doslova mikročipu připojit miniaturní anténu a pak ho zprovoznit třeba jen na CR2032 :-)

Přednáška o Orange Pi na LinuxDays 2017

Installfest a LinuxDays

Přednášku věnovanou jen Orange Pi jsem měl na jaře na Installfestu. Tudíž na LinuxDays jsem se chtěl zaměřit především na novinky, abych se moc neopakoval. Bohužel na přednášku jsem měl v programu jen 25 minut, takže jsem už předem věděl, že toho moc říct nestihnu. Téma Orange Pi a vůbec těch malých jednodeskových počítačů v čele s Raspberry Pi je nesmírně obsáhlé a dalo by se o něm hovořit a hlavně předvádět různé věci celé hodiny.

Prezentaci z přednášky v PDF najdete tady: https://www.pstehlik.cz/prezent/

Zbytek tohoto článku shrnuje, doplňuje a opravuje informace, které zazní ve videu z letošních LinuxDays:




Raspberry Pi

Kromě Raspberry Pi s jeho novým desktopem Pixel (dostupným i pro Mac a PC) je zajímavé, že máme oficiálního českého distributora, díky čemuž už ceny Raspberry Pi Zero nedosahují takových výšin. Původně Zero nebylo dlouhodobě dostupné, případně se prodávalo v balíčku s tolika nesmyslnými kabely a redukcemi, že to vyšlo dráž, než si ho poslat přímo z UK. Nyní je to za 157 korun myslím velmi dostupný gigahertzový stroj.

ODROID a další

Dále jsem chtěl využít toho, že mám osobní zkušenosti s platformou ODROID a jejich nejvýkonnějším modelem XU4. Přivezl jsem jeden kousek a nechal ho kolovat, aby si návštěvníci LinuxDays mohli osobně zblízka osahat jihokorejskou kvalitu. XU4 má už několik let USB3 port, gigabitový ethernet a hodiny zálohovaného času, takže je velmi vhodný na všechna ta serverová nasazení s externími disky, kde lidé pořád nesmyslně trápí Raspberry Pi. Osobně jsem na ODROID XU4 vyvinul rozpoznávání obrazu v reálném čase, kdy všech 8 jader jede naplno a paralelně rozpoznávají následující snímky z kamery. Na Raspberry Pi by něco podobného bylo 4x pomalejší, tedy mimo reálný čas.

ODROID XU4

Stručně jsem prolétl i ostatní konkurenty na poli SBC, ale nezacházel jsem do detailů, neboť je neznám. Publikovat údaje z marketingových letáků jsem nechtěl, protože se často hodně rozcházejí s realitou v praxi.

Vlastní Orange Pi

Konečně jsem se dostal k Orange Pi, kde jsem stručně prošel všechny čtyři kusy, se kterými mám osobní zkušenost: Orange Pi Plus, Orange Pi One, Orange Pi Zero a Orange Pi PC Plus - ten poslední jsem si koupil speciálně kvůli letošním LinuxDays, neboť jsem doufal v živou ukázku. Měl jsem nainstalovaný systém z www.h3droid.com, který je velmi zajímavý tím, že na začátku nainstaluje něco jako "grub" - jednoduchý, ale mocný systém pro instalaci a konfiguraci dalších věcí, a to nejen Androidu, ale i Armbianu.

Orange Pi Zero

Ve výsledku mám nyní na SD kartě dual boot, tedy při startu možnost vybrat jeden ze dvou různých operačních systémů - Android nebo Debian. Je to velmi pohodlné a mocné - člověk tak rychle porovná například stav hardwarové akcelerace grafického výstupu nebo HDMI CEC, které prý u tohoto konkrétního typu opravdu funguje.

Orange Pi PC Plus

Tři důležité novinky u Orange Pi

Dále jsem chtěl zdůraznit tři velmi důležité novinky z Orange Pi "kuchyně". Za prvé - firma Shenzen Xunlong Software je nesmírně rychlá, neustále rostoucí a má skutečně velké ambice. Brzy bude produkovat takové množství hardware, že snad doroste i Raspberry Pi. To pro uživatele znamená, že se zřejmě nemusejí obávat, že by Orange Pi jakoby "zmizelo z trhu".

Druhá důležitá novinka je, že se firma vyrábějící hardware snaží o lepší softwarovou podporu - ať už partnerstvím s Ubuntu, anebo finanční podporou Armbianu, který je defacto jediným fungujícím operačním systémem pro Orange Pi.

Třetí novinkou, především pro české uživatele, je nově vzniklá skupina na Facebooku, kde se česky/slovensky domlouvají mezi sebou uživatelé (nejen) Raspberry Pi. Běžně se lidé trochu bojí koupit si něco jiného než Raspberry Pi, protože cítí, že by mohli s exotickým čínským hardwarem zůstat osamoceni jako kůl v plotě. U Orange Pi už to myslím nehrozí - kromě obří mezinárodní anglicky hovořící skupiny na Facebooku (8000+ členů) je tu nyní nejméně 200 československých lidí připravených sdílet své zkušenosti. A to je pro rozšiřování Orange Pi zásadní věc.

H5? H5!

Velmi zajímavé je, že jsem chtěl přednášku využít též jako varování uživatelům, kteří by si chtěli koupit některé z novějších Orange Pi s 64bitovým Allwinner H5 procesorem. Podle informací z Armbian fóra i facebookové skupiny jsem věděl, že procesory H5 nemají dobrou SW podporu - nová linuxová jádra na nich neběžela vůbec, takže uživatel byl odsouzen k používání starého děravého jádra od výrobce. Před tímto jsem na přednášce v sobotu 7. října varoval a měl jsem dobrý pocit, že jsem možná někoho uchránil před zklamáním.

Ovšem už o pouhé tři dny později, v úterý 10. října, se všechno změnilo! Igor slavnostně oznámil, že po mnoha měsících tvrdé práce pár dobrovolníků nyní Allwinner H5 běží i s nejnovějším jádrem Linuxu! A aby toho nebylo málo, už následující den oznámil tuším NetBSD taky plnou podporu pro Orange Pi s Allwinner H5! Takže celé měsíce nic, a naráz si člověk může vybrat hned ze dvou kvalitních operačních systémů. To je skvělé!

Závěrem

Jednou bych si chtěl najít 3 hodiny času a udělat přehlednou srovnávací tabulku všech typů Orange Pi, které Xunlong aktuálně chrlí - ovšem už za další měsíc by ta tabulka byla neaktuální, protože tak rychle na trh uvádějí nové modely. Je jich skutečná záplava a je kumšt si vybrat správně. Snad jsem svou přednáškou aspoň trošku pomohl ukázat jak levné modely (Zero, One), tak i "střední" třídu (Plus, PC Plus). Nejvýkonnější 64bitové novinky či specialitky typu GSM IoT nebo dvousíťové routery jsem ještě v ruce neměl, tak jsem o nich zatím mluvit konkrétně nechtěl. Ale jak se znám, u čtyřech pomerančů neskončím a časem nakoupím další, tak třeba za rok budu mít nové zkušenosti či zprávy, o které se budu chtít někde podělit :-)