Following information in a previous thread, to try and make LinuxMCE NOT repeat the channel numbers 4 times when changing channels on my external Bell dish receivers, it's still sending the numbers 4 times each.
Asking to view channel 201 results in 2,2,2,2 0,0,0,0 1,1,1,1 being sent and the dish responds to all sequences sent to it and you don't end up on channel 201 at all.
I followed the instructions here:
http://wiki.linuxmce.org/index.php/Setting_Up_A_Development_Environmentand it didn't complete, but I went looking to see if
~/charon-merge/src/IRBase
was there, and it was!
So I then edited "IRBase.cpp"
On line 200 I set: int iRepeat = 1;
and on line 215 I set: iRepeat=1;
This affects this part of the code:
if(!ircode.empty()) {
int iRepeat = 1;
if( pmsg->m_mapParameters.find(COMMANDPARAMETER_Repeat_Command_CONST)!=pmsg->m_mapParameters.end() )
iRepeat = atoi( pmsg->m_mapParameters[COMMANDPARAMETER_Repeat_Command_CONST].c_str() );
else
{
if( m_mapDevice_IRRepeat.find(devid)!=m_mapDevice_IRRepeat.end() )
{
pair<int,int> p = m_mapDevice_IRRepeat[devid];
if( cmd==COMMAND_Vol_Up_CONST || cmd==COMMAND_Vol_Down_CONST )
iRepeat = p.second;
else
iRepeat = p.first;
}
}
if( iRepeat<1 )
iRepeat=1;
LoggerWrapper::GetInstance()->Write(LV_STATUS, "Sending Infrared Code for dev <%d> cmd <%d>, channel$
devid, cmd, irport.c_str(), iRepeat, ircode.c_str());
I then saved that, issued a "make" command...
I then found "/usr/pluto/lib/libIRBase.so" and copied that to another name for backup
I then copied the new libIRBase.so I just made into /usr/pluto/lib and chmod 644 and chown root:root
Quick Reload Router, jump into TV and drats, it's still sending each channel 4 times.
I then power off and restart. Same thing.
Is there something I missed? (most likely!)