O .NET Micro Framework se zajímám od roku 2007. Koncem roku 2009 jsem si koupil svou první desku s čipem od GHI, na kterém je schopný .NET Micro Framework běžet. Těšil jsem se, jak napíšu článek srovnávající vývojové prostředí a nasazení softwaru do Atmel ATmega16 a GHI Embedded Master. Ani ve snu mě však nenapadlo, že můj první článek na toto téma bude o něčem úplně jiném.
Možná si ještě vzpomínáte, jak Bill Gates ukazoval nové možnosti Windows Vista. Jednou z nich byla technologie Windows SideShow předváděná na notebooku od Asusu. Šlo o samostatný počítač založený na ARM procesoru, který sloužil pro čtení emailů z malého displeje bez nutnosti zapínat celý notebook. Bylo to založené na Microsoft SPOT (Smart Personal Object Technology), který má své kořeny v FM rádiu, které bylo schopné zobrazovat informace ze služeb MSN. Další aplikace byly hodinky. Bohužel se moc neprodávaly, protože většinu lidí pocit, že v jejich hodinkách běží .NET, moc neuspokojí.
.NET Micro Framework má své velké kouzlo. Pro někoho, kdo má zkušenosti s programováním mikrokontrolérů v jazyce C či jazyku symbolických instrukcí, je možnost šáhnout si v jazyce C# až na pin procesoru prostě úžasný pocit. Psát programy, které běží od mikrokontrolérů přes mobily, PC až po servery a datové centra stále z jednoho moderního vývojového prostředí pomocí stejného vysokoúrovňového jazyka, považuji za největší úspěch Microsoftu v tomto století.
Zelený Embedded Master s vyvedenými piny na dostupnější 2,54mm rozteč a se zabudovaným Ethernet a USB rozhraním.
Po koupi hardwaru, už zmíněného GHI Embedded Master Breakout Board osazeného non-TFT verzí, jsem ho musel odevzdat a byl mi navrácen až 24. prosince. Brzy na to jsem se pustil do prvních programů, tenkrát ještě ve Visual Studiu 2008. Deska se zahřívala více, než jsem očekával, avšak majíc na svém Core i7 chladič Noctua NH-U12P mi to nepřipadalo divné.
Chladič Noctua NH-U12P pro Intel Core i7 může v určitých případech vyvolat milnou představu o ztrátovém teplu některých čipů.
Vývoj šel dál a tak jsem si časem nainstaloval Visual Studio 2010. Do Embedded Mastera však poté nešla nasadit aplikace. Pokusy o nasazení z jiného PC ještě z Visual Studia 2008 byly nejprve úspěšné, ale poté se ukázalo, že přechod na novější verzi vývojového prostředí není příčina potíží. Po čase nebyl Embedded Master ani rozpoznán operačním systémem jako USB zařízení. Flashnutí nového firmwaru pomohlo. Embedded Master byl zase vidět a radoval jsem se, že budu zase vyvíjet. To byla ale chyba. Protože byl flashnut jen firmware GHI bez aktualizace TinyBooteru, zařízení se dokola připojovalo a odpojovalo, jak se TinyBooter pořád restartoval snaže se ze své verze 3 nahodit TinyCLR 4.1. A tak jsem si prostudoval potřebné manuály a jal se výroby převodníku z RS232 na TTL UART pomocí čipu MAX232.
Nahrávání probíhalo tak, že jsem seděl u PC v roli operátora Tera Termu a bratr byl operátor resetování desky. Zatímco jsem zkoušel ping po COM a hlásil „Pořád nic, pořád nic,“ bratr náhle zvolal „Vypoj napájení, vypoj napájení!“ Spěšně jsem vypojil napájecí USB kabel a naklonil se k desce, abych se povíval, co se stalo. Jeden čip na Embedded Masteru tak topil, že roztavil antistatický plastový obal, na kterém ležel. Na povrchu čipu byla jasná výduť a po čichu se dala vytušit jeho jistá smrt.
„Měl si štěstí, že sis neodpálil základní desku,“ říkal bratr, protože jsem neměl po ruce starší PC, ke kterému bych mohl bezpečně připojit obvod sestavený na bastl poli. Nechápal jsem, kde byla chyba. Schéma jsme kontrolovali nezávisle oba minimálně čtyřikrát. Dodržel jsem doporučené zapojení MAX232 udané výrobcem. Ihned po připojení napájení jsem měřákem kontroloval, jestli v nějaké větvi není přepětí. Až poté mi to došlo. Když jsem si krátce po zakoupení prohlížel Embedded Mastera, hmatem jsem zjistil, že je na čipu drobná výduť. Když jsem vhodně naklopil pouzdro proti světlu, byla i vidět. Považoval jsem to však za vadu pouzdra. A to byla chyba, dnes už zkušenost.
Po posledním zahřátí už zřetelně viditelný vyboulený obal čipu.
Reklamace nepřipadala v úvahu, jednak z velkého časového odstupu a jednak proto, že jsem měl závadu poznat hned při předání zboží. Výrobce ani prodejce nejsou příčinou problému. Je to škola, která mě nevybavila praktickými znalostmi.
Chybami se člověk učí, takže nezbývá, než se pokusit vadný čip 48LCHM16A2 sehnat a vyměnit. Prvním krokem je odřezání čipu skalpelem a zjištění jestli plošný spoj pod ním neutrpěl újmu.
Skalpel se osvědčil jako nejužitečnější příslušenství mikroskopu.
Jestli jsou i ostatní součásti v pořádku neumím se svými znalostmi a vybavením určit. Vzhledem k cenovému rozdílu mezi EMX Board, jak se dnes Embedded Masteru říká, a vadným čipem, to za pokus stojí.