Spisu treści:

Hakowanie aparatu cyfrowego pęku kluczy do sterowania Arduino: 6 kroków
Hakowanie aparatu cyfrowego pęku kluczy do sterowania Arduino: 6 kroków

Wideo: Hakowanie aparatu cyfrowego pęku kluczy do sterowania Arduino: 6 kroków

Wideo: Hakowanie aparatu cyfrowego pęku kluczy do sterowania Arduino: 6 kroków
Wideo: Privacy, Security, Society - Computer Science for Business Leaders 2016 2024, Listopad
Anonim
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino
Hakowanie aparatu cyfrowego z pękiem kluczy do sterowania Arduino

Opcje fotograficzne dla Arduino są bardzo nieliczne. Kamery internetowe nie nadają się do zastosowań takich jak fotografia latawców lub fotografia publiczna, chyba że masz ochotę kupić 200-metrowy kabel USB. A obecne techniki samodzielnej fotografii Arduino zazwyczaj próbują przechwytywać surowe dane obrazu z kamer CMOS wyjętych z telefonów komórkowych… i uwierz mi, o ile nie musisz przesyłać cyfrowo lub zmieniać tych zdjęć w czasie rzeczywistym, nie chcesz iść wzdłuż tej drogi. Dlaczego nie ma normalnego, taniego, cyfrowego aparatu fotograficznego, który byłby sterowany przez Arduino?

Okazuje się, że jest co najmniej jedna – i sprzedają ją w lokalnej aptece (CVS/Rite-Aid/Walgreens/itp.) To te małe, tandetne kamery z breloczkiem, które sprzedają za 10-15 dolarów za sztukę. Zdjęcia na nich są niezłe, w rozdzielczości około 300 na 200, mieszczą od 20 do 240 zdjęć (w zależności od tego, które znajdziesz), a okazuje się, że maluchy zostały stworzone do zhakowania. Możesz również wykonać ten sam hack za pomocą taniego aparatu o rozdzielczości 1 lub 2 megapikseli, który w razie potrzeby obsługuje karty SD (patrz poniżej), ale będziemy przechodzić przez proces stosowany w częściej spotykanych kamerach 300 na 200. Ten instruktaż przeprowadzi Cię przez proces demontażu, modyfikacji i ponownego montażu gotowego aparatu z brelokiem. Następnie przeprowadzi Cię przez okablowanie prostego zestawu obwodów przełączników tranzystorowych, które mogą być używane przez Arduino do wyłączania i włączania aparatu oraz robienia zdjęć w dowolnym momencie. Będzie też zawierał przykładowy kod i mnóstwo ładnych obrazków. Zanim zaczniemy, kilka uwag: *Zhakowany aparat może zmienić kolor z niebieskiego na srebrny iz powrotem na zdjęciach. Nie martw się, wnętrze obu kamer jest takie samo (w tej chwili pracuję z obydwoma w celach badawczych). Ten sam aparat jest sprzedawany w całym kraju w różnych kolorach, pod różnymi markami, a nawet z nieco innymi obudowami fizycznymi. *Jeśli ta technika brzmi znajomo, może to być spowodowane tym, że to, co robimy z samym aparatem, jest bardzo podobne do techniki stosowanej przez CatCam, projekt, który dwa lata temu stał się wirusowy dzięki umieszczeniu małych, poklatkowych kamer na obrożach kotów przebywających na zewnątrz i obserwując, dokąd idą. Technika CatCam wykorzystuje kamerę, która nie jest łatwo dostępna w Stanach Zjednoczonych i została napisana, zanim Arduino naprawdę wystartowało – miejmy nadzieję, że ta zmiana techniki pomoże społeczności majsterkowiczów na nowo odkryć i wykorzystać ją w swoich projektach. Odkryłem CatCam, gdy ten projekt się zakończył, a obie techniki zostały opracowane niezależnie - więc moja technika prawdopodobnie różni się od techniki CatCam; możesz wybrać i wybrać techniki spośród tych dwóch. *Jeśli jesteś poza Stanami Zjednoczonymi lub chcesz zamówić bezpośrednio z CatCam, sprzedawana przez nich kamera, którą sprzedają, jest wyższej jakości – 1 lub 2 megapiksele – i może zapisywać zdjęcia bezpośrednio na karcie SD. Bardzo fajny dla wielu projektów (ale nie dla wszystkich konieczny). Ale jeśli chcesz mieć aparat dzisiaj, udaj się do dowolnego Rite-Aid, CVS, itp. i weź pokazany tutaj aparat - aparat Digital Concepts, zwykle dystrybuowany przez Sakar international. *Moje badania pozwoliły mi sterować tą kamerą za pomocą samodzielnego układu ATMega. Jeśli z jakiegoś powodu jesteś zainteresowany nauką tej techniki, daj mi znać - jeśli zainteresowanie będzie wystarczające, przygotuję kolejną Instruktaż. (Pomyślałem, że będzie większe zapotrzebowanie na robienie tego za pośrednictwem Arduino.) AKTUALIZACJA: Na życzenie dodałem schemat obwodu, aby podłączyć samodzielny układ ATMega do układu, jak na ostatnim zdjęciu poniżej. Wielu z Was nie będzie to pomocne i przepraszam za to - mam nadzieję, że ten krok dołożę należytej staranności - ale dla tych, którzy są zdeterminowani, to lepsze niż nic (mam nadzieję). *Ta technika została udokumentowana w ramach moich badań w programie Master of Tangible Interaction Design na Uniwersytecie Carnegie Mellon w Pittsburghu w stanie Pensylwania. Jeśli myślisz o powrocie do szkoły, lubisz robić rzeczy i interesujesz się skrzyżowaniem technologii i designu lub sztuki, napisz do nas!:) Mam nadzieję, że okazało się to pomocne - komentarze dotyczące zarówno technologii, jak i aplikacji są mile widziane! Zapraszam do napisania bezpośrednio lub skomentowania, jeśli masz jakieś pytania lub potrzebujesz wyjaśnień.

