MMDVMHost icon indicating copy to clipboard operation
MMDVMHost copied to clipboard

OVCM Clear mode

Open do1kbl opened this issue 4 years ago • 10 comments

Hello Jonathan, on the dmrhost (https://github.com/BrandMeister/DMRHost) they make a OVCM=4 This mode allowed it to used my old Motorola DP3601 without problems.

It is possible to put this function into your MMDVMHost?

73 Do1KBL, Kim

do1kbl avatar Nov 20 '20 20:11 do1kbl

An OVCM of 4 is meaningless. If you look at the ETSI DMR specification you will see that the OVCM is only 1 or 0. Whatever BM are doing, it isn’t OVCM.

Sent from Yahoo Mail for iPhone

On Friday, November 20, 2020, 20:57, Kim-Benjamin [email protected] wrote:

Hello Jonathan, on the dmrhost (https://github.com/BrandMeister/DMRHost) they make a OVCM=4 This mode allowed it to used my old Motorola DP3601 without problems.

It is possible to put this function into your MMDVMHost?

73 Do1KBL, Kim

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

g4klx avatar Nov 20 '20 21:11 g4klx

Ok On Motorola device I hear No voice if someone has activate OVCM on TX

thats mean I need to sell my old device, but its not usable and buy a newer Motorola.

Hytera and Tytera has no problems

do1kbl avatar Nov 21 '20 07:11 do1kbl

I’m not blaming BM for anything. Can you explain this then: OVCM is defined as being a 1-bit field, therefore having a value of 0 or 1. Within the Service Options, OVCM is in position 0x40, but allowing your OVCM to have a value other than 0 or 1 is confusing. If I were to set your OVCM value to 0x01, would that set the Priority to 3 for example?

Sent from Yahoo Mail for iPhone

On Sunday, November 22, 2020, 09:29, Artem Prilutskiy [email protected] wrote:

Please don’t blame BM. BM does what it should: set bit 2 to 1 (0x04).

— You are receiving this because you commented.

Reply to this email directly, view it on GitHub, or unsubscribe.

g4klx avatar Nov 22 '20 11:11 g4klx

Not sure where you get the idea that someone wants different value than 0 or 1..

stefansaraev avatar Nov 22 '20 12:11 stefansaraev

It seems someone mixed things. Guys added value 4 to the host settings that allows to remove OVCM bit, I guess

cyanide-burnout avatar Nov 22 '20 17:11 cyanide-burnout

And OVCM attribute has bit 2 (0x04) and not 6 (0x40). Please read ts_10236102v020401p.pdf page 79. Bit 6 (0x40) indicates encrypted transmission.

cyanide-burnout avatar Nov 22 '20 17:11 cyanide-burnout

The BM repo is a stripped-down fork of MMDVMHost (basically removes anything not DMR-related) that includes some additional cases for the OVCM configuration switch. Inside of the Conf.cpp on that repo is the following:

	else if (::strcmp(key, "OVCM") == 0)
		switch(::atoi(value)) {
			case 1:
				m_dmrOVCM = DMR_OVCM_RX_ON;
				break;
			case 2:
				m_dmrOVCM = DMR_OVCM_TX_ON;
				break;
			case 3:
				m_dmrOVCM = DMR_OVCM_ON;
				break;
			case 4:
				m_dmrOVCM = DMR_OVCM_FORCE_OFF;
				break;
			default:
				m_dmrOVCM = DMR_OVCM_OFF;
				break;
		}

So it's apparently an option that ensures OVCM is disabled on all traffic that goes in or out. Basically used inside of CDMRSlot::writeModem() to check every way that OVCM might be set to ON and clears the bit.

randybuildsthings avatar Mar 05 '21 15:03 randybuildsthings

Can you point me at the location of DMR repository so I can add support for this, it looks useful.

Sent from Yahoo Mail for iPhone

On Friday, March 5, 2021, 15:23, Randy Hall [email protected] wrote:

The BM repo is a stripped-down fork of MMDVMHost (basically removes anything not DMR-related) that includes some additional cases for the OVCM configuration switch. Inside of the Conf.cpp on that repo is the following: else if (::strcmp(key, "OVCM") == 0) switch(::atoi(value)) { case 1: m_dmrOVCM = DMR_OVCM_RX_ON; break; case 2: m_dmrOVCM = DMR_OVCM_TX_ON; break; case 3: m_dmrOVCM = DMR_OVCM_ON; break; case 4: m_dmrOVCM = DMR_OVCM_FORCE_OFF; break; default: m_dmrOVCM = DMR_OVCM_OFF; break; }

So it's apparently an option that ensures OVCM is disabled on all traffic that goes in or out. Basically used inside of CDMRSlot::writeModem() to check every way that OVCM might be set to ON and clears the bit.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

g4klx avatar Mar 05 '21 15:03 g4klx

https://github.com/BrandMeister/DMRHost/blob/0910faaad428df4a290aab8224a16d2584883ed8/DMRSlot.cpp

randybuildsthings avatar Mar 05 '21 15:03 randybuildsthings

The original explanation about '4' was vert badly done, which is why I didn't follow up on it. A link to the change in the BM version would have explained things a lot better. I've now manually added the same change to the original MMDVM Host, so both versions should now be in sync.

g4klx avatar Mar 07 '21 17:03 g4klx