g4klx / MMDVM

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

Annoying problem ! #64

Closed iw9grl closed 7 years ago

iw9grl commented 7 years ago

Hi dear, this is a question posted in Yahoo group :

One remaining issue affecting MMDVM in repeater operation is a "dead window" when the repeater should wake-up from "listening" status IMMEDIATELY after the ending of the TX hang time. This has been noticed in DMR mode on the two totally different repeaters we built for our ham club. This dead window is very narrow (perhaps ~200ms) but can randomly disrupt communication because the repeater doesn't wake up, and since the MS ( mobile station ) is still receiving the end of hang-time transmission, it assumes the repeater has waken-up so it keeps transmitting. When this happens, the whole voice message is lost.

Any solutions ? Tnx 73

g4klx commented 7 years ago

The problem of the MMDVM not responding to DMR transmissions immediately after the transmitter stops is known about. The answer is not simple, in MMDVM terms.

As people have already identified, the user radio thinks that the loss of signal is because of local interference or terrain and assumes that the repeater is still operational and behaves accordingly. It doesn’t send the normal wakeup CSBK, until a while later when it decides that the repeater really has closed down. This behaviour while understandable, isn’t mandated in the standard which is why I didn’t put it into the MMDVM. It didn’t help that I developed the software in a vacuum without access to a real DMR repeater to compare with. Thankfully the DMR specification is very complete (do you hear me Icom and Yaesu).

With the MMDVM, some major changes would need to be made to enable the same sort of operation. As written the transmitter switches on as soon as data is ready to be transmitted, with DMR not only is data generated that is transmitted, but also timing information which isn’t transmitted but sent back to the receiver to enable TDMA operation. Splitting the operation of the transmitter from the presence of data wouldn’t be too complex, and would be an MMDVM firmware-only issue. This would allow for the timing information to be sent back to the receiver to allow it to operate. You’d probably need to send the data to the DMR idle receiver also for safety. This state of affairs would only last for a few hundreds of milliseconds before switching to true Idle mode.

The host would also need to be modified to handle normal DMR data as well as Idle data when in Idle mode. This would be relatively easy too.

It would be an interesting project for someone to do!

I would do it, but I have limited free time and I have other priorities with the MMDVM, i.e. the YSF and P25 demodulators.

iw9grl commented 7 years ago

Thank you Jonathan for the detailed answer, I'm sorry but I don't have the skill to help you with the code! I hope that someone read this message and try to find a solution. I'm always available to make any test if needed .

have a nice day Daniele IW9GRL

ok2it commented 7 years ago

Danielle does this happens if MMDVM is runing in DMR Only mode or in mixed DV Mode?

iw9grl commented 7 years ago

It is not relevant, it happens only in dmr in the same way if it is in multimode or not

vk4tux commented 7 years ago

Use TXHang=10 and Modehang=10 CallHang=0 and you wont have the issue.

iw9grl commented 7 years ago

Hi

I know this workaround to avoid this issue, also improve the Late Entry feature, but I think it is always a problem that need to be solved ( when it is possible :) ) .

thank you 73 de IW9GRL

ve2nbz commented 7 years ago

Interesting !! I'm test it now ! I have also the same behavior ! But i think this problem have to be solved in future update if possible !

vk4tux commented 7 years ago

It's not a workaround, Its the best way to run your repeater. Keep TX condition between overs so the system is in TX for the whole qso. 100% duty cycle spec required from TX radio is the nature of DMR and provides best performance considering a 2nd qso/slot may also be happening. stop/start TX between overs has always been bad and we discussed / resolved this a year ago.

DMR is like a rollercoaster ride you jump in and out on the move, on the slot you like

iw9grl commented 7 years ago

Thank you for the detailed information. 73

vk4tux commented 7 years ago

The issue really began for many with the separate RFHang and NetHang parameters added to replace ModeHang. The new parameters reduced TXhang less than its setting to the lowest common denominator.

Using original Modehang and organising best mode setups to not take over. (dstar reflector link auto timed disconnect on cron schedule) etc make the system function much better for all using 10 seconds for Mode/TX hang.

10 seconds is the TX/Mode Hang time setting in practise we have found, running 4 mode systems.

ok2it commented 7 years ago

