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
223 stars 46 forks source link

Cannot download codeplug from 878UV #50

Closed hexagonal-sun closed 3 years ago

hexagonal-sun commented 3 years ago

Hi,

I'm trying to download a codeplug from a new 878 radio and I'm having issues. When downloading, I'm seeing a dialog that says:

Cannot download codeplug from device. An error occurred during download:download Cannot download codeplug: Anytone: Cannot read data from device: No response from device: Timeout

Running the command line yields:

QSocketNotifier: Socket notifiers cannot be enabled or disabled from another thread
QObject::connect: Cannot queue arguments of type 'QSerialPort::SerialPortError'
(Make sure 'QSerialPort::SerialPortError' is registered using qRegisterMetaType().)
QSocketNotifier: Socket notifiers cannot be enabled or disabled from another thread
QSocketNotifier: Socket notifiers cannot be enabled or disabled from another thread

I'm running on MacOS 11.2.3. I can download the codeplug with dmrconfig but I do experiance some courruption with the contacts TG list.

hmatuschek commented 3 years ago

It might be a stupid question, but have you turned down the volume pot to the minimum? There appears to be an issue with the connection where there is audio output while accessing the radio. This should lead to intermittent connections, sometimes it works sometimes not.

hmatuschek commented 3 years ago

Oh, wait. I can reproduce that problem here under MacOS 11.2.2. So there appears to be a real issue with MacOS and the serial port. In fact, it is an issue that the download happens in a separate thread to avoid a GUI freeze while downloading/uploading. If I download the code-plug using the command line tool, it works nicely. This is kind of an ugly issue with MacOS 11 (under 10 it worked nicely). This means that I must now perform radio detection and everything else inside the thread.

Consequently also the OpenGD77 radios are affected as they use the USBSerial interface as well.

hexagonal-sun commented 3 years ago

@hmatuschek Thanks for the quick response! Glad you could reproduce.

If you need me to test any candidate fixes my end, please let me know.

Thanks, Matt (M0MLQ)

hmatuschek commented 3 years ago

Are able to compile qdmr from sources? If so, you may use the command line tool for now. It works nicely. It is called dmrconf and is installed along with qdmr. I just do not distribute it along with the app package.

hexagonal-sun commented 3 years ago

@hmatuschek Yep, I've got the compiled version and can confirm that dmrconf works great. I'll use that as an interim solution. Thanks!

hmatuschek commented 3 years ago

Just try the current master branch, it should work now. I've tested it with both the AT-D878UV as well as OpenGD77 firmware.

BTW: I have not tested the 878 implementation thoroughly yet as I still develop it. If you like, you may give me feedback about any feature still buggy. That is, especially the APRS (analog and digital), roaming and CTCSS/DCS features.

hexagonal-sun commented 3 years ago

Just given this a try and it all works on my end. Thanks for fixing so quickly.

I'll start using qdmr as my main programming software for the D878UV. If I run into any more problems, I'll let you know.