Stavebnice kalkulačky ET-58
Kalkulačky Texas Instruments TI-58 / 59 jsem dlouhá léta miloval. Když se objevil "klon" pod názvem ET-58 jako stavebnice na webu pajenicko.cz, odolával jsem jen chvíli. A hned jsem udělal několik úprav, které této skvělé stavebnici ještě trochu pomohly.
Kalkulačky TI-58/59 jsem obdivoval od doby, kdy si táta jako veliký poklad nosil domů z práce jejich chudšího bratříčka TI-57. Fascinovala mne jednak ta tušená složitost a chytrost (tehdy mi mohlo být tak osm, deset let), jednak design a samozřejmě ty fantastické "bublinkové" LED číslicovky na displeji.
Postupem let jsem si koupil různě (ne)fungující vraky TI-58/59 s tím, že se mi z nich podaří postavit aspoň jednu funkční (což se nakonec podařilo), ale když jsem na fóru OldComp zahlédl diskutovaný projekt HW emulátoru zmíněných kalkulátorů, stejně jsem napnutě čekal, jak se to vyvine. A vyvinulo: Po ověřovací sérii autor (ing. Miroslav Němeček) jednak zveřejnil všechny podklady na svém webu, jednak se domluvil s majitelem e-shopu Pájeníčko, který celý projekt upravil tak, aby jej bylo možné levně vyrobit (to se týká především klávesnice a jejích popisek) a začal ho prodávat jako stavebnici.
To už jsem nevydržel a objednal.
A proč vlastně? Protože celou logiku a přesnost (o rychlosti a rozšíření funkcí ani nemluvě) autor posunul o velký kus dál - kalkulačka využívá 16x2 displej pro stavové hlášky nebo listing programu včetně instrukčních kódů, a v neposlední řadě využívá "dlouhý displej" pro zvýšení přesnosti. Uznejte, že mít doma výpočetní stroj, který zobrazí číslo pí nebo fí na třináct desetinných míst a bez zaváhání vypočítá faktoriál čísla 3208, je prostě k nezaplacení. (Pamatujete, jak jsme se na střední předháněli, čí kalkulačka spočítá faktoriál čísla 69 nejrychleji? A že větší číslo uměla jen málokterá? Tak ET-58 je strčí do kapsy všechny - ona umí čtyřmístný exponent. Mimo jiné. Ona toho umí daleko víc, ale to sami zjistíte v dokumentaci, je to docela napínavé čtení.)
Vlastní sestavení stavebnice proběho snadno, rychle a pohodlně asi za dvě a půl hodiny (jen pájet tu klávesnici bylo trochu otravné, ale co by člověk pro sebe neudělal), k tomu vlastně nemám žádné připomínky nebo výhrady (no dobře, autor by nemusel tak moc trvat na THT technologii). Jenomže se nějaké drobné mušky přece jen při provozu ukázaly.
Jednou z nich byl fakt, že kalkulačku sice bylo možné provozovat na baterii, ale jen na knoflíkovou 2032, a že v tomto případě kvůli úspoře energie nefunguje podsvícení displeje. A protože já celkem mizerně vidím, bez podsvícení si to neužiju.
Prvním krokem tedy byla demontáž držáku baterie a provozování jen s USB kabelem. To vcelku šlo, jen miniUSB kabel směřoval z kalkulačky do místa, kde jsem o něj každou chvíli zavadil a na stole překážel. Navíc při napájení z USB zůstávalo trvale zapnuté podsvícení displeje, a to i když procesor spal a kalkulátor byl vypnutý.
Prozkoumal jsem schéma (volně dostupné na stránkách autora) a zjistil, že když kalkulátor usne, jeho procesor sice poctivě vypíná elektroniku LCD, ovšem jeho podsvícení je trvale napájeno přes odpor 100R přímo z USB konektoru a vypnout jej nelze.
Ze zásob jsem vylovil N-MOSFET IRLRL2502, na desce kalkulačky odškrábnul spoj mezi katodou podsvícení displeje a zemí, katodu připojil na source, zem na drain a gate prodrátoval na onen napájecí pin LCD. A po několika drobných rošádách s umístěním tranzistoru na desku (byste nevěřili, kolik se dá udělat se třema nožičkama kombinací :) tento začal spínat podsvícení podle napájení displeje. Kalkulačka tedy fungovala a zhasínala podle potřeby, ale pořád jen jako stolní.
Další HW úpravou tedy byla instalace nabíjecího modulu pro Li-Ion (modul s TP4056 v aktuální verzi s USB-C) a s nějakým "archivním" akumulátorem (původně pro nějakou Nokii s 1100 mAh). Připojení bylo jednoduché - výstup z nabíjecího modulu jsem přivedl do místa, kam původně vedlo 5V z miniUSB konektoru (který jsem také demontoval). Zatím je jak modul, tak akumulátor přilepen ke spodní desce, ale to učešu, až se bude řešit krabička.
Jupí, konečně mám fungující kapesní kalkulátor! (i když pro dost velkou kapsu). A protože ho mám stále po ruce, začal jsem jej i častěji využívat. A ukázala se další muška - popis klávesnice byl příšerně nepřehledný a ztrácel jsem se v něm i po pár dnech používání. Rozhodl jsem se tedy vyrobit přelepku přes stávající horní panel.
Po boji s Inkscapem ze mne nakonec vypadl grafický návrh, ten jsem dal v plen na konferenci HW-list, jeden z kolegů si ho vytiskl, zalaminoval, vyřezal, nalepil, vyzkoušel a chválil. Já, protože u práce máme reklamku, jsem zadal výrobu, tisk, laminaci a vyřezání těch mrňavých koleček profesionálům. Po asi třech dnech (vyjednávání, kontrola podkladů, tisk omylem ve 200 dpi, takže to bylo hezké, ale kapku velké) jsem dostal do ruky verzi, která pasuje, jde nalepit a ještě se dá přečíst (ale i tak bych nějaké příští verzi mohl zkusit popisky pro 2nd a 3rd funkce přece ještě trochu zvětšit). Před nalepením to ale chtělo zbrousit horní plochu a odstranit původní popisky, protože skrz tenkou fólii by vystupoval jejich reliéf a působil rušivě (ale já to vyzkoušel to na odřezku fólie, takže jsem skutečnou samolepku nezničil, heč).
Hernajs, a to jsem si až teď všimnul, že mi to v reklamce vytiskli jiným fontem - že to na pár místech o nějaký ten pixel ujelo jsem si všiml, ale nedošlo mi, čím je to způsobené. To vysvětluje i ty malé popisky u druhých a třetích funkcí :( Zjevně není dobrý nápad předávat data vektorově, příště (bude-li nějaké příště) to dostanou jako obrázek, na tom snad není co zkazit...
Než mi vytiskli grafiku, ještě jsem mírně naklopil LCD displej směrem k obsluze - když ležela ET-58 na stole, tak jsem koukal na displej dost "zespodu", a ať jsem nastavoval kontrast, jak jsem chtěl, nebylo to ono. Namaloval a 3D tiskem jsem vyrobil úhlové podložky pod a nad LCD, displej odpájel, založil podložky a displej připájel v nové poloze. Čitelnost displeje se dramaticky zlepšila.
Pak mi dorazil i žlutý OLED z Ali. Jeho instalace si už vyžádala hlubší úpravy v napájení - původní LCD je totiž živený přímo z výstupního pinu ATmegy, ale ta takhle OLED s udávanou spotřebou cca 30 mA (při 50% zaplnění) neutáhne. Využil jsem přitom i osazený P-MOSFET IRLML6402, který původně odpojoval napájení z baterie při provozu z nabíječky. Chtělo to trochu škrábání na desce, trochu drbání na hlavě, něco drátků, ale nakonec je vše osazené a funguje, finis coronat opus.
Ještě by to tedy chtělo krabičku (i na tu dojde), a to bude snad s touto verzí všechno. Ale... rád bych to celé nacpal do mechaniky z vraku skutečné Texas Instruments TI-58, jen zatím trochu narážím na to, že se mi do krabičky nevejde žádný mně známý displej z Ali nebo Buydisplay (i když... zatím to vypadá, že výše uvedený 16x2 displej z Ali jde rozebrat a zmenšit o zbytečnosti - pak by se tam vejít měl.)
Ale hlavně "by se sneslo" něco k ukládání programů - SD karta nebo modul s EEPROM, ale to už vyžaduje i masivní programátorské zásahy, a přestože jsou k dispozici zdrojové kódy, jednak se mi zatím je nedaří zpětně přeložit, jednak je to celé napsané v assembleru, který sice jakž takž chápu, pokud si v něm čtu, ale nedovedu si představit, že bych v tom napsal cokoli většího, než blikání LEDkou...
Ale mám od původního autora zdrojáky a podklady pro jeho následný (a nedokončený) projekt TI-59R, který by tohle měl řešit - jen bych si ho musel dodělat, vyrobit, možná to přepsat pro jiný procesor (ale tahle verze už je v C, s tím se dá žít), prostě práce jak na kostele a času pořád málo.
Ještě uvidíme, zatím nechci nic naznačovat :)
Ještě pár slov k obsahu a kvalitě fotek: Jsou mizerný, já vím a psát mi to nemusíte - vznikaly při práci mobilem (a kdo mi bude tvrdit, že Samsung má v telefonech dobré foťáky, tomu asi ublížím) a světlo, potřebné pro práci s SMD, vypadá úplně jinak, než světlo, vhodné k focení. A protože mám kolem sebe místnosti uzpůsobené spíš té práci, dopadá to takhle...