I have a ping 360 sonar which I have been testing lately and run into some problems while trying to decode the log files. First, I did not update the firmware (original firmware from around 2020) and had some connection issues with pingviewer. After I updated to the latest firmware these connection issues were solved and the scanning speed improved. Anyhow, when I try to replay the log files with pingviewer the replay is lagging a lot. If I replay the data logged before firmware update the replay plays smoothly (apart from the times there was connection issues during the logging).
to dig into the log files and it works with the data logged with the old firmware, but the data logged with the latest firmware does not open. I get error:
âAttributeError: âPingMessageâ object has no attribute âmodeââ
Has some else had any problems decoding ping360 log files after the firmware update?
For information, I am running the ping 360 sonar with a win 11 laptop directly.
You are running Ping Viewer 2.6.0, on a Windows 11 laptop
Your Ping360 firmware has been recently updated to v3.3.8
In Ping Viewer, you are trying to replay log files, which works well with files created before the firmware update, but is jerky/laggy with new files?
Iâm not sure weâve tested the replay functionality with the new firmware. The faster scanning speed is from a new protocol message with lower communication overheads, but itâs possible the replay functionality is having some issues with it. Iâve raised this internally to see if someone knows more.
In Python, you are trying to decode log files, which works well with files created before the firmware update, but is failing with new files?
That decoding script hasnât been tested with files from the new firmware, so while Iâd expect it to work itâs possible there are some problems. Iâm away from my testing setup at the moment, so I wonât be able to replicate your issue until at least next week, but if youâre able to post a short log file from the new firmware then I can potentially try to look into it sooner.
It could also be helpful if you can post the full error traceback, rather than just the summary message, along with the command youâre using to run the file, and/or any modifications / custom code youâre using to try to process the log file.
Thanks for the reply. Replay with log file recorded with new firmware is jerky/laggy. I have tested this with two different laptops so should not be PC issue.
I can elaborate a litlle bit on on the encode code part because I had to modify the code a bit. In the current encode_sensor_binary_log.py at your github there seems to be a bug on row 152 as it already gives warning in spyder when I open the code (undefined name âselfâ). The code works for some logs but with some logs it fails at this point. I guess it depends if there is some errors in the log as this code part is to my understanding related to error handling.
I should say I am not very good programmer so to fix this problem I gave the code to ChatGPT for fixing and it did notice the problem and then proposed a correction (chatGPT comment: To fix this, recover must be an instance method, not a class method. That way, you can access instance attributes like self.failed_bytes.). I also changed the code so that I can give the log file in the code and not as argument (easier for testing). Anyhow, after these changes I can read the old log file but with new log file it crashes as stated earlier. Here is the complete error traceback:
Traceback (most recent call last):
File ~\anaconda3\Lib\site-packages\spyder_kernels\py3compat.py:356 in compat_exec
exec(code, globals, locals)
I tested this, old and new log files seem to work without lagging in sonarview. I havenât used Sonarview before, should it also show the time stamp on the left lower corner? My logs show only zero time.
The reason the time isnât showing on SonarView is because the .bin file was generated from Ping Viewer. Thatâs also why âtime based playbackâ doesnât work correctly either but if you used SonarView when you were doing the scans those would work normally. You can also arrange to get heading info into the log file. Itâs automatic if youâre on a vehicle supporting MAVLink2REST, but you can also set up a session to bring in heading from an NMEA stream if available.
Thanks for the information. I checked the SonarView more closely and the integration of GPS data with NMEA strings would be very interesting option for me. I am thinking of a GPS dongle connected with USB to PC and then including this data to the sonar data with SonarView.
Hi @EliotBR, have you been able to look at the log file decoding error? I logged couple of new files with the ping 360 sonar but run into the same error.
Iâve started looking into it, and got to the same stage as you, but unfortunately havenât yet had time to look into it further. It doesnât help that I ran into an Issue that means I canât test replaying with Ping Viewer at the moment.