
Witam.
Przedstawiam mój kolejny projekt, a w zasadzie projekcik.
Temat dotyczy wykorzystania Holuxa GPSlim 236 do geotagowania zdjęć wykonywanych lustrzanką Nikon.
Mniej zorientowanym wyjaśniam, że chodzi o to aby podczas robienia zdjęć zapisywane były w pliku RAW lub JPG równocześnie informacje gdzie zdjęcie było wykonane. Dotychczas radziłem sobie w ten sposób że podczas sesji zdjęć uruchamiałem na iphone aplikację do geotagingu i w tym czasie zapisywana była dokładna trasa wędrówki. Zakładając, że zegar aparatu jest zsynchronizowany z iphonem mamy gotowy materiał, który możemy wykorzystać podczas obróbki zdjęć po powrocie do domu.
Jest do wygodny sposób, ale wymagający dodatkowej pracy w domu, a ponadto iphone podczas pracy z aktywną aplikacją zużywa trochę aku. Przy sprawnym i naładowanym akumulatorze 10 godzin śledzenia trasy zużywa ok 50% akumulatora, więc nie jest tak źle. Poza tym ma to też swoją zaletę bo odczytując ten plik mamy pogląd gdzie wędrowaliśmy.
Ale postanowiłem jako alternatywę wykorzystać mojego dawno zapomnianego Holuxa, którego używałem kiedyś jako źródło sygnału GPS do nawigacji.
Są wprawdzie dedykowane urządzenia do tego celu produkowane przez Nikona, ale cena przekracza 1000zł. Poza tym, wszystkie te urządzenia pobierają energię z aparatu, a ja chciałem tego uniknąć.
Problem jest tylko w dopasowaniu sygnału Holuxa i aparatu. Sygnał zgodny ze standardem NMEA 0183 zastosowany w Holuxie jest wystawiony z bitrate 38400 bps. Tymczasem standard Nikona to 4800bps. Trzeba było dopasować sygnały aby Holux dogadał się z Nikonem.
Z pomocą przyszedł projekt Fabio Baltieri, który udostępnił otwarty kod programu do wykorzystania.
https://fabiobaltieri.com/2012/01/21/uart-bitrate-converter-nikon-gps/
https://github.com/fabiobaltieri/avr-uart-speedconverter
Na stronie jest zarówno kod jak i skompilowany hex. Ja wykorzystałem kod programu, który skopiowałem do Eclipse, w którym piszę w C. Projekt Fabio zakładał wykorzystanie Atmegi 168 w obudowie DIP. Na podanej stronie można doczytać jak to było wykonane. Ja chciałem spakować Atmegę do środka Holuxa i wystawić sygnał z odpowiednim bitrate na jeden z pinów gniazda. Dlatego konieczność użycia Atmegi w mniejszej obudowie. Trochę się nakombinowałem, bo nie było łatwo znaleźć odpowiednie miejsce, ale się udało. Wcześniej musiałem wykombinować skąd pobrać zasilanie i przede wszystkim sygnał TxD Holuxa. Okazało się że wszystko jest na pinach dostępnych na płytce Holuxa. Piny widać na jednym ze zdjęć w dolnym lewym rogu (złącze J1). Licząc od dołu 1 pin 4V –Vout, 3 pin – TxD, 7 pin – GND. Pozostało odnaleźć miejsce, gdzie można by podać sygnał z Atmegi aby wystawić go na gniazdo. W tym celu pozbyłem się elementu R23 i kynarem dolutowałem się do jednego z pinów pada. Wykastrowałem zatem wejście sygnału RxD ale w moim projekcie było to niewykorzystane.
Założeniem było, aby zasilać Atmegę z aku Holuxa i nie czerpać energii z aparatu, co przy umieszczeniu procesora wewnątrz nie było problemem. Holux wystawia na gniazdo napięcie 3,6 - 4V (w zależności od modelu) z możliwością obciążenia 100mA. U mnie było równo 4V. Sygnał TxD ma amplitudę 3,3V. Taki też poziom sygnału wychodzi z bitratem 4800bps, co zadowala mojego Nikona.
BARDZO WAŻNE!!! Nie wolno łączyć + zasilania Holuxa i aparatu. Łączymy tylko masę w obu urządzeniach.
Przy okazji, jeżeli ktoś chciałby skorzystać z mojego rozwiązania ale procesor dać na zewnątrz, pojawi się problem z dostępem do napięcia Vout z Holuxa, bo to jest wystawione na drugi z lewej pin gniazda USB Mini, który nie jest obsługiwany przez kable USB. Nawet wtyczki USB mini, które można kupić do montażu na kabel nie mają dostępu do tego styku. Wtyki mają cztery pola lutownicze patrząc od przodu wtyku piny 1, 3, 4 i 5. Pozostaje, więc wyprowadzenie zasilania i w tym przypadku również sygnału dodatkowym kabelkiem gdzieś z boku.
Aby podać sygnał z Holuxa via Atmega do lustrzanki niezbędny jest odpowiedni kabelek z dedykowanym wtykiem pasującym do gniazda aparatu. Najprościej jest w tym celu kupić najtańszy wężyk do aparatu i wykorzystać wtyk. Niestety i tu pojawia się problem, bo wężyk służy z definicji do wyzwalania migawki bez dotykania do aparatu aby uniknąć poruszonych zdjęć. W wężyku wykorzystane są trzy piny, ale nie ma wśród nich tego, który jest nam potrzebny. Pozostaje, więc delikatne rozcięcie plastikowej osłony wtyku i przelutowanie przewodów tam gdzie trzeba. Można niby kupić właściwy kabelek ale jego cena to o ile się nie mylę to ok. 30 EURO.
Z racji minimalizacji pcb musiałem użyć płytki dwustronnej. Schemat i projekt pcb jest załączony do wykorzystania.
Zachęcam do dyskusji.







Cool? Ranking DIY