I wanted to challenge the long range shooting communities to the idea of making their own smart devices to help advance the hobby. I had brainstormed for a while hoping to build up a thermal scope that would be much more affordable than the standard consumer scopes and seemed to take a distracted turn towards making a full smart rifle scope platform. The future expandability can easily support a thermal camera in the future, and as I take a small break from this project I wanted to share with the hacker communities what I had accomplished so far!
Some stats of the performance for ya: using a Raspberry Pi 4 I have achieved a standard frame rate of 36 fps for the output feed to the TFT display, with the ballistics solutions updated around 16 FPS behind the scenes on a separate thread. For the Raspberry Pi Zero 2 W, about 24 fps and 14 fps for the ballistics (NOT BAD!!). I feel this can easily be sped up in the future with a full sweep rewrite in C (since this is running in Python at the moment) or by using a different frame editing library for speed ups.
This build uses a 9 DOF IMU unit to feed tilt angles, gyro rates and magnetometer heading to the main ballistics algorithm for accurate results. Usually a handheld ballistics computer can run about $650.00 so being able to do this for under $200 with a video feed already is hilariously exciting. Alot of my motivation for projects comes from showing that consumer products are over priced.... I decided to use two rotary encoders for inputs to simulate the Elevation and Windage adjustment turrets of a real rifle scope. They work nice and even click with inputs. Additional buttons were added for more functionality, I am considering even more buttons for the forward shooting hand position for fast input.
Let me know what you think, and if I should continue to the next stage with this, a compact and shockproof housing design!
Thanks,
Jack
ouch3994
Wesley Archer
Arnov Sharma
tomtibbetts
This is so neat! I’d love to put this on one of my rifles to mess around with on range days!