hmatuschek / qdmr

A GUI application for configuring and programming cheap DMR radios under Linux and MacOS X.
https://dm3mat.darc.de/qdmr/
GNU General Public License v3.0
204 stars 41 forks source link

QDMR on Windows #423

Open SpaceXCheeseWheel opened 3 months ago

SpaceXCheeseWheel commented 3 months ago

Over the last week or so, I ported QDMR to windows.

image

All graphical features seem to work, including reading and writing qdmr's yaml files. Unfortunately, I cannot currently test if uploading and downloading code plugs to radios work because my radio and I fell into a lake. I am coordinating with a local ham to verify that the actual core features of QDMR works, should have word on this by the end of the week.

Before going through the process of cleaning everything up and setting up CI so it can be integrated into GitHub actions, I was curious if this is something you would like to be merged to the main project. I recognize that each build target that is added is yet another thing that needs to be maintained and monitored, and that might not be an undertaking you want to take on right now. There might be other reasons that you don't want there to be an "official" windows build. I thought it'd be nice to ask beforehand. QDMR is well-built and wonderfully structured, so debugging was a breeze. The majority of the trouble was in getting the dependencies like QT to cooperate.

For those curious, after some trial and error, I got QDMR working on Windows using the following setup:

SpaceXCheeseWheel commented 2 months ago

Progress so far:

I have been using an Anytone AT-D878UVII Plus. My windows build of QDMR detects the radio and successfully identifies its model. However, so far, it cannot read and write codeplugs to the radio; the radio is placed in the right mode, displaying PC Mode, then PC Read. At this point, QDMR reports an error has occurred and the radio restarts.

I am using Wireshark to attempt to diagnose the issue and compare the USB traffic on a working build on Linux, and my Windows build. I have not been able to discern if the radio is transmitting any codeplug data and QDMR is not receiving it, or if something else is going on.

hmatuschek commented 1 month ago

I had similar problems, in fact it appears to be a QSerialPort issue. That is, the platform abstraction library I use to access the serial port on all platforms.

hmatuschek commented 1 month ago

Maybe, issue #435 may help here, when implemented.

hmatuschek commented 1 month ago

435 is merged in the devel branch. Give it a try, if you like.