g4klx / MMDVM

The firmware for the MMDVM (Multi-Mode Digital Voice Modem)
GNU General Public License v2.0
473 stars 188 forks source link

MMDVM stuck in FM mode on mqtt branch #339

Closed ke5gdb closed 2 months ago

ke5gdb commented 1 year ago

This line causes a feedback loop with MMDVMHost. CFM::reset() is called when MMDVMHost asserts MMDVM_SET_MODE to IDLE, but serial.writeFMStatus() will cause MMDVMHost to assert the mode back into FM. Ultimately this locks the modem in FM mode.

https://github.com/g4klx/MMDVM/blame/a8bf99037ec31546321a6fc69e355f77d9d1aaef/FM.cpp#L391

I commented on the line here in the commit, but this comment is likely not the correct medium, hence the new issue.

https://github.com/g4klx/MMDVM/commit/7ef0d992d9190466bf13b7306b8867358898c9f1#r132809346

73 de KE5GDB

g4klx commented 1 year ago

Hi Andrew I think your fix is correct. I've incorporated it into the mqtt branch of the MMDVM firmware and I hope that the problem has now gone away. Thanks for finding it. Jonathan  G4KLX

On Friday, 17 November 2023 at 06:13:03 GMT, Andrew Koenig ***@***.***> wrote:  

This line causes a feedback loop with MMDVMHost. CFM::reset() is called when MMDVMHost asserts MMDVM_SET_MODE to IDLE, but serial.writeFMStatus() will cause MMDVMHost to assert the mode back into FM. Ultimately this locks the modem in FM mode.

https://github.com/g4klx/MMDVM/blame/a8bf99037ec31546321a6fc69e355f77d9d1aaef/FM.cpp#L391

I commented on the line here in the commit, but this comment is likely not the correct medium, hence the new issue.

7ef0d99#r132809346

73 de KE5GDB

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

bi7jta commented 10 months ago

Hi @g4klx Jonathan , I got this problem "stuck in FM mode" when I Not set the configuration in mmdvmhost,

[FM] ... ModeHang=10

Do you think it is a good idea to add default ModeHang (Not Infinity), in firmware or in MMDVMHost?

Thank you very much!

DE BI7JTA

g4klx commented 10 months ago

Can you try the latest MMDVM firmware, this issue is fixed with it.