Based on the IT journey of Michael Rickert

Building your own CoreIR transponder

Creating your own CoreIR transponder from off-the-shelf components…

coreirlogosmallWhat you’ll need:


Got all that? Great, let’s get started!


First, cut the wiring on your two LEDs like seen below, if you look closely, you should see two sets of notches on your led wires, the second set (further from the led itself) is where you want to cut with scissors. You’ll also want to bend the side that has the ‘smaller’ filliment inside the led bulb (we call that the anode) about 90 degrees out, why will be clear later on:














Next we take the 4S balance connector and cut off the back pins as close as we can to the plastic case, this will help keep potential shorts from occurring as we put everything together later on.




Ok, so we prepped our LEDs and our balance connector, lets prepare the transistor next. place the transistor so that the flat side is facing *up* and the ‘legs’ are facing tward you, then take the leg all the way to the right and bend it back tward the transistor until its flush with the plastic housing, creating an L shape, as seen below. You’ll also want to trim this bent leg a bit, so that it only has at most a few mm extending from the plastic transistor housing.













This next step is optional, but it’ll give you a much better end result… ‘tin’ (that is, put some flux and then solder on to) the pins on the arduino we’ll be using later. Pin 5, all ground pins, vcc, and raw.




Got it? Good! Keep that soldering iron nice and hot, and solder the 9.1ohm resistor (either direction, there is no wrong way) onto the VCC pin, while propping it up against the orange chip, the lower you can go here, the flatter your end result (transponder) will appear. Be sure not to touch the reset or A3 pins though!













So far so good, now its time to install the transistor we previously prepped. With the flat side still facing upwards, solder the leftmost leg to ground, and the middle leg to the 5 pin before bending the transistor down flat against the Arduino (but don’t touch any metal bits with those legs):














Remember that wire I made you buy, here’s where it goes… Attach two wires, one to RAW and one to GND, and make sure they are long enough to just come past the far end of the board (the end without the usb connector). Be sure to keep track of which goes where if you use the same color wire for both pins!










This next part may seem silly, but trust me, it matters. Place a small strip of electrical (or other kind, I prefer electrical) tape to the top of the usb connector, this will shield it from the wiring we will be soon placing on top of it, preventing shorts.











Nice! Things are going to start looking like a transponder soon… Now lets solder our first LED onto the board. You’ll want the anode (that’s the bit you bent outward, the smaller wire inside the led bulb side) to get soldered to the top of the resistor, while the cathode (the straight bit) to lay flat against the tape we just placed down. Aim the LED out at a 90deg angle as best you can for best results, and also note that the closer to the usb connector you get, the more crash resistant your transponder will be.












One more time… Now we attach the second LED in a similar fashion. Cathode to cathode and anode to anode, creating a triangle of awesome led power. Be careful here not to break your led’s off of your resistor, that solder point can get a bit fragile until we’re all done.











More silicone wire time! Take a very small amount of wire and solder the cathodes (the straight led pins at the top of the board) to the transistor (the black square thing with three legs). Be sure not to have the exposed parts of the wire touch anything else, as I know things are getting a bit cramped for space by now…












Let there be ligh….. I mean power! Connect the two wires you attached earlier, the ones going to RAW and GND pins, to your balance connector. (I found that tinning the pins on the balance connector made a huge impact here on ease of soldering). The RAW pin wire goes to the right-most pin if your looking at the balance connector from the back, as if it was facing away from you. The GND pin wire goes to the pin two to the left of that. If you have trouble just reference the pictures… A LOT! You don’t want to mix these two wires up, as that’ll fry the board and parts you so painstakingly installed earlier.


(Bonus wiring shot, just to make sure you don’t blow stuff up)



Almost there, only a few more steps… Place a small dab of hot glue on the back of the transponder, and then quickly press the balance connector into place, making sure the two ‘grooved’ bits in the white plastic case are facing upward tward you. If you can’t get it just right, don’t worry, this is just to help the next part get easier.




Glue ALL THE THINGS! (Ok, not really, be sure to leave the balance connector, leds, and usb connection exposed). Protip: I find the black hot glue to be much stronger and much stiffer than standard transparent glue. Don’t be afraid to really glob on the glue on the center of the board, the led’s should still shine through the balance connector, and you realllllly don’t want to have a short when you strap your first battery to this thing.




Now grab yourself a copy of the software and get to flying!

(PS. A detailed write-up of installing/updating the software to follow soon)

7 comments for “Building your own CoreIR transponder

  1. Gert
    October 13, 2016 at 02:21

    Awe-some! Thanks.

  2. BadSide84
    October 25, 2016 at 04:16

    Hello Michael,

    Thank for sharing this idea, i have only one question, i find SMD 10ohm resistor instead of your SMD resistor you think is good?

    Thank you

    • Michael Rickert
      October 25, 2016 at 05:56

      Yup thats totally fine. The resistor can vary a bit without having a negative affect on range. It also doesnt have to be an smd resistor. As long as you dont mind the larger size of the regular resistors you can use those too and they are a bit easier to solder.

  3. Djp
    March 16, 2017 at 06:46

    Hi Michael,
    again let me add to the thanks for doing this, really very handy for our race events.
    I wonder if I can trouble you for your view on a fault I am having on some of these being built working better than others?
    All built as per instructions but some are not illuminating very brightly, when viewed through a camera they can barely be seen, whereas others are nice and bright. The dim ones seem to work but with a range in cm’s rather than meters.
    Any thoughts on what could cause this, the voltages all check out and the components are the same other than different OEM providers of the pro micro.
    Any thoughts would be appreciated.

  4. John
    June 11, 2017 at 17:32

    I am curious what version of the arduino IDE you used? I am using 1.6.8 and notice that the precompiler directives to detect which processor is selected don’t seem to be working. I am using the Arduino Nano with the 328p, but “#define atmega” never gets set. If I just do a #define atmega then the debug Serial.println get turned on, so it appears that the IDE is not quite working right?

    Anyways nice work on the code!

    • Michael Rickert
      June 12, 2017 at 00:11

      I just tested this with version 1.8.3 using the ‘arduino nano’ board and it compiled ok here.

      You can always grab a precompiled version from here:

      Are you grabbing from source or trying to use the 2.0 release?

      • John
        June 12, 2017 at 18:39

        I was grabbing from source, it compiled just fine but for some reason none of the debug output was working, as soon as I added “#define atmega” then the debug output started working. I will have to try with a new version later and see if that works better. No biggie was just curious. The debug helps as I’m trying to write some software in python that will decode the transmission back into the ID, but first writing one to convert the ID into the transmitted data (mostly just for practice lol). Eventually I will then convert that back to C more than likely.

Leave a Reply

Your email address will not be published.

Time limit is exhausted. Please reload CAPTCHA.