Krok 1: Złóż materiały i narzędzia

Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi
Montaż materiałów i narzędzi

Będziesz potrzebować kilku narzędzi i zapasów, zanim będziesz mógł uderzyć w ziemię na tej instrukcji. Przejrzyjmy je teraz, dobrze?

Narzędzia: *Mały śrubokręt z łbem Philipsa. (Mniej więcej taki, którego możesz użyć do naprawy okularów lub w zestawie naprawczym do komputera.) *Pomocne, ale nie krytyczne, jeśli masz długie paznokcie - mały śrubokręt z płaskim łbem do użycia jako szczypce. *Obcinak do drutu/szczypce do ściągania izolacji *Pomocne, ale nie krytyczne - multimetr. *Lutownica i lut. (Teraz, teraz, nie martw się. Wszystko, co musisz zrobić, to podgrzać jakiś istniejący lut i przykleić kilka odizolowanych końcówek do istniejących połączeń. Konieczna jest tylko podstawowa wiedza na temat lutowania. Możesz nawet być w stanie uciec z klejem do drutu w niektórych modelach, ale lutowanie jest bezpieczniejsze.) Materiały eksploatacyjne: *Gotowy aparat cyfrowy z pękiem kluczy. Często sprzedawane pod markami „Digital Concepts” lub „Shift”. Sprzedawane w CVS, Rite-Aid, Walgreens, niektórych Walmartach i w całym Internecie. *Pomocne, ale nie krytyczne - kilka zapasowych baterii AAA. Aparat powinien być wyposażony w jedną baterię AAA. Ale jeśli zamierzasz używać swojego projektu więcej niż kilka razy lub przez dłuższy czas, będziesz potrzebować części zamiennych - kamera je zjada. *Kilka stóp izolowanego drutu. (Albo izolacja z tworzywa sztucznego o normalnej grubości, pokazana, albo izolacja cienkościenna jest w porządku - oba mają swoje zalety i wady; zwykle używam izolacji z farby, ponieważ czasami robię niestandardowe męskie nagłówki dla moich połączeń.) * Płytka do krojenia chleba lub inna płyta prototypowa. *Dwa dłuższe odcinki białego przewodu (do podłączenia tranzystorów do Arduino) *Dwa dłuższe odcinki czarnego przewodu (do podłączenia masy z Arduino do płytki stykowej) *Dwa dłuższe odcinki czerwonego przewodu (do podłączenia dużej mocy z Arduino do płytki stykowej) *Pomocne, ale nie krytyczne - dioda LED (do debugowania wyjścia). *Dwa tranzystory (używam tranzystorów NPN 2N3904.) *Arduino z kablem USB.

Krok 2: Otwórz i zdemontuj kamerę pęku kluczy

Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy
Otwórz i zdemontuj kamerę pęku kluczy

Po pierwsze - zaczynasz ten hack, biorąc śrubokręt i paznokcie / szczypce do tego aparatu i rozbierając go. W uwagach do zdjęć poniżej zobaczysz sekcję kamery krok po kroku – wskażę, gdzie znajduje się każda śruba w uwagach do zdjęć. Gdy aparat jest rozmontowany i wygląda trochę jak ostatnie zdjęcie (choć z większą liczbą elementów), przejdź do kroku 3.

