Jak funguje Albi tužka

Jak funguje Albi tužka

Albi tužka je malý počítač ve tvaru tužky. Má svoji baterii, procesor, interní paměť, paměťovou kartu a zvukový výstup. Na špičce tužky jsou dvě infračervené LED diody a CCD nebo CMOS obrazový snímač, jako je v digitálním fotoaparátu nebo v počítačové myši. Pomocí LED diod a obrazového snímače se přečte OID kód vytištěný na obrázku. Procesor zjistí údaje z kódu a poté začne přehrávat odpovídající zvukovou stopu.

Jak fungují Albi knihy

Nejprve se podíváme na obrázky v knížce. Tužka umí číst jen obrázky, které jsou pro ni určené. Aby Albi tužka dokázala obrázek přečíst, musí přes něj být vytištěn OID kód. To je opakující se vzor malých teček, umístěných v mřížce. Při běžném pohledu na obrázek tečky nejsou vidět, takže kód nijak neruší. Albi knihy tedy fungují díky tisícům malinkatých teček, které jsou vytištěné přes obrázky. Pojďme se podívat, jak kód vypadá a jak to celé funguje.

OID kód

OID (Optický identifikátor) je 1 mm velký čtverec složený z matice 4 × 4 bodů. Tento čtverec se pravidelně opakuje po celé ploše interaktivního obrázku. Levá a horní strana kódu slouží k orientaci – k rozpoznání otočení kódu. K tomu slouží jeden bod, který vybočuje mimo osu teček. Čtečku kódu, tedy hrot Albi tužky, lze ke kódu přiložit libovolně otočenou a kód je vždy přečten. Zbývající matice 3 x 3 bodů již nese samotnou informaci.

OID kód zvětšený pod mikroskopem
Struktura OID kódu

K pochopení OID kódu potřebujeme matici 3 x 3 bodů rozdělit pomocnou mřížkou (světle modré čáry). Tam, kde se čáry protnou, je střed, od kterého se body posouvají. Kolem jednoho křížení pomocných čar můžeme bod umístit do čtyř různých míst. Každá poloha jednoho bodu má přiřazené jedno číslo. Začíná se v pravém spodním rohu, kde je přiřazené číslo 0.

Struktura OID kódu a jeho binární převod na číselnou hodnotu

Způsob výpočtu hodnoty kódu je zobrazen na obrázku níže. Výsledná hodnota kódu je číselná a může být v rozmezí 0 až 65535. Poloha levého horního bodu slouží jako kontrolní součet správnosti kódu.



Reverzní inženýrství OID kódu použitého u elektronické tužky TipToi Ravensburger.
Obrázek z https://github.com/entropia/tip-toi-reveng/wiki/PEN-Optical-ID-and-codes

Jak funguje elektronická tužka Albi

Infračervená LED, umístěná v modulu optického čtecího zařízení, osvítí stránku v knize, na které je vytištěný OID kód. Povrch papíru část světelných paprsků absorbuje a část odrazí. Obrazový snímač zachytí odražené světlo (usměrněné přes čočku a otický filtr) a převede obraz na data.

Jak funguje Albi tužka

Použitím infračerveného světla a odpovídajícího filtru před optickým senzorem se zvyšuje rychlost a přesnost čtení kódu.

Procesor obdržená data zpracuje a vyhodnotí, zda obsahují OID kód. Pokud Albi tužka rozpozná OID kód, procesor převede kód na bitové pole (viz. vysvětlení struktury OID kódu popsané výše). Podle hodnoty získané z kódu proběhne některá z možných akcí, například změna knihy, úprava hlasitosti, nalezení odpovídajícího zvukového souboru, apod.

Každá kniha má přiřazen svůj vlastní číselný identifikátor. Pokud se tužkou dotknete vytištěného tlačítka pro zapnutí, procesor na paměťové kartě vybere odpovídající soubor knížky. Tento soubor obsahuje nejen jednotlivé zvukové stopy a namluvené texty, ale i ostatní funkce knížky, jako například kvízy. Vybraný soubor zůstává v Albi tužce uložen (chcete-li přednastaven) i po jejím vypnutí a opětovném zapnutí.

Pokud se elektronickou tužkou Albi dotknete nějakého objektu v knížce, procesor opět převede kód na číselný identifikátor a vyhledá k němu v přednastaveném souboru odpovídající akci (přehrání zvukové stopy nebo spuštění kvízu). Proto se občas dětem stává, že tužka přehrává texty jiné knížky. Nedotkli se totiž tlačítka pro zapnutí knížky a knížka hledá zvukové stopy v jiném souboru.

Zdroje informací

Informace jsem čerpal hlavně z projektu tttool, ve kterém spousta lidí odvedla úžasnou práci při reverzním inženýrství a vytvořili software pro rozložení a sestavení souborů, které elektronická tužka používá. Bohužel to vypadá, že software tttool funguje pouze pro soubory GME, které používá elektronická tužka TopToi od firmy Ravensburger. Zdá se, že modifikaci software pro použití s Albi tužkou zatím nikdo nevytvořil.

Podrobný manuál k používání aplikace tttool je na tomto odkazu.

Jedna z diskuzí ohledně reverzního inženýrství probíhala v tématu „Jak funguje rozpoznávání pomocí elektronické tužky TING“.

Patent popisující elektronickou část.

Patent popisující strukturu OID kódu.

Jdu rozebrat vlastní Albi tužky

Protože chci vědět, jak funguje Albi tužka, jdu jí rozebrat. Snad se dozvím něco víc. Doma máme tužky dvě. Jednu starší, z roku 2015 a druhou z roku 2019.

Už dlouhou dobu přemýšlím nad tím, jak by bylo super, kdybych do Albi tužky dokázal dostat vlastní zvukové soubory. Teď tím nemyslím použít Albi tužku, jako MP3 přehrávač nebo použít samolepky umožňující spouštět vlastní zvukové stopy.

Moje bádání hnala touha, umět vytvořit vlastní BNL soubor. Ten soubor, který vzniká už u výrobce knížky, stahuje se z internetu a následně se ukládá na paměťovou kartu Albi tužky. Samolepky může použít kdokoliv, ale každý správný maker nebo geek hledá jinou cestu a rád objevuje, jak věci fungují. Kdybych uměl rozebrat a zase složit stávající BNL soubory, to by byla paráda. Odtud by byl jen kousek k vlastním vytištěným listům a kdo ví, k čemu všemu ještě.

Obě tužky, které máme doma, jsem tedy rozebral, abych se podíval, kolik toho mají společného s elektronickou tužkou TipToi, populární hlavně v německu.

Verze desky 2.3 z roku 2015
Verze desky 2.3 z roku 2015
Verze desky 3.2 z roku 2019
Verze desky 3.2 z roku 2019

Na první pohled se mezi sebou verze Albi tužek liší v upevnění optického senzoru. Novější verze 3 má senzor upevněný na flexibilním plošném spoji. Dalším rozdílem je typ USB konektoru, tento rozdíl je viditelný i pro uživatele. Další rozdíly jsou v layoutu desky a hlavně s použitém chipu.

SNP700327FB1FG
SONIX SN95303FG (PDF)

Co tedy porovnání s TipToi? Největší rozdíl je hlavně v použitém chipu. TipToi tužky mají procesor, paměť a OID dekodér v oddělených chipech. Albi tužka má vše v jednom chipu.

Na tomto místě moje bádání končím. Nechci vstupovat na tenký led tématu procesorů a pamětí, kterému vůbec nerozumím. Zatím se musím smířit s tím, že na tohle jsem krátký a vlastní BNL soubory pro Albi tužku si (zatím) nevytvořím.