TK63DIGITALbeginner

Infrared Transmitter

A bare infrared LED for line-of-sight signalling and the sending half of a break-beam pair — no carrier, no protocol, just light you cannot see.

Comes in this kit — not sold separately

Specifications

TypeInfrared emitting LED
WavelengthAbout 940 nm
ControlDigital on/off, or PWM for a carrier
Supply voltage3.3 V or 5 V

What it is

An IR LED with its resistor. Set the pin high and it emits; the light is at about 940 nm, which is past what your eye can see.

Unlike TK16 there is no assumption that you are talking to a remote-control receiver. Drive it steadily and it is one half of a break-beam: put TK64 opposite it and anything crossing between them is detected. Drive it at 38 kHz and it can talk to TK15.

The invisibility is the practical problem. A dead IR LED and a working one look identical, so the first debugging step is always a phone camera — most sensors see 940 nm as a faint purple glow, which is how you confirm it is emitting at all.

Infrared Transmitter — front
Front
Infrared Transmitter — back
Back
Infrared Transmitter — side
Side

Pinout

  • GND (negative): Like the negative terminal (-) of a battery, connect to the control board's GND
  • VCC (positive): Like the positive terminal (+) of a battery, connect to the control board's 3.3V or 5V (this module supports both 3.3V and 5V)
  • NC (no connection): No actual circuit connection, included for unified interface, can be left unconnected
  • SIGNAL (signal input): Pin to control infrared transmission, connect to the control board's digital pin (e.g. Arduino D3 or Pico GPIO 0)
    • Emits infrared light when HIGH (HIGH/1)
    • Does not emit when LOW (LOW/0)

Wiring

Infrared Transmitter wiring

  1. GND → Control board GND
  2. VCC → Control board 3.3V or 5V
  3. SIGNAL → Control board digital pin (use the pin defined in your program)

Example

// Pin number: change this to match your wiring
#define IR_TX_PIN 3  // Arduino digital pin connected to SIGNAL (e.g. D3, recommended to use PWM-capable pin)

void setup() {
  // Start serial for debugging (9600 baud)
  Serial.begin(9600);
  
  Serial.println("Infrared transmitter program started");
  Serial.println("Transmitting infrared signal...");
}

void loop() {
  // Transmit infrared signal (38kHz modulation)
  // Note: Arduino Uno can use tone() function to generate 38kHz frequency
  // But IRremote library is more recommended for infrared communication
  
  // Simple example: rapid switching to simulate transmission (IRremote library recommended for actual applications)
  for (int i = 0; i < 100; i++) {
    digitalWrite(IR_TX_PIN, HIGH);
    delayMicroseconds(13);  // 38kHz period is about 26 microseconds, HIGH for 13 microseconds
    digitalWrite(IR_TX_PIN, LOW);
    delayMicroseconds(13);
  }
  
  Serial.println("Infrared signal transmitted");
  delay(1000);  // Wait 1 second before transmitting again
}
Infrared Transmitter running on an Arduino Uno

When it doesn’t work

I cannot tell whether it is on.
Point a phone camera at it. Most cameras show IR as pale purple; a few newer phones filter it out, in which case try an older one.
The range is short.
IR falls off fast and the on-board resistor is sized for safety, not distance. Align it precisely, or drive it harder with an external transistor.
It does not trigger my TV.
A steady LED is not a remote signal. You need the 38 kHz carrier and a protocol — that is TK16 plus the IR library.

Edit this page — content/modules/ir-transmitter.mdx

Community

Questions about this product

See what other owners have asked, and read their solutions.

Ask a question ↗

Infrared Transmitter

Loading discussions…

Discuss this article

Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.

Browse Modules and blocks on the forum