Homebrew FX Chrony display

Today I hacked up a quick FX Chrony display :)

Demo video FX Chrony display

This isn't a finished product or anything like but it is a working "proof of concept" that anyone can build and improve on.

The hardware is one of these (there are many clones but they all seem to be HELTEC HTIT-WB32):

ESP32 OLED WiFi Kit ESP-32 WiFi + BlueTooth 0.96 inch OLED

I'm using a 2000mAh battery in the video which is way too big, I have some of these on order. You can also use USB

250mAh 1S Lipos These don't have a protection circuit and will be damaged if completely discharged

1000mAh 1S Lipo These do have protection and are about the same size as the PCB

Tiny 220mAh 1S Lipo

The Arduino sketch is here:

FX Chrony Sketch

Over on Thingiverse there are several cases for the HELTEC PCB that might make good start points for a customised case

Example Case

Case with Batttery Space

To use it, download the sketch and program the ESP32 (Tested with Arduino 2.0.2). Turn on the FX Chrony then reset the ESP32, it should connect to your FX Chrony and start displaying FPS values. It's hardcoded for "full power air rifles" but comments in the code should help you. If it doesn't connect you may need to change the deviceUUID.

I don't know if I will do much more with this (and it really is hacky - but hey, it only took 1 day). I think people with Arduino and CAD skills could come together and make something awesome. If you do then please share with the rest of the community.

Edit: I meant to say the whole thing should cost around $30

Edit2: You will need to add ESP32 support to Arduino (tools|board manager add ESP32 Arduino) and u8g2 library (tools|manage libraries add u8g2)

Edit3: Alternative hardware (Digikey is a bit cheaper than Amazon) M5StickC Plus ESP32-PICO Mini IoT Development Kit

Edit3A: Second alternative hardware LILYGO TTGO V1.1

Edit6: Third alternative HW M5 Stick C Plus

Edit7: Standalone M5 Stick C Plus Anti Cant software (digital level + optional temp, humidity & pressure)

Edit4: Discord server for support MyLittleChrony Discord

Edit 5: Batteries, please consider picking up a protected LIPO

There are two types of LIPOs (Lithium Ion batteries in pouches)

- Protected. These have a small PCB that will detect when the battery is discharged to the safe minimum voltage. At that point the electronics disconnect the cell. The cell on the left has a protection circuit, the PCB and two 6 pin devices are visible through the Kapton tape

- Unprotected. These are usually used to power electric motors and do not have a protection circuit. A drone will stop flying long before the battery is dangerously discharged. The cell on the right does not have a protection circuit

The Heltec PCB we're using will drain current from a LIPO until either the cell protection kicks in OR the LIPO is discharged to the point where it is irreparably damaged. Even worse, charging an overly discharged LIPO can cause it to catch fire!

The nightmare scenario: You forget about the display and it over discharges the battery, when you next go to charge it you have a LIPO fire
😦


1671387392582.png
 
Last edited:
That's pretty cool. May have to play with this myself.
Last project I did was for hooking the Shooting Chronies to a Notebook.
Still have several parts left to build them.
Most of my programing was in C++ to code 'Rippers' to extract game data like the 3D models and animations.

Since you coded in 2.0.2 could it work with the earlier version that works with Windows 7?
 
Not finding the v2.0.5 of the ESP32 board definition. I did find a place on the Interweeb to down load.
I'll do some reading as this is my 1st foray with Arduino. I mostly programmed with C++ and write scripts for SweetScape 010.

UpDate:
I did download the needed stuff and found out how to install it. Also have your basic sketch. I always like reading others Code to advance my knowledge. So Thank You!

I still need to get the FX Chrony and the parts to build this but I can follow the Code as is.
Also getting all the info on the parts to understand what could be done.
 
Last edited:
  • Like
Reactions: DaystateRebel
I just released a big update, it now has a basic menu system to control certain features:

- profile
- minimum return
- Units (FPS vs M/S)
- Rotate display 180 degrees
- Power save (time after a shot display blanks)

To access the menu wait until the display has connected to a Chrony (stops displaying "Searching", display goes blanks and white LED lights up) then hold the pgm button for 2 seconds and release. After that, a single click on pgm advances the menu, a double click selects the menu item and a 2 second press goes up a level in the menu

You should install the following packages
- ESP32 BSP v2.0.5
- OneButton library 2.0.4
- u8g2 library 2.33.15

Recording shot strings and pellet weight / FPE are perfectly possible
 
Last edited:
  • Like
Reactions: M0ist0ne
Nice update! Hope to order the parts this week.
Try and get the 1000mAh battery, it should last about 10 hours on that. It's approx the same size as the Heltec PCB

I did download the STL files for a case. I'm going to add a dovetail to it so I can put a spare ring on the scope to hold it.
It will be off the right side of the scope so not interfer with my AO on the left side.
Depending on which one it is you might need to make it a bit deeper to accommodate a battery. You will need a mechanical switch too (there's no way for the hardware to turn itself completely off, it will drain your battery over time)

Note to self: add deep sleep mode
 
Still waiting on Amazon to deliver my boards........and if I come up with a neat little 3d printed mounting solution, will make sure to share here. Gives me something to use some of my old drone lipos on!
Be aware that drone lipos probably don't have an over discharge protection circuit, the Heltec will drain unprotected batteries completely and permanently damage them. The ones I linked to above have a protection circuit which will disconnect the battery when it is as low as it can safely be discharged

I will add a "deep sleep" command (it will reduce current consumption to almost 0) to the menu but you might want a mechanical on-off switch too