Krok 3: Zhakuj część I kamery (przylutuj do przełączników)

Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)
Zhakuj część I kamery (przylutuj do przełączników)

To najtrudniejsza część włamania - ale to nie jest *tak* trudne, przysięgam. Więc weź głęboki oddech i zacznijmy lutować!

W przypadku tego hacka pozostawimy całkowicie nienaruszoną płytkę drukowaną kamery. Wszystko, co będziemy robić, to przylutować nasze własne połączenia do płytki drukowanej po obu stronach przełączników przyciskowych używanych do obsługi kamery. Dzięki temu możemy wykorzystać nasze Arduino do cyfrowego „wciskania” każdego przycisku, kiedy tylko chcemy (poprzez zewnętrzne tranzystory działające jako przełączniki). Podczas przenoszenia płytki drukowanej staraj się trzymać ją za krawędzie, gdy tylko jest to możliwe. Płytka drukowana jest dość solidna, ale pod koniec dnia wciąż jest odsłonięta elektronika i nie warto dotykać jej bezpośrednio bardziej niż to konieczne. Odetnij i usuń końce czterech kawałków drutu, każdy o długości co najmniej stopy. (Lepiej dłuższe niż krótsze w tym przypadku; nie jest to coś, co będziesz chciał powtarzać zbyt często.) Następnie spójrz na dwie pary złączy lutowanych wskazane na poniższym obrazku, po jednej parze wokół każdego z dwóch przełączników przyciskowych. Korzystając z funkcji ciągłości / zwarcia na swoim multimetrze, możesz potwierdzić, że znalazłeś odpowiednie pary złączy do lutowania, przytrzymując końce obu złączy przełączających i naciskając przycisk ręcznie, aby sprawdzić, czy powoduje to zwarcie między złączami. Jeśli tak (opór między dwoma spadkami od nieskończoności do bliskiego zera), to znalazłeś właściwe dwa. Jeśli nie masz multimetru, możesz po prostu wziąć głęboki oddech i zaufać obrazowi. Po upewnieniu się, że znalazłeś właściwe złącza, używając lutownicy, stop lut w każdym z tych czterech złączy i przymocuj koniec jednego z czterech kawałków drutu do każdego z czterech złączy. Jeśli masz pomocną dłoń w swoim zestawie lutowniczym, użyj go, aby utrzymać obwód nieruchomo (umieszczając mały, złożony kawałek gazety między zaciskami, aby chronić płytkę drukowaną).

Krok 4: Zhakuj kamerę, część II (przylutuj połączenie uziemiające)

Zhakuj kamerę, część II (przylutuj połączenie uziemiające)
Zhakuj kamerę, część II (przylutuj połączenie uziemiające)

Właśnie ukończyłeś najtrudniejszą część tego hacka - gratulacje! To powiedziawszy, masz jeszcze jedno (łatwiejsze) złącze lutowane. Ten, do którego będziesz potrzebować świeżego lutu.

UWAGA: Proszę zignorować to, że na tym zdjęciu płytka drukowana znajduje się wewnątrz plastikowej obudowy przedniej. Nie rób tego, co wygląda na to, że tutaj robię - proszę przylutować to połączenie PRZED włożeniem układu z powrotem do obudowy, aby uniknąć przypadkowego stopienia plastikowej obudowy. (Byłem po prostu niechlujny w fotografowaniu tego kroku i spróbuję go później naprawić.) Weź piąty kawałek drutu i przytnij go do długości co najmniej stopy z obciętymi krawędziami. Idealnie, ten kawałek drutu powinien być pomalowany na czarno lub przynajmniej inaczej niż pierwsze cztery. Teraz przylutuj jeden koniec do zewnętrznej strony uziemionego końca uchwytu baterii, jak pokazano. Będziesz musiał dodać własny lut do tego połączenia i przylutować bezpośrednio do metalu tutaj. Odkryłem, że jest to znacznie łatwiejsze niż próba dodania drutu do istniejącego lutu trzymającego uchwyt baterii na płytce drukowanej. (Wskażę dobre i złe sposoby na zdjęciach.) Dlaczego to robimy? Cóż, aby tranzystor sterowany Arduino mógł sterować przełącznikami kamery pęku kluczy, obwód Arduino i obwód kamery pęku kluczy muszą mieć wspólne uziemienie elektryczne. Ten przewód po prostu pozwala później fizycznie połączyć uziemienie kamery z uziemieniem Arduino, za pośrednictwem wspólnego rzędu na płytce stykowej.