That is very interesting, Not that it resolves the behavior, but as a Best-Practice guide, I guess this might be useful to add to BM WiKi or MMDVM WiKi. I have OK0DIT RPTR with D* with ircddbgw,DMR BM and YSF with YSFGW. I have the TX Hang at 5 and Net hang at 15 and RF Hang at 30. That way all works well – but I am tempted to put 10s in the mode hang and and REM out RF/NETmodes.

YSFGW is disconnected, ircddbgw is linked as RPTR is used as point of listening to on D* and DMR.

I will be honest but I haven’t yet ran into issue described here – I had to focus on Txing right after TXTail has dropped off so I don’t consider it to be much of an issue over here.

Jiri

From: vk4tux notifications@github.com<mailto:notifications@github.com> Reply-To: g4klx/MMDVM reply@reply.github.com<mailto:reply@reply.github.com> Date: čtvrtek 2. března 2017 1:06 To: g4klx/MMDVM MMDVM@noreply.github.com<mailto:MMDVM@noreply.github.com> Cc: Jirka Culak jiri.culak@outlook.com<mailto:jiri.culak@outlook.com>, Comment comment@noreply.github.com<mailto:comment@noreply.github.com> Subject: Re: [g4klx/MMDVM] Annoying problem ! (#64)

The issue really began for many with the separate RFHang and NetHang parameters added to replace ModeHang. The new parameters reduced TXhang less than its setting to the lowest common denominator.

Using original Modehang and organising best mode setups to not take over. (dstar reflector link auto timed disconnect on cron schedule) etc make the system function much better for all using 10 seconds for Mode/TX hang.

10 seconds is the TX/Mode Hang time setting in practise we have found, running 4 mode systems.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/g4klx/MMDVM/issues/64#issuecomment-283513144, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AV4WNR8Hx4d6Q4XFSJqSSpsvFiUIvJk7ks5rhgf0gaJpZM4MAV2U.

vk4tux commented 7 years ago

The behavior is only seen when the repeater is used with wrong configuration.

The sharp stick at the bottom of the stream is no issue for those floating across and hence is of no consequence.

On 02/03/17 16:10, ok2it wrote:

That is very interesting, Not that it resolves the behavior, but as a Best-Practice guide, I guess this might be useful to add to BM WiKi or MMDVM WiKi. I have OK0DIT RPTR with D* with ircddbgw,DMR BM and YSF with YSFGW. I have the TX Hang at 5 and Net hang at 15 and RF Hang at 30. That way all works well – but I am tempted to put 10s in the mode hang and and REM out RF/NETmodes.

YSFGW is disconnected, ircddbgw is linked as RPTR is used as point of listening to on D* and DMR.

I will be honest but I haven’t yet ran into issue described here – I had to focus on Txing right after TXTail has dropped off so I don’t consider it to be much of an issue over here.

Jiri

From: vk4tux notifications@github.com<mailto:notifications@github.com> Reply-To: g4klx/MMDVM reply@reply.github.com<mailto:reply@reply.github.com> Date: čtvrtek 2. března 2017 1:06 To: g4klx/MMDVM MMDVM@noreply.github.com<mailto:MMDVM@noreply.github.com> Cc: Jirka Culak jiri.culak@outlook.com<mailto:jiri.culak@outlook.com>, Comment comment@noreply.github.com<mailto:comment@noreply.github.com> Subject: Re: [g4klx/MMDVM] Annoying problem ! (#64)

The issue really began for many with the separate RFHang and NetHang parameters added to replace ModeHang. The new parameters reduced TXhang less than its setting to the lowest common denominator.

Using original Modehang and organising best mode setups to not take over. (dstar reflector link auto timed disconnect on cron schedule) etc make the system function much better for all using 10 seconds for Mode/TX hang.

10 seconds is the TX/Mode Hang time setting in practise we have found, running 4 mode systems.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/g4klx/MMDVM/issues/64#issuecomment-283513144, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AV4WNR8Hx4d6Q4XFSJqSSpsvFiUIvJk7ks5rhgf0gaJpZM4MAV2U.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/g4klx/MMDVM/issues/64#issuecomment-283565961, or mute the thread https://github.com/notifications/unsubscribe-auth/AIVGYHY_CD1HWVue5dRxdU2L1I6x7rLcks5rhl1ygaJpZM4MAV2U.