COM Port Connection

E

Elias

Dear Experts. I connected my laptop to an STB (Receiver) through an RS232
cable. I need to check if the connection is established through the serial
COM1 port to the STB. Is there any way/command that i can use to check that
the PC is actually connected to the STB?

Thanks.
Elias
 
J

John McGaw

Elias said:
Dear Experts. I connected my laptop to an STB (Receiver) through an RS232
cable. I need to check if the connection is established through the serial
COM1 port to the STB. Is there any way/command that i can use to check that
the PC is actually connected to the STB?

Thanks.
Elias

One of the many free terminal emulator programs should do the job.
 
E

Elias

Can you elaborate please? excuse my ignorance, but i installed one "terminal
emulator" software that i dont know what is it to start with, and i didnt
know where to go from there. can you please explain a bit further?

Thanks
 
P

Pegasus \(MVP\)

Under a terminal emulator (e.g. HyperTerminal) you can nominate
the COM port you wish to talk to. When a serial device (e.g. an
ordinary modem) is connected to that port then your keystrokes
are echoed on the terminal emulator screen. Otherwise, nothing
happens.
 
E

Elias

ok, great, now we're going somewhere, but what if the device connected to the
port does not have a keyboard, then how can i check if it is connected? you
said that the keystrokes are echoed on the therminal emulator screen, you
mean which keystrokes? strokes on my pc keyboard? i have to type something on
my pc keyboard and if the other device is connected, then i have to see the
keystrokes on the screen of the emulator?

Thanks,
 
P

Paul

Elias said:
ok, great, now we're going somewhere, but what if the device connected to the
port does not have a keyboard, then how can i check if it is connected? you
said that the keystrokes are echoed on the therminal emulator screen, you
mean which keystrokes? strokes on my pc keyboard? i have to type something on
my pc keyboard and if the other device is connected, then i have to see the
keystrokes on the screen of the emulator?

Thanks,

First of all, you should find a manual for your STB. I can see a problem
right away, by looking at this. This would be an example of a manual.

http://www.sbcatest.com/TechUpdates/DTV-MD-0058-DIRECTV Set-top Information for Installers-V2.0.pdf

The manual shows 8 bit codes being used for the commands. The
ASCII character set is encoded in 7 bit codes. Now, the
people who invented the protocol, on that example STB,
set the upper bit in the code. And I would guess, the
purpose is to prevent people from using Hyperterminal
to talk to their STB :) At least some of the
returned codes are also 8 bit, and would display as
garbage on the Hyperterminal screen.

In short, the protocol is not intended to be human readable,
unlike the protocol used on a modem (where at least a few
things you do, are human readable, and fun to play with).

Seriously, you should be using a software intended for "talking"
to the STB. If that software cannot establish a connection,
then either the baud rate or similar setting is wrong, or
the type of RS-232 cable needs to be changed. RS-232 cables
are either straight through, or a null modem type cable, swaps
some signals. RS-232 is not supposed to be damaged, by
connecting a transmitter signal to a transmitter signal,
so you can try both types of cables, if the manual
doesn't happen to mention whether the STB is DTE or DCE.
My assumption is they'd set it up so it uses a straight
cable from the computer to the STB, and I have a 50:50
chance of being right :)

So you can connect a cable, between the PC and the STB,
run Hyperterminal, select the correct COM port, and start
typing. But the STB will be silent in return, because
it is expecting 8 bit codes with the upper bit set. It'll
have nothing to say.

You need keys on the keyboard, that generate codes having
decimal values higher than 127. Can you see yourself
typing "heart symbol" which is decimal 169 or hex 0xA9 ?
That protocol was designed for a computer program to drive.
There is no "heart" on my keyboard.

http://casa.colorado.edu/~ajsh/iso8859-1.html

This is an example of a software designed to do stuff
to a set top box. On one of their web pages, they
mention "irreversible damage" to the STB, as one outcome
of screwing with it. Like if you load the wrong firmware.

http://www.dmsiusa.com/documents/PCLink2.33U.pdf

I think you really need to visit a site that specializes in
hacking STBs, as someone will have already done whatever you're
trying to do, and they could save you a lot of grief and
wasted time.

HTH,
Paul
 
E

Elias

Thanks Paul, the issue is that i downloaded the software to upload the new
firmware for my STB but that one is freezing. So i thought that maybe i am
using the wrong cable, hence i opened this question, wanted to make sure that
the STB is listening and the cable i am using is correct. i am using an
RS-232C cable (male DB25 to Female DB9)

All what is says on the manual of the STB is: 9pin D-Sub RS232C, Baud
Rates:115200baud max.

Seems that i can not check it this way?

Thanks again.
 
P

Paul

Elias said:
Thanks Paul, the issue is that i downloaded the software to upload the new
firmware for my STB but that one is freezing. So i thought that maybe i am
using the wrong cable, hence i opened this question, wanted to make sure that
the STB is listening and the cable i am using is correct. i am using an
RS-232C cable (male DB25 to Female DB9)

All what is says on the manual of the STB is: 9pin D-Sub RS232C, Baud
Rates:115200baud max.

Seems that i can not check it this way?

Thanks again.

The thing is, if you are debugging a modem connected via RS-232, the
interface uses printable characters. Then, if you start the Hyperterminal
program, that is designed to work with printable characters. You can
use the keyboard to send commands, and you see "OK" come back from the modem.

The problem I see, is the STB is using non-printable characters. Those
are going to be more of a problem to generate. And if the STB sends back
non-printable responses, you have a similar problem checking the response
that comes back.

Download this. Place the download in a separate folder. Double click to
extract. There is "setup.exe". Double click to install. Then look in
Start:programs:B&B Electronics for the program to run. it is called
COMTest. You get to specify a COM port, like COM1, then select baud
rate and the rest. I'd try powering off the STB, power on, and perhaps
it will autobaud or play nice at 9600. Use the settings in the DirectTV
manual as a guide.

http://www.bb-elec.com/bb-elec/software/comtest/com_test.exe

Some info on COM_Test here.

http://www.bb-elec.com/tech_articles/econn_check_2wire_rs485.asp

"Option for Sending Unprintable Characters -
Alt + 3 digit scancode, then release Alt"

What they don't tell you, is that the numbers must be entered
on the numeric keypad (right hand side) of the keyboard, and not the
normal numbers. The number entered is a "scancode", and appears to get
translated (which sucks). So far, I'm not making much headway, on figuring
out how the translation works.

By walking through the possible values, one at a time, I've determined
that typing (hold down alt) 1 5 9, gives <83> or 0x83 hexidecimal,
on the COMtest screen. That <??> value would be the hexidecimal value
sent to the port. Your mapping may be different than mine, because it
is a keyboard translation table of some sort.

I would disconnect the STB, before evaluating scancode values. Maybe
you'll get lucky, and alt 159 will give <83>.

On the DirectTV STB, <83> is GetPrimaryStatus, and dumps a small table
of information. I'm hoping a command like that would be safe enough, to
issue again and again. Be careful, as you could brick it...

If there are no standards for STBs, the command set could be different
on each one.

Good luck,
Paul
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top