SageTV Community  

Go Back   SageTV Community > Hardware Support > Hardware Support
Forum Rules FAQs Community Downloads Today's Posts Search

Notices

Hardware Support Discussions related to using various hardware setups with SageTV products. Anything relating to capture cards, remotes, infrared receivers/transmitters, system compatibility or other hardware related problems or suggestions should be posted here.

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 12-23-2004, 01:41 PM
GrayGh0st GrayGh0st is offline
Sage User
 
Join Date: Jun 2004
Posts: 41
Controlling Motorola DCT6200 via firewire revisted

Ok... after reading through some old/recent posts about the motorola dct6200 and how supposedly Comcast is now required to enable the firewire port by default or if asked to, combined with other rumors that regardless of whatever encryption is going on w/ the data stream, in theory it would still be possible to control the channel changing of this box via a firewire cable. AND rumor had it that the mythtv people had already done it. So, having asked around, there is an external program/plugin type thing included w/ mythtv called 6200ch. I took a look at the source code which you can find if you download the mythtv tarball, and look under the contrib directory. The file is called 6200ch.c.

Now, the code actually looks pretty straightforward. Has anyone tried porting this to Windows yet? I myself would work on it (as someone previously mentioned) except that I'm not familiar with firewire programming. Would I be opposed to learning? Not at all, except that I don't have a Motorola DCT6200 readily available to test on.

So, is there anyone that has the dct6200 and some programming skills that wants to take up this project? If not, then I'd consider getting the box myself and doing this. Not meaning to sound like a punk by asking someone else to do the dirty work, I just thought that if anyone had one readily available and this idea sounded interesting...

From what I've heard about the usb-uirt's and other such devices, they're good, but slow and at times unreliable. Also, many have proven it worthless to ask comcast to enable their serial port.

With Comcast being required to enable their firewire ports (my information could be wrong though...), this seems like a great idea/project.

Anyone?? Bueller? Bueller? Fry?

-Justin
Reply With Quote
  #2  
Old 01-17-2005, 01:35 PM
band80 band80 is offline
Sage User
 
Join Date: Oct 2004
Posts: 45
since when does a motorola cable box have a firewire port?
Reply With Quote
  #3  
Old 01-17-2005, 02:48 PM
DFA DFA is offline
Sage Expert
 
Join Date: Oct 2003
Location: Bakersfield
Posts: 638
Since by law (FCC) and as of April of last year CableCo's must be able to supply an STB w/ working FW port at the request of the subscriber. SA and Moto have produced boxes to meet this requirement. I believe most of the PVR STB's have FW but may not be active (SW installed).

DFA
__________________
Wrong information is worse than no information
Reply With Quote
  #4  
Old 01-17-2005, 03:50 PM
band80 band80 is offline
Sage User
 
Join Date: Oct 2004
Posts: 45
Awesome. Now I don't have HDTV, can I still call up my cable provider and ask them for a Firewire-enabled STB?
Reply With Quote
  #5  
Old 01-17-2005, 06:06 PM
DFA DFA is offline
Sage Expert
 
Join Date: Oct 2003
Location: Bakersfield
Posts: 638
band80:

As far as I know from reading the FCC regs on this subject, you are NOT required to show the need for one, only request it. My CableCo did not ask why, what or how. They delivered but after I cited the FCC mandate.

DFA
__________________
Wrong information is worse than no information
Reply With Quote
  #6  
Old 01-17-2005, 07:08 PM
band80 band80 is offline
Sage User
 
Join Date: Oct 2004
Posts: 45
Which CableCo do you have? Do they charge extra for it? Did they charge an installation fee (do you know if they are allowed to charge one)? Finally, do you have an HDTV and/or an HDTV subscription?
Reply With Quote
  #7  
Old 01-18-2005, 07:14 PM
DFA DFA is offline
Sage Expert
 
Join Date: Oct 2003
Location: Bakersfield
Posts: 638
1. Brighthouse

2. No, there should be no extra charges for Firewire feature as long as you are already paying for a digital box. However, a box with PVR is extra (usually an additional $10.00/mo). You are not obligated to pay / get / have a PVR box to get FW. Tell them so.

3. No, because I picked up the box. Usually, they will come out and hookup for free and sometimes the CableCo even REQUIRE they deliver/install it. They did this to me the first time: I would not let the tech near my stuff: I let him hold the flashlight: He didn't care.

4. Yes. That's why I want the HD over Firewire. I can see it.

