To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.handyboardOpen lugnet.robotics.handyboard in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / Handy Board / 363
362  |  364
Subject: 
REC80 Transmit
Newsgroups: 
lugnet.robotics.handyboard
Date: 
Wed, 24 Apr 1996 03:31:57 GMT
Original-From: 
David Negro <dln2@cornell.+saynotospam+edu>
Viewed: 
2262 times
  
Folks,
After writing code to decode REC80 signals I got inspired to write code to
transmit them as well.  But I sat on the idea for quite a while and didn't
get around to it until now.  So this weekend I worked on the idea and it is
now complete.  What is it, and what can you use it for?  REC80-TX will
transmit the IR remote control signals used in many home devices from
makers including:

Akai, Canon, Goldstar, Hitachi, Kenwood, NEC, Onkyo, Pioneer, Sanyo, TEAC, and
Yamaha.

I do believe that my routine will work with devices made by these companies
but since I don't have products from them, I can't guarantee it.  I can
only guarantee that it will work with my Pioneer CD player.  Another
possible use would be for networking using IR.  If people think that it
would be a good idea, I may look into combining my two REC80 routines into
a general networking package.

Source code, documentation and the icb file can be found at:
<ftp://cher.media.mit.edu/pub/incoming/ic_contrib/dnegro/REC80-IR-TX/>
or on my web page:
<http://falcon.arts.cornell.edu/~dnegro/HB.html> - personal Handyboard work

Comments, suggestions welcome.  Feel free to Email me.

-Dave Negro
dln2@cornell.edu

P.S. - I know that this is not the place for this, but it is on my mind.
In a year I will be graduating from Cornell.  I am considering both
graduate school and working.  I am also thinking about working for a year
or two and then going to graduate school.  Anyone have suggestions on
schools or programs (I am interested in robotics/control, computers,
microcontrollers etc etc) and what do people think about working before
going on to graduate school?  I am an average student who likes to spend
lots of time on projects but I have never done research for a professor
here at Cornell.  What are my chances for getting into a decent grad
program?  Thanks.


Readme for REC80-TX follows:
------------------------------------------------------------------------------
******************************************
* REC80-TX.asm - by David Negro (4/23/96)
******************************************
REC80-TX is an interrupt routine designed to send IR signals to REC80
compatible devices.  Give it an byte for an address and a byte for data and
REC80-TX will do the rest.  It transmits 32 bits including a header pattern.
The routine sends the header, then the address, complement of the address,
data, and then the complement of the data. I guarantee only that this routine
works with my pioneer CD player but it should work for many others including:

Akai, Canon, Goldstar, Hitachi, Kenwood, NEC, Onkyo, Pioneer, Sanyo, TEAC, and
Yamaha.

Again, I don't have products from all these companies so I can't test them, but
if it works with a device of yours, let me know and I will add it to a list.

How to use:
Only one simple command to use.  Just call REC80_Tx() with the data that you
want to send.  The address is the upper byte and the data should be the lower
byte.  For example for my pioneer CD player I would use:

REC80_Tx(0xA201);  /* Where $A2 is the address of my CD player and $01 is the
command to play track one */

It will return 0 if the command transmit was started successfully and -1 if it
is still busy transmitting the previous input.

OK, so you think that your device may work with my routine.  Now what?  Well I
would assume that you would want to know what the commands do before spitting
them out.(*)  I would suggest using my routine IR_data() in my REC80-IR.icb
file.  This will allow you to figure the info coming out of a remote that you
already own.  If your remote doesn't work with REC80-IR then I doubt that your
device will work with REC80-TX.

For those who want to tweak, there are a couple of variables that control the
timing characteristics.  The actual times are computed by multiplying the
number by 0.5us.  For example the default value for a zero bit is 768 which is
(768)*(0.5us) = 384us. For more information please read up on REC80 on my web
page.  The following variables are times accessible to the user:

IR_Hdr_Lo       * The time for the wait part of the header
IR_Hdr_Hi       * time for pulse part of header
IR_Pulse        * time for pulse between data bits
IR_one          * time for a one bit
IR_zero         * time for a zero bit


Where can I find these files?  Check out:
<http://falcon.arts.cornell.edu/~dnegro/HB.html> - personal Handyboard work
<http://falcon.arts.cornell.edu/~dnegro/IR/> - information on IR remotes
<http://falcon.arts.cornell.edu/~dnegro/miniboard.html> - work on the miniboard
<ftp://cher.media.mit.edu/pub/incoming/ic-contrib/dnegro/> - my files at MIT

If you have any problems or questions, don't hesitate to Email me.   Also, let
me know what you use these routines for, or what you are doing in general. I am
always interested in what others are doing.

The standard disclaimer holds.  I don't guarantee this code to work for any
device other than my CD player.  Please don't use this code for commercial
purposes without my prior consent.

-Dave Negro
dln2@cornell.edu


(*) - On a side note, after I figured out that the address of my CD player was
$A2 I decided to go through all 256 possible data commands.  Many didn't do
anything but suprisingly some worked and did things that my regular remote
won't - like eject my CD.  But how useful is it to eject a CD remotely anyway?



1 Message in This Thread:

Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR