Pojďme programovat elektroniku | Hacking

Flipper Zero je nejmocnější a nejzábavnější švýcarský nožík každého elektrohackera

  • Malá krabička s displejem zvládne elektronický hacking
  • Obsahuje vysílače RFID, NFC, IR a 433/868MHz
  • Stejně tak ale ovládnete digitální a analogové obvody skrze GPIO

Každý muž má u sebe nůž, každý skaut křesadlo a kousek svinuté březové kůry, no a v kapse každého elektrogeeka nesmí chybět Flipper Zero. Vše zmíněné samozřejmě platí i pro děvčata!

Flipper Zero je docela drahý, ale zároveň jeden z nejroztomilejších a nejmocnějších kapesních gadgetů pro hackery všeho druhu.

Delfínek v plastu za čtyři tisíce

Při nákupu z oficiální e-shopu získáte za 219 amerických dolarů (včetně daně a poštovného) deseticentimetrovou plastovou krabičku s maličkým monochromatickým displejem (1,4" a 128×64 pixelů) , na kterém vás bude po spuštění provázet ploutvička – váš kutilský kámoš Flipper v podání veselého delfínka.

b8bfd6ec-f5c4-4f6e-8913-238a61c621db
Aby to nebyla nuda, v nitru krabičky se o vše stará váš kámoš delfín

Pan Ploutvička je takové Tamagoči pro současnou generaci geeků, no a když o něj budete pečovat, odmění vás hřejivými černobílými animacemi nad oranžovým podsvícením.

Hacking IR, RFID, NFC, sub-GHz i digitálních a analogových signálů

Jelikož celá legrace vyjde při současném kurzu na dobrých 4 728 korun, bylo by to pěkně drahé Tamagoči, a tak toho naštěstí umí Flipper Zero mnohem více. Delfínka totiž uděláte šťastným jen v případě, že budete hackovat a debugovat.

333f22b6-ec33-49e8-9f4f-e34ea6fbfac7
Flipper Zero se ovládá čtyřsměrovým kolébkovým tlačítkem

A co přesně? No, vlastně skoro jakýkoliv digitální a analogový signál, pod bílým plastovým krytem se totiž skrývá bohatá sbírka komunikační elektroniky:

  • Rádiový vysílač CC1101 pro kmitočty 433/868 MHz
  • Rádiový vysílač ST25R3916 pro NFC
  • Rádiový vysílač pro 125kHz RFID
  • Infračervený vysílač
  • Bluetooth vysílač pro spojení s mobilní aplikací
  • USB-C
  • 18× samičí prototypovací vývody s roztečí 2,45 mm:
    • 8× 3,3V digitálních GPIO (s částečnou 5V tolerancí)
    • Analogový vstup ADC
    • Sběrnice I²C, SPI a 1-Wire
    • Sériová linka UART
    • SWD pro debugování vlastního řídícího čipu
    • Zdroj napětí pro periferie: 3,3V (1A), 5V (2A)

Mozkem celé legrace je konečně armový mikrokontroler STM32WB55RG (64MHz Cortex-M4 + 32MHz Cortex-M0+), který má na starost jak běh celé krabičky, tak i zmíněnou komunikaci RFID a konečně i spouštění uživatelských aplikací z microSD.

de5d84b4-f870-4d54-810b-6081f8c8d2f8
V nastavení najdete podrobný stav lithiového akumulátoru a aktuální odběr proudu

Flipper Zero může napájet přímo USB kabel skrze konektor USB-C, v krabičce ale zůstalo dostatek místa i pro lithiový akumulátor, který dodá dostatek šťávy pro mnohahodinový provoz a experimentování v terénu.

Ovládneme IR klimatizaci se starým protokolem

Pokud nejste ani o píď chytřejší, pojďme si ukázat několik základních scénářů, k čemu lze Ploutvičku použít. Nejprimitivnější úlohou může být třeba univerzální infračervený ovladač.

Video: Ovládání klimatizace s neznámým IR protokolem

V redakci máme starou klimatizaci, která nekomunikuje skrze žádný standardní protokol, takže až se nám jednou rozbije dálkové ovládání, budeme si muset reverzním inženýringem postavit vlastní (už jsme si to loni vyzkoušeli v samostatném článku).

c0e1409b-db9c-4e92-8017-f53c3a6c59b78c4dba1c-ded8-4248-b7a4-c282fb6708536acac358-f0c1-4cd3-9cfa-47cc35874fe2
Zachycení a reprodukce neznámého IR signálu

Univerzální komerční ovladače nefungují a selhávají dokonce i ty nejdražší na trhu, které jsou ve skutečnosti často docela tupé. Namísto surového nahrání a reprodukce základního světelného signálu – blikání IR LED – totiž jen zkoušejí naprogramované protokoly z vlastní databáze.

410b7db2-b1c7-478b-9fcd-805c9a250346dd996b16-355a-431c-a71f-21aee0744cfa6cc15c1f-2caf-4d95-bfb0-17cceafad534
Flipper Zero nabízí i databázi známých IR protokolů pro televizory a další elektroniku

Flipper Zero tu je pro hackery, takže tuto výzvu zvládne levou zadní. Podívejte se na video, ve kterém nahraji surový optický povel pro vypnutí klimatizace a pak jej přehraji. Díky trojici IR LED bude Flipper Zero fungovat i na docela solidní vzdálenost.

Zkopírujeme RFID čip k vratům do budovy

Infračervenou komunikaci bychom měli a teď se pojďme podívat na 125kHz RFID. Právě ten se totiž dodnes používá zejména u levnějších přístupových karet a čipů do budov. A často bez jakéhokoliv pokročilejšího zabezpečení.

Video: Zkopírování přístupového RFID klíče do budovy

Stejně jako u IR nabízí Flipper Zero čtení, zápis a emulaci údajů z RFID čipu. Ve videu výše proto nejprve nahraji několik bajtů s identifikátorem mé přístupové klíčenky a poté spustím emulaci, kdy se Flipper Zero promění v RFID kartu, čtečka přečte a ověří nahraný identifikátor a vpustí mě do budovy.

Kdybych měl po ruce zapisovatelnou RFID kartu, mohu tu původní od zaměstnavatele snadno zkopírovat.

6e45bfdb-1cbe-4bdb-a344-bf9ab57073f032094b90-a73c-403e-b318-18993b2247740705f1e8-4628-498c-b447-8787aebdfcef
Zachycení a emulace RFID karty

Podobných čteček je samozřejmě plný AliExpress, Flipper Zero nicméně vše zjednodušuje díky svému příjemnému uživatelskému rozhraní a možnosti s daty případně dále pracovat.

Pokud totiž některá funkce v základním firmwaru chybí, můžete si ji snadno doprogramovat pomocí SDK pro vývojáře. Vše je na GitHubu a zbastlení vlastní apky není principiálně složitější než třeba vývoj v Arduinu. C/C++ je samozřejmostí a k tomu FreeRTOS.

Čtení a hacking NFC tagů a karet

Flipper Zero nabízí také hromadu funkcí pro základní čtení NFC karet všeho druhu. Komunita pak dodala aplikace třetí strany pro jednoduchý hacking a dešifrování klíčů. Pojďme si ve videu níže ukázat elementární čtení, jak ho známe i ze svých vlastních mobilních telefonů.

Video: Přečtení NFC tagu

Dálkové ovládání a katalog aplikací na mobilu

Než se pustíte do vývoje vlastní apky pro Flipper, vězte, že díky ohromné popularitě krabičky mezi kutily už možná stejnou funkci zbastlil někdo za vás.

GitHub je plný zdrojových kódů s aplikacemi třetí strany i alternativními firmwary, pro začátek ale uděláte nejlépe, když si na mobil nainstalujete oficiální aplikaci pro Android a iOS a v nastavení Flipperu aktivujete Bluetooth.

06fd5c9f-89e2-4c58-aeda-66978e5dfa24cda829f6-4ab3-4f02-9972-e1c07608757a96062436-4098-419a-be00-15633c5aaa6fc1becf54-6676-4b09-b581-efda822f8a119577cf24-be59-4d36-9f0e-b5c952ac26aa
Aplikace pro správu Flipper Zero skrze Bluetooth. Nabízí katalog s aplikacemi, možnost kompletního dálkového ovládání a dokonce i vzdálenou plochu

Po spárování můžete z mobilu snadno aktualizovat firmware a procházet katalog několika desítek aplikací všeho druhu od jednoduchých her po primitivní osciloskop. Skrze mobil a Bluetooth můžete pomocí aplikace Flipper Zero ovládat i na dálku a nechybí ani vzdálená plocha. Na mobilu pak uvidíte, co se přesně odehrává i na obrazovce krabičky.

Přístup přes USB pomocí aplikace qFlipper

Druhou možností správy je desktopová aplikace qFlipper pro Windows, macOS a Linux. Slouží pro alternativní aktualizaci firmwaru přes USB i nahrávání souborů na microSD kartu, která slouží jako hlavní úložiště pro větší data. 

dc42f217-30e6-49f2-9429-f197e6cd743238d25cfa-9119-4f16-9536-437fd5a9f123ae1f0ad5-789d-4f7b-9f78-7041bc1c32cd
Desktopový qFlipper pro aktualizaci firmwaru a nahrávání souboru na microSD skrze USB

Flipper můžete spojit třeba s čipem barometru 

Pojďme si do třetice a na závěr ukázat demo, ve kterém vyzkoušíme zdaleka nejsilnější zbraň Flipperu. Díky tomu, že má na boku řadu 18 napájecích a komunikačních pinů armového mikrokontroleru STM32WB55RG, můžeme k Flipperu připojit prakticky jakýkoliv elektrický obvod s 3,3V logikou (a s částečnou 5V tolerancí).

EnLvCM5-J45B9sBm6UBig_flipper-zero-gpio-pinout-flipper-zero-12f7b9c6-drawing-rev-04 (1).jpg
Pinout hackerské krabičky Flipper Zero

Přímo výrobce nabízí rozšiřující desku s Wi-Fi čipem ESP32, stejně tak to ale můžete ke krabičce připojit vlastní obvod. K dispozici máte analogový vstup, základní digitální čtení a zápis, sériovou linku UART a jak už jsme si řekli v úvodu, také oblíbené digitální sběrnice drobné elektroniky I²C, SPI a 1-Wire.

Z katalogu v mobilní aplikaci jsem proto do Flipperu stáhnul prográmek Temp sensor reader, který se umí spojit s celým zástupem čipů. Nechybí mezi kutily oblíbená řada DHTx, SHTx, samozřejmě DS18B20 na sběrnici 1-Wire a kombinované barometry BMP280/BME280 od Boshe.

Video: Čteme informace z digitálního barometru BME280

Právě jeden takový jsem vytáhl z krabice, a protože komunikuje na sběrnici I²C, připojil jej jen pomocí dvojice vodičů SDA (data) a SCL (takt) a nezapomněl na 3V napájení (3V3/+ a GND/-). Po spuštění programu mu dám povel, ať se spojí právě s tímto čipem a rázem se na maličkém displeji objeví jak tlak vzduchu, tak jeho teplota a vlhkost.

8a81bb58-39b0-4b5f-85d1-7ad02dd36c516a89ce2a-9ae4-444d-b4f6-1fc2336d249f1d3892d1-fe8a-4267-ab6b-9d2dad14f71b
Čtení dat z čipu digitálního barometru Bosch Sensortec BME280 pomocí sběrnice I²C

Tímto způsobem proměníte Flipper Zero v univerzální GPIO debugovací krabičku také do terénu, aniž byste museli v kapse nosit třeba desku Arduino. Pro základní I²C komunikaci ostatně nechybí ani volitelný prográmek I2C Tools, který nabídne I²C skener, čtečku bajtů a možnost i jejich surového zápisu do čipu.

18634cdc-3434-4928-9449-61d2ac68cae9290e7487-be80-411a-8dde-b44a747ebaef
Skener všech zařízení na sběrnici I²C. Barometr odpovídá na adrese 0x76

Vzpomínka na Tamagoči

Jak už jsme si řekli v úvodu, celým prostředím Flipper Zero vás bude provázet roztomilý delfínek. Tvůrci si dali opravdu záležet a na monochromatický titěrný LCD displej dokázali vtěsnat hromadu geeky animací.

bac0c42f-e9b1-4b15-b6a4-c2ef66338719
Budu se tady sám nudit, nevypínej mě!

Když budete chtít Flippera Zero vypnout, zobrazí se uplakaný delfín, takže si to rychle rozmyslíte. No, a když to budete naopak flákat, delfín začne chřadnout, stejně jako jste se museli kdysi před dávnými lety průběžně starat o legendární Tamagoči.

9bdd5907-13c9-4ca1-a12f-51a6c6431eb9
Po zkopírování RFID klíče k budově redakce zůstane delfínek nějaký čas šťastný a dá pokoj 

Delfínka nemusíte krmit. Při životě jej udržíte jednoduše tak, že budete hackovat od rána do večera všechny možné signály počínaje vaším vlastním bastlem a konče třeba elektrickými garážovými vraty souseda, které používají ideálně špatně zabezpečenou 433MHz komunikaci.

Diskuze (40) Další článek: Káva vám nedodá žádnou energii navíc. Jen si ji půjčíte a později za ni zaplatíte, upozorňuje odbornice

Témata článku: , , ,