Suggest you call your CableCo for details. Policies vary.

DFA
__________________
Wrong information is worse than no information
Reply With Quote
  #8  
Old 01-18-2005, 07:18 PM
band80 band80 is offline
Sage User
 
Join Date: Oct 2004
Posts: 45
lol... that's hilarious. RCN is a big pain about letting THEM do the installing. For some reason though, the tech has to make a phone call to HQ and read off some # on the box so that they can activate it.... anyways, thanks for the help.
Reply With Quote
  #9  
Old 02-18-2005, 08:34 AM
Naylia's Avatar
Naylia Naylia is offline
Sage Fanatic
 
Join Date: Feb 2005
Location: Mountain View, CA
Posts: 754
I'd like to pick this up a little especially if I can get help with the code. I have a dct6200. I have code warrior, and I have a few semesters of c++ under my belt from back in college. I'm guaranteeing nothing other than that I'm going to download the code and open it up and look at it. Well actually I've already opened it up and looked at it on my work computer so I've met that goal already, but hopefully I'll get around to installing codewarrior and really looking at it over the next week sometime.

Source attached below for anyone else who wants to also work this. I guess my first goal is to get it compiling with windows libraries. If that's not the first step someone let me know please, I'm a hardware engineer by schooling not a software engineer, and since I left school I'm a finance guy so any guidance would be great.
Attached Files
File Type: txt 6200ch.txt (4.8 KB, 784 views)

Last edited by Naylia; 02-18-2005 at 08:36 AM.
Reply With Quote
  #10  
Old 02-18-2005, 11:07 AM
spaceghost's Avatar
spaceghost spaceghost is offline
Sage Advanced User
 
Join Date: Dec 2004
Location: in the Lou
Posts: 134
Naylia-
I have a Moto box and can help test. Sorry I do not have any programming experience but I would like to help if possible.
__________________
Know what I say when I say you know what I mean?
Reply With Quote
  #11  
Old 02-18-2005, 01:19 PM
Naylia's Avatar
Naylia Naylia is offline
Sage Fanatic
 
Join Date: Feb 2005
Location: Mountain View, CA
Posts: 754
So I'm definitly in over my head, but I've made a little bit of progress gathering data. The first thing I noticed is that the following files are necessary for 6200ch.c to be compiled properly.

#include <libavc1394/rom1394.h>
#include <libavc1394/avc1394.h>
#include <libraw1394/raw1394.h>

Well, ok I'll just go find them. But of course, here's the problem with the code, these are all linux specific libraries to access the 1394 bus. So poking around on the web a little eventually I found this

IEC-61883 Protocol I/O Requests

Looking around in here you find that there is a 61883.h file for the windows system and low and behold looking at the class definition real quick there is definitly support for the one command I remembered off the top of my head which was get_handle. Essentially the first thing the code does, so this seems like it will be a necessary header file to enable this code to access the 1394 bus in Windows. The commands are slightly different and I'm sure arguments are passed differently but hopefully this will supply most/all the commands we'll need. Well, that'll have to be it for progress today. I'll have to create somekind of diagram or list of the necessary functions from the source and match them up to windows equivalents to make sure I can accomplish all the functions.
Reply With Quote
  #12  
Old 02-18-2005, 01:22 PM
Naylia's Avatar
Naylia Naylia is offline
Sage Fanatic
 
Join Date: Feb 2005
Location: Mountain View, CA
Posts: 754
On another note the code looks to be a standalone command line utility so hopefully it will be nice and easy to access for another program (like maybe SGraphRecorder) to be modified to access it. Looks like it takes commands like:

6200ch <channel #>

and that's it. I'm hoping it can take 3 channel numbers or I'll have to work that too.
Reply With Quote
  #13  
Old 02-18-2005, 01:51 PM
jvheitz jvheitz is offline
Sage User
 
Join Date: Feb 2005
Posts: 23
Naylia,
I have also been trying to get FW control of my STB (I have a moto 6412)
check out:
http://msdn.microsoft.com/archive/de...vccommands.asp
This is some info about passing AV commands directly to the device. The 6200 (6412 in my case) needs to be 'IAMExtDevice'
Reply With Quote
  #14  
Old 02-18-2005, 02:08 PM
foolio foolio is offline
Sage Advanced User
 
Join Date: Aug 2004
Posts: 173
thank you to you guys for trying to get this working! it would be awesome. I think the main thing holding most prior attempts back is the lack of a AVC panel driver.
Reply With Quote
  #15  