Krok 5: Podłącz kamerę do Arduino

Podłącz kamerę do Arduino
Podłącz kamerę do Arduino
Podłącz kamerę do Arduino
Podłącz kamerę do Arduino
Podłącz kamerę do Arduino
Podłącz kamerę do Arduino

Teraz nadszedł czas, aby podłączyć kamerę do Arduino.

Najpierw wgraj kod, który będzie sterował kamerą do Arduino. Poniżej wgraliśmy/załączyliśmy przykładowy kod Arduino, którego użyliśmy tutaj do robienia zdjęć poklatkowych. Kod włączy aparat, zrobi zdjęcie, a następnie opóźni się o pełną minutę (w tym czasie aparat wyłączy się automatycznie) przed ponownym włączeniem i zrobieniem kolejnego zdjęcia - powtarzając to dla dwudziestu zdjęć (pojemność mojego pierwszego zhakowany aparat.) Teraz podłączmy Arduino do aparatu. Najpierw trochę wyjaśnienia: aby w pełni sterować aparatem, nasz kod bierze dwa cyfrowe piny wyjściowe i mapuje jeden do włącznika, a drugi do przełącznika migawki. Gdy kod chce włączyć lub wyłączyć aparat lub przełączyć tryby, krótko trzyma aparat na wysokim styku wyjściowym - a gdy kod chce robić zdjęcia, trzyma wysoko ustawiony styk wyjściowy migawki aparatu. Ta akcja przekłada się na faktyczne naciśnięcie przycisku poprzez włączanie i wyłączanie tranzystora, który z kolei jest połączony przewodami naszej kamery z przełącznikami w prawdziwym aparacie. Masy kamery i Arduino są połączone, aby zapewnić wspólne uziemienie obwodów Arduino i kamery zewnętrznej, umożliwiając prawidłową pracę tranzystorów. Weź dwa przewody, aby połączyć te dwa piny wyjściowe (włączona kamera i migawka kamery) z różnymi liniami na płytce stykowej. Następnie podłącz pin bazy tranzystora do każdego z dwóch pinów wyjściowych. Na koniec podłącz dwa przewody dla każdego odpowiedniego przełącznika z rzeczywistej kamery do pozostałych dwóch (pinów kolektora i emitera) tranzystora. Być może będziesz musiał poeksperymentować z tym, który przewód trafia do kolektora, a który do emitera w każdej parze; co będzie zależeć od wewnętrznego okablowania konkretnej kamery, którą hakujesz. Na koniec ** i to jest ważne **, weź przewód uziemiający z kamery i podłącz go do bolca uziemiającego w Arduino. Jest to konieczne, aby Twoje tranzystory działały, a tym samym kamera reagowała na Twoje arduino!

Krok 6: Rób zdjęcia

Robić zdjęcia!
Robić zdjęcia!
Robić zdjęcia!
Robić zdjęcia!
Robić zdjęcia!
Robić zdjęcia!

Podłącz baterię AAA do aparatu. Powinien wydać sygnał dźwiękowy i włączyć się. Poczekaj 30 sekund, aż aparat się wyłączy. (Kod, który dołączyłem, zakłada, że kamera jest już wyłączona, gdy jest uruchomiona, i włączy ją za Ciebie.) Teraz ustaw kamerę i Arduino pod żądanym kątem widzenia i włącz Arduino. Voila! Może pytasz - ten aparat jest trochę nieporęczny, z Arduino i płytką stykową i tak dalej. Czy nie możemy uczynić tego trochę bardziej kompaktowym, aby robić zdjęcia praktycznie z dowolnego miejsca? Dobra wiadomość jest taka, że może! Został zaprojektowany do użytku jako samodzielny obwód, wykorzystujący Atmegę wyciągniętą z Arduino, na pojedynczym obiekcie kamery/obwodu, który można umieścić w dowolnym miejscu. Poniżej zamieściłem również zdjęcie tej konfiguracji – a jeśli ludzie są tym zaintrygowani, będę pracować nad innym Instructable lub przynajmniej dodam pliki Eagle do tej strony, aby inni mogli z nich pracować. Po prostu daj mi znać! Mamy nadzieję, że okazało się to pomocne - komentarze dotyczące zarówno technologii, jak i aplikacji są mile widziane! Zapraszam do napisania do mnie bezpośrednio lub skomentowania, jeśli masz jakieś pytania lub potrzebujesz wyjaśnień.

Zalecana: