[mythtv-users] firewire changes channel but reverts back to prior to channel immediately SOLVED (sort of)

Gabe Rubin gaberubin at gmail.com
Wed Sep 1 04:57:42 UTC 2010

On Thu, Jul 29, 2010 at 11:09 AM, Gabe Rubin <gaberubin at gmail.com> wrote:
> On Thu, Jul 29, 2010 at 11:04 AM, Yeechang Lee <ylee at pobox.com> wrote:
>> Gabe Rubin <gaberubin at gmail.com> says:
>>> My motorola box will change channels but immediately revert back to
>>> the prior channel.  For example, if I go into live tv and choose
>>> channel 180 when it is already on 170, I can see the STB change over
>>> to 180 but immediately it goes back to 170.

I have sort of solved this problem.  The Motorola box is a fairly
newish model (not sure of the specific model, several numbers are
given on the bottom).  It was reverting back to the prior channel and
doing some funky stuff when I did not specify a channel.  I had to
compile 6200ch and invoke that as an external channel changing script
done in mythtv-setup (actually, I used phpmyadmin to make the change,
but needed to change it in the backend).  I also had to make some
revisions to 6200ch:

I added the model and the id number for the device (you can get this
from doing 6200ch -v -v [any number]).  I faked it and pretended it
was a different motorla stb, so I added these lines and commented the
originals out:
//#define DCX3432_VENDOR_ID1 0x000024a0
//#define DCX3432_MODEL_ID1  0x0000ea05

//faked it for the DCX based box
#define DCX3432_VENDOR_ID1 0x000025f1
#define DCX3432_MODEL_ID1  0x0000e724

I also noticed that this program starts on node 1 unless specified
otherwise, but if you start on node 0, it will check node 1 as well.
So I changed 1 to 0 on this line:
#define STARTING_NODE 0  /* skip 1394 nodes to avoid error msgs */

I compiled the program and now everything works after I added
/usr/bin/6200ch as the channel changing script.

It still seems that myth should not need the script and should handle
it internally.  Not sure what is going on there.

This also DOES NOT work for the PACE TDC779X box I have.  The numbers
were already in the c file but to different boxes (VENDOR was assigned
to a generic PACE box and MODEL was assigned to the PACE 779 box.  I
tried to give both the generic and 779 lines the correct info, but it
still does not work.

Here is the code now:
#define PACE_VENDOR_ID1    0x00005094 /* 550 & 779 */
#define PACE_MODEL_ID1  0x00010755
#define PACE_VENDOR_ID2    0x00005094 /* unknown */
#define PACE550_MODEL_ID1  0x00010551
//#define PACE779_MODEL_ID1  0x00010755
#define PACE779_VENDOR_ID1 0x00005094
#define PACE779_MODEL_ID1  0x00010755

Here is the output:
[mythtv at localhost sa3250ch]$ 6200ch -v 5
starting with node: 0
node 0: vendor_id = 0x00080028 model_id = 0x00000000
node 1: vendor_id = 0x00005094 model_id = 0x00010755
Warning: Unit Spec ID different.
Warning: Unit Software Version different.
AV/C Command: 005 = Op1=0x00487C20 Op2=0x00487C20 Op3=0x00487C25

Any idea how to fix it?  Would be great to add a second HD input and
daisy chain these two together.  The motorola box only has one
firewire port whereas the Pace has 2, so I would ideally like to get
that working (and have in the past with other Pace boxes).

More information about the mythtv-users mailing list