Added configuration of AT1846S registers for digital modes in MD-UV3x0 driver. In M17 mode handler forced signal phase inversion at demodulator side also for MD-UV3x0 devices

This commit is contained in:
Silvano Seva 2022-05-31 18:19:57 +02:00
parent 2dc0106380
commit 4367db53d0
2 changed files with 14 additions and 4 deletions

View File

@ -66,8 +66,8 @@ void OpMode_M17::update(rtxStatus_t *const status, const bool newCfg)
{
(void) newCfg;
// Force inversion of RX phase for MD3x0 VHF radios
#ifdef PLATFORM_MD3x0
// Force inversion of RX phase for MD-3x0 VHF and MD-UV3x0 radios
#if defined(PLATFORM_MD3x0) || defined(PLATFORM_MDUV3x0)
const hwInfo_t* hwinfo = platform_getHwInfo();
status->invertRxPhase |= hwinfo->vhf_band;
#endif

View File

@ -159,8 +159,18 @@ void AT1846S::setOpMode(const AT1846S_OpMode mode)
{
if(mode == AT1846S_OpMode::DMR)
{
// TODO: DMR mode
//
// TODO: values copy-pasted from GD77 driver, they seems to work well
// at least with M17
//
i2c_writeReg16(0x3A, 0x00C2);
i2c_writeReg16(0x33, 0x45F5);
i2c_writeReg16(0x41, 0x4731);
i2c_writeReg16(0x42, 0x1036);
i2c_writeReg16(0x43, 0x00BB);
i2c_writeReg16(0x58, 0xBCFD);
i2c_writeReg16(0x44, 0x06CC);
i2c_writeReg16(0x40, 0x0031);
}
else
{