Old 02-18-2005, 02:09 PM
MarcJ MarcJ is offline
New Member
 
Join Date: Feb 2005
Posts: 2
Quote:
Originally Posted by Naylia
I'm hoping it can take 3 channel numbers or I'll have to work that too.
Pretty sure it does.
Reply With Quote
  #16  
Old 02-18-2005, 02:11 PM
jvheitz jvheitz is offline
Sage User
 
Join Date: Feb 2005
Posts: 23
foolio,
I believe the AVC_PANEL subunit is only the GUI interface (iGuide) for control.
We need to devise a way to send the raw AVC commands directly to the TUNER subunit - see the link above.
Reply With Quote
  #17  
Old 02-18-2005, 02:34 PM
MarcJ MarcJ is offline
New Member
 
Join Date: Feb 2005
Posts: 2
Quote:
Originally Posted by jvheitz
We need to devise a way to send the raw AVC commands directly to the TUNER subunit - see the link above.
Something like this pseudo-code:

Code:
#define AVC1394_SUBUNIT_TYPE_6200 (9 << 19)  /* uses a reserved subunit type */ 
#define AVC1394_6200_COMMAND_CHANNEL 0x000007C00   /* 6200 subunit command */
#define AVC1394_6200_OPERAND_SET 0x20      /* 6200 subunit command operand */


BYTE AvcCmd[] = 
{ 
    0x00,                                              // ctype = "control"
    AVC1394_SUBUNIT_TYPE_6200,          // subunit_type, subunit_id
    0x52,                                              // opcode (ATN)
    AVC1394_6200_COMMAND_CHANNEL,   // operand 0 = "channel"
    0x00,                                             // operand 1 = ATN
    0x00,                                             // operand 2 = ATN
    0x00,                                             // operand 3 = ATN
    0xFF                                             //  operand 4 = D-VCR medium type.
};
// Specify a channel number.
ULONG ulChannelNumber = channel_number; // Specify the channel here.
// Shift over by 1 (LSB of operand 1 is a 1-bit blank flag)
ulChannelNumber = ulChannelNumber << 1; 
// Plug this number into operands 1 - 3.
AvcCmd[4] = (BYTE) (ulChannelNumber & 0x000000FF);
AvcCmd[5] = (BYTE)((ulChannelNumber & 0x0000FF00) >> 8);
AvcCmd[6] = (BYTE)((ulChannelNumber & 0x00FF0000) >> 16);

long cbCmd = sizeof(AvcCmd);
hr = pTransport->GetTransportBasicParameters(
    ED_RAW_EXT_DEV_CMD, 
    &cbCmd,
    (LPOLESTR*) AvcCmd);
Need to figure out more about what the AvcCmd needs to be. Not sure what Operand 4 needs to be.

I think we need the info found in these specs too:

AV/C Tuner Subunit Model and Command Set Version 2.0
AV/C Digital Interface Command Set General Specification Version 4.2
AV/C Tape Recorder/Player Subunit Specification 2.4 (maybe not)

Found here: http://www.1394ta.org/Technology/Spe...ifications.htm

Last edited by MarcJ; 02-18-2005 at 02:41 PM.
Reply With Quote
  #18  
Old 02-18-2005, 05:02 PM
jvheitz jvheitz is offline
Sage User
 
Join Date: Feb 2005
Posts: 23
Some additional info on command file structure:
http://www.osronline.com/ddkx/stream/avcref_2tv7.htm
Still working on getting valid opcodes and operands...
Reply With Quote
  #19  
Old 02-20-2005, 11:37 AM
turak's Avatar
turak turak is offline
Sage Expert
 
Join Date: Sep 2003
Location: Miami
Posts: 560
Any luck with this? I'd help out, but my coding skills are limited to unix scripting languages like perl and tcl.
Reply With Quote
  #20  
Old 02-22-2005, 11:59 AM
Naylia's Avatar
Naylia Naylia is offline
Sage Fanatic
 
Join Date: Feb 2005
Location: Mountain View, CA
Posts: 754
Does anyone have access to the SDK or DDK and can get a copy of 61883.h and the other files associated with it? It looks to have most of the functions needed to interface with the firewire bus, but for me this was an attempt to avoid buying a usb-uirt, not an excuse to drop $300 on the DDK. I'm still trying to track it down, but if anyone can get access to a copy of it we could redevelop the existing source to work with it.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -6. The time now is 02:18 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.
Copyright 2003-2005 SageTV, LLC. All rights reserved.