Geotagging photographs
When snapping a photograph on virtually any smartphone and plenty of DSLRs, extra than simply pixels are saved within the ensuing picture. Along with the image knowledge is an assortment of metadata saved within the EXIF format which holds data such because the settings used to seize the photograph, dimensions, timestamps, a thumbnail, and likewise the placement the place it was taken. This may be particularly useful when constructing a historical past of locations which have been visited and for calculating the solar’s angle within the sky given a timestamp.
Nevertheless, older cameras and even some newer ones would possibly lack the required GPS {hardware} to get coordinates, that means that it is both foregone solely from the metadata or wants an exterior telephone and app to retrieve it. Instructables consumer MajorNerd discovered this to be a clunky answer, which is why he created his personal Sony geotagging machine known as the CamCoord.
The {hardware}
After some cursory analysis, MajorNerd found that main progress had been made throughout the neighborhood to decipher Sony’s BLE protocol, thus permitting him to ship his A6600 knowledge utilizing a growth board. The unique plan concerned a Raspberry Pi Pico W since it’s comparatively cheap and might run MicroPython, however this fell by way of for the reason that library lacks help for pairing. The choice Adafruit Feather nRF52840 Specific board turned out to be a fair more sensible choice owing to its built-in BLE, onboard battery charging circuit, and talent to be connected to FeatherWing modules such because the Final GPS FeatherWing from Adafruit.
Speaking with the digicam
The script for connecting to the digicam with Bluetooth Low-Power was fairly easy, as this system consists of simply 5 steps. First, the radio connects to the digicam utilizing its {hardware} deal with. Subsequent, a pairing sequence is initiated to arrange communication between the 2 earlier than the placement service and site attribute are found by way of their distinctive identifiers. Lastly, an infinite loop is began to put in writing mock knowledge to the attribute as soon as each second.
Getting GPS knowledge
In an effort to exchange the mock location knowledge with precise values for latitude and longitude, MajorNerd needed to connect the GPS FeatherWing and get it speaking. The Adafruit GPS library handles a lot of the work with regard to studying incoming serial knowledge, parsing it right into a usable format, after which changing these values into accessible objects and properties. One minor wrinkle to this implementation was the dearth of computerized timezone and daylight financial savings time lookup, that means that these values nonetheless should be manually set on the digicam itself.
Different options
MajorNerd went past the duty of simply sending values as he was in a position to incorporate the onboard RGB LED of the Feather to behave as a sign for the machine’s present state. And, owing to the considerably restricted 3000mAh LiPo battery cell, the code features a verify for the onboard change that may toggle sleep mode whether it is pressed. Lastly, the customized 3D printed enclosure has handles on either side of straightforward carrying, a cutout for the indicator LED, and a port for charging the battery with a micro USB cable.
Utilizing the CamCoord
On a nice sunny day, MajorNerd went out for a hike, and after reaching his first vacation spot, he switched on the CamCoord, waited for it to connect with the digicam, after which tossed it in his backpack. For the remainder of the day, all he needed to do was change on his digicam, watch for the connection to be re-established, after which take pictures whereas figuring out his present location knowledge was being saved to each picture file.