Bystroushaak's blog / Czech section / Hardware / BusPirate

BusPirate

BusPirate je velice užitečný opensource nástroj umožňující komunikaci po spoustě sběrnic. Jedná se o cosi jako netcat, tedy Švýcarský nůž pro každého bastlíře. Přišlo mi trochu škoda, že o něm v Čechách moc lidí neví, proto jsem se rozhodl popsat své dojmy po více než roce jeho používání.

K čemu to je?

Pokud se zabýváte elektronikou, určitě se vám už stalo, že jste potřebovali komunikovat se svým výtvorem po nějaké sběrnici, jenže vaše PC podporuje pouze USB, či s trochou štěstí obstarožní RS232. V takovém případě jste pravděpodobně byli nuceni sehnat či postavit konvertor, kterým jste umožnili komunikaci vašeho počítače s vytvářenou deskou. Tyto konvertory jsou většinou jednoúčelové a protože se v praxi setkáváme s více jak jednou sběrnicí, za chvíli se vám doma válí spousta jednoúčelových bastlů (klasikou je třeba kovertor RS232 <> TTL/UART).

Jak doufám každý uzná, výše popsaná situace není moc ideální a proto vznikla myšlenka vytvořit cosi univerzálnějšího, co by po připojení do USB umožňovalo dnešním nadupaným, leč na sběrnice chudým počítačům komunikaci nějakým jednoduchým způsobem.

Co to umí?

BusPirate se dá použít pro komunikaci s těmito sběrnicemi:

Mezi další vlastnosti patří:

Jak je vidět, nejedná se o málo vlastností, naopak se dá říct že je to slušně zařízená elektronická laboratoř na jedné desce. Samozřejmě že profesionálové používají nástroje s lepšími parametry, ale pro obyčejného bastlíře se jedná o splněný sen.

Jak to použít?

Po připojení do USB můžete se zařízením začít komunikovat. K tomu se pravděpodobně bude hodit minicom, jak ho nakonfigurovat najdete kromě oficiální dokumentace třeba zde.

Jakmile se minicom spustí, uvidíte před sebou jednoduchý shell, na který můžete zadávat příkazy které přepínají BusPirate do různých stavů (vybíráte napětí a sběrnice) a nastavují/čtou informace. Příkazy jsou většinou ve formě jednoho písmena/číslice, ukázku pro představu je možné najít třeba zde.

Poměrně zajímavou možností, se kterou zatím ale nemám zkušenosti je scriptování - jelikož komunikace probíhá v textovém režimu, není problém připojit se na daný port python scriptem a ovládat BusPirate z něj.

Pokud budete chtít BusPirate využít jako AVR programátor, máte dvě možnosti. Tou první je použít avrdude s podporou buspirate, tou druhou nahrání nového firmware, který způsobí že se bude Buspirate tvářit jako STK500v2 programátor, tudíž můžete použít libovolný software na libovolném operačním systému. Nahrávání firmwaru není nijak těžké, stačí kusem drátu přemostit propojku na desce a Pirate-Loaderem flashnout nový firmware.

Kolik to stojí?

Díky tomu že se jedná o opensource, je cena víc než sympatická - 30$, včetně celosvětového poštovného. K samotnému BusPirate doporučuji objednat ještě krabičku a sadu sond, vyjde to na pár dolarů navíc a rozhodně se to vyplatí. Dál budete potřebovat miniusb kabel, ale předpokládám že se vám doma nějaký válí, protože dneska se používá snad všude. Dohromady za něj dáte tedy něco okolo 630 kč, což není vůbec špatné.

Dlouhou dobu jsem si lámal hlavu s tím, jak je možné že celosvětové poštovné stojí prakticky nic. Když mi potom domu BusPirate přišel, pochopil jsem to - i s krytem poměrně věrně kopíruje rozměry krabičky od sirek. Z fotek se to nezdá, ale je to fakt prcek o rozměrech ~ 5.5 x 3.5 cm.

Má to nějaké nevýhody?

Osciloskop/logický analyzátor je tam spíš jen jako doplněk, který v praxi moc užitečný není (nízká rychlost, nestíněné sondy na obyčejných drátech atp..), ale na druhou stranu to není a ani nemá být hlavní funkce, takže se to dá pochopit.

Další nevýhoda jsou sondy, které sice stojí 5$, ale jejich kvalita je dost mizerná. Osobně si za ty prachy dokážu představit o dost lepší, to co jsem dostal jsou levné plastové výlisky, které vypadají že se co nevidět rozpadnou. Jejich barvy navíc neodpovídají barvám kabelů na kterých jsou nacvaklé, což vede k častým omylům. I přesto však doporučuji jejich zakoupení, protože v opačném případě si užijete pěknou otravu s jejich výrobou.

Závěr

BusPirate jsem si pořídil minulý rok k narozeninám a od té doby ho používám. Jedná se o pro mě nedocenitelnou pomůcku, bez které bych byl ztracený podobně jako bez kleští, nebo mikropájky - jde to i bez něj, ale pěkně blbě.

Shrnuto a podtrženo - pokud uvažujete o koupi, můžu vám ho jen doporučit.

Become a Patron