k47.cz
mastodon twitter RSS
bandcamp explorer 0xDEADBEEF
««« »»»

Webkamera z odpadků

— k47

Minule jsem psal, jak jsem si koupil velice levnou webkameru, co to prdítko umí a co se s ním dá dělat. Teď jsem se dozvěděl, že jsem nemusel utrácet vůbec nic, protože mi v hromadě starých notebooků a dalšího elektronického odpadu ležely tři použitelné kamerky.

Letmé kachnování přes duckduckgo totiž ukázalo, že kamery v laptopech jsou interně obvykle připojeny přes USB. Můžete se o tom přesvědčit na vlastní oči: Jestli v linuxu příkaz lsusb ukáže něco, co se tváří aspoň trochu kamerovitě, bingo, interní webkamera jede přes USB.

Nicméně to není tak snadné. I když komunikace probíhá přes USB, kamerka obvykle očekává 3.3 volty namísto běžných 5 voltů. Na tištěném spoji kamerky, kterou jsem vytáhnul z vraku jakéhosi thinkpadu se to přímo píše. Na horním obrázku vpravo dole.

Internet radil zapojení s lineárním regulátorem à la LM1117, který srazí napětí na požadovanou hladinu, ale ten nemám. V bezedné krabici se součástkami vytahanými ze staré elektroniky leží nesčetné množství pokladů, jen nic, co bych zrovna potřeboval.

Pak ale jedna stránka v azbuce nadhodila, že stačí použít 2 diody. Každá má 0.7 voltů drop a za nimi zůstane asi 3.6, dost blízko delikátní rovnováze, kdy se čipy nejen neroztaví, ale i fungují. (Tady máte lepší, přehledný návod englicky jak identifikovat piny pro Vcc, GND, D+ a D-.)

Překvapivě to funguje. U jedné kamery si ffmpeg poprvé stěžuje s chybou ioctl(VIDIOC_STREAMON): Protocol error, ale když ho pustím znovu, světýlko na kamerce se rozsvítí a nahrávání jede. Druhá kamera fungovala na 5 voltech i když se na ní psalo 3.3V. Třetí se po zapojení do 5 voltů nerozeběhla, ale přežila a když jsem ji pak připojil na správné napětí, ožila. To není vůbec zlé vzhledem k tomu, že mě tahle trojice snímacích zařízení stála přesně nula korun českých.

píše k47, ascii@k47.cz