Hello all,
In my "spare" time I've been working on reverse engineering a wifi fish finder. I believe I've deciphered enough of the protocol to release a beta reference implementation for interfacing with the device; however, I'd be interested in integrating it with an existing platform so that it's more useful to the general community. I'm presently debating either doing an OpenCPN plugin or making a daemon for Signal K.
From the device, I have identified the following information:
- device serial number
- minimum/maximum range
- depth
- water temperature
- battery voltage
- water column
And have a means of controlling:
- range (auto range or fixed)
There's still a fair number of magical bytes that I don't understand yet (and perhaps could vary based on the model). I'm still holding out hope I'll find a salinity/conductivity field in there somewhere :)
I did some initial research into the protocol but there are a few gaps I was hoping you guys could fill in for me:
1) Is there a means to transmit raster data (i.e. the water column)?
2) Is there any means for device control (e.g. if the user wanted to change the ranges, gains, start/stop transmitting, etc.), or would that more or less depend on the UI publishing some other arbitrary structure that the device daemon knows to look for?
3) Is there some way to represent device health/meta info (e.g. battery voltage & serial number of device) in this protocol?