Introduction: DIY Media Center Remote
In my previous Instructable, I created an HID ir keyboard which could convert signals from any remote to HID commands. So I thought I should make a fitting ir remote as well.
I know some of you may think “why make this remote when you can buy nec remotes for extremely cheap”. Agreed! Those nec remotes are extremely cheap and this project may cost way more than the ones already available in the market. But that’s not why I made this project. I made this because of 3 reasons. First, I needed to learn about ir transmission. Second, this remote is expandable which means we could modify the schematics and pcb to introduce more features like remapping keys, a small display etc. Third, If the receiver is DIY, then the transmitter should be DIY as well.
The Heart of the board here is a PIC18LF26J50 which works at 2.5v to 3.3v. Perfect for a CR2032 battery. Also its power consumption is in Nano Amperes when in deep sleep, so theoretically, we would never need to change the battery in our life time. (More of this explained later). It uses a 5mm IR led to transmit signals along with a few passives. I’ve also included an indicator led to indicate when a signal is being transmitted.
Step 1: Tools Required
-Soldering Station ( a good quality station is recommended with at least 60w power)
-Multi-meter (To check for current consumption and some continuity checks)
-Tweezers (for component placement on the pcb)
-Box cutter (To cut the housing to size.)
-PCB drill with 0.5mm bit.
-pickit 2 or 3
Step 2: List of Components
- IR LED (sanded flat on both sides)
- RED SMD LED 1206
- Resistors (100e, 470e, 2k2, 10k)
- 220nf capacitor
- copper clad board
- Spare remote for conductive pads
- 3v cell
- 3v cell holder
Step 3: Schematics and PCB Layouts
I created these schematics in EagleCAD soft. I've attached the sch and brd files in the project folder.
Step 4: Hardware
I created the pcb using the toner transfer method And cut to size using a hacksaw and some files. After etching PCB is tinned preventing the copper oxidation. (Sorry I did not record the procedure.)
The conductive pads are extracted from a non-working remote I had laying around. And finally housing is created using a plastic sheet I had from an enclosure.
The 5mm IR led I’m using here is sanded down from two sides to make it flush on the pcb.
Step 5: Software
As usual, I used MikroC pro for PIC to write the software. The software remains in sleep mode most of the time which minimizes it’s power consumption. Here All of the PORTB pins are used as interrupts (only way to wake up a device from sleep is using an interrupt).
This PIC supports Portb interrupt-on-change on pins RB4-RB7. Also it has 4 external interrupts. INT0 is assigned to RB0 while other 3 are remappable. So I assigned them to RB1-RB3. This way, All of the PORTB pins are interrupt enabled.
The main loop first checks if an interrupt is occurred, then checks which pin is pressed (note: I have enabled internal pull-ups so I don’t have to use externally connected resistors that may use power from the battery). If a key is detected then it sends the coded ir signal and then returns to sleep to be waked up by interrupt again.
Step 6: Power Consumption
As I said in the intro, this PIC’s power consumption is in nano amps when in deep sleep. 13 nA to be exact. Which means, If we used a 220mah CR2032 battery, the battery life would be 16923076.92 hours or 705128 days or 1931 years. THEORETICALLY. But in real world usage, it’ll drain much quicker.
Unfortunately, i don't have an expensive multimeter to test it. but my cheap multimeter shows 000 reading on 200uA range. so I guess i has to be below 1uA atleast.
Step 7: Video
Following is the Video which shows the working of the remote along with the HID ir keyboard i made in the previous project.
Step 8: Thanks.
That's it. Thanks for your time.
Please leave a comment.
You can also suggest what should i make next.