|
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. |
|
Thread Tools | Search this Thread | Display Modes |
#1
|
|||
|
|||
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 |
#2
|
|||
|
|||
since when does a motorola cable box have a firewire port?
|
#3
|
|||
|
|||
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 |
#4
|
|||
|
|||
Awesome. Now I don't have HDTV, can I still call up my cable provider and ask them for a Firewire-enabled STB?
|
#5
|
|||
|
|||
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 |
#6
|
|||
|
|||
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?
|
#7
|
|||
|
|||
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 |
#8
|
|||
|
|||
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.
|
#9
|
||||
|
||||
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. Last edited by Naylia; 02-18-2005 at 08:36 AM. |
#10
|
||||
|
||||
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? |
#11
|
||||
|
||||
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. |
#12
|
||||
|
||||
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. |
#13
|
|||
|
|||
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' |
#14
|
|||
|
|||
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.
|
#15
|
|||
|
|||
Quote:
|
#16
|
|||
|
|||
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. |
#17
|
|||
|
|||
Quote:
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); 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. |
#18
|
|||
|
|||
Some additional info on command file structure:
http://www.osronline.com/ddkx/stream/avcref_2tv7.htm Still working on getting valid opcodes and operands... |
#19
|
||||
|
||||
Any luck with this? I'd help out, but my coding skills are limited to unix scripting languages like perl and tcl.
|
#20
|
||||
|
||||
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.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|