Home-Brew IR port. Was - Please Ignore RS232 message. The subject should read IrDA port... Sorry

Alan Ide gamebeavis at gmail.com
Fri May 11 17:19:04 CEST 2007

Ok, I have formulated a plan of attack for my IR port addition. I have been
googleing (is that a word?) my little brains out for 2 days now and this is
what I have come up with thus far. I was looking for the simplest (no sense
in reinventing the wheel) but also the most "customizable" solutions. Please
note, this is my first such attempt at a "hardware" project, my "hack"
skills lie mostly in higher level software, thus I NEVER before had to
interface with hardware directly, so this could all be WAY off. Please be
brutal with your opinions.

Here are the pieces I came up with.
1. IR transmitter: I wanted this to be as small as possible so I could hide
it away inside the Neo's case and not have to have any USB dongles or the
like outside of the unit. Also, the only modification I was truly willing to
do to the case itself will be drilling a hole in the top for the IR LED to
protrude. I found this home-brew transmitter at lirc.org "
http://www.lirc.org/transmitters.html" it is the transmitter at the very
bottom of the page, that was submitted by Petteri Aimonen. It is small,
compact, simple, robust, and the only connections that need be made to the
main board are a 5v pwr (I think we can steal that from the CPU power
supply??), ground, and an input pin (which I think we can just steal an
unused GPIO pin from the CPU).
2. LIRC: The LIRC.org project has already done all the software legwork for
interfacing with an IR device, as well as creating customizable
configuration files for a whole slew of remote controlled devices, that can
be selected on the fly. This will make a perfect software back end!
3. Device driver: Obviously we need a driver module to be able to talk to
the device. This is by far the part I need the most help with. I have NO
idea how to produce this part. I assume all we would need is a driver that
will interface with LIRC, communicate on the appropriate GPIO pin, and be
sure that there isnt any voltage (data) on the GPIO pin when the IR is not
being used, so we dont end up with power drain. (Shameless call for HELP!)
4. GUI: Ah, finally something I can do! (damn, I just realized im pretty
useless, huh :-) but graphics is my real "coding" expertise, mostly 3D
however). I have already drawn up a fairly versatile GUI front end that I
plan to code in GTK. This GUI front end will simply send LIRC commands to
the back end, and ofcourse look good, and follow the current Openmoko theme.

Any suggestions, comments, or hate mail are welcome.

On 5/10/07, Alan Ide <gamebeavis at gmail.com> wrote:
> EDIT: Sorry about the RS232 message, I wrote 2 emails about different
> questions, and sent them to the wrong mailing lists, apparently too long of
> a week already. :-)
> Hi all,
> I have stated before that one of the first things I want to do with my
> moko after taking it out of the box and blessing it as my first born is to
> add an IR port to it. That way I can throw away all my remote controls and
> have one truly godlike device. Let me start by saying, I have NO idea when
> it comes to hardware (well, just enough to be dangerous really). I know that
> the CPU has GPIO with some unused pins, and I "think" I could fairly easily
> make an IrDA port as long as I had use of one of the pins, and a ground.
> I guess my question is, how would I go about sending data to that pin from
> a program? I would have to explain to the cpu what data rate to use, and
> what data to send. I realize that would require writing a driver for the
> device (new territory for me), but I am not really sure what steps to take
> to go about adding a hardware device and then writing the software to use
> it..
> Thank you,
> alan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openmoko.org/pipermail/openmoko-devel/attachments/20070511/9b9f8707/attachment.htm

More information about the openmoko-devel mailing list