Point to Point Communication
Team Lead
View CAD model →
Signal & Protocol
The system transmits numeric messages via 38kHz modulated infrared using the NEC protocol. We wrote custom firmware that converts each keypad press to a hex value, transmits it through the IR emitter, and decodes it on the receiver side to display on a 16x2 LCD. A red LED on the transmitter confirms each successful input and flashes when an out of bounds angle is entered.
I initially prototyped with a visible laser, but ambient light caused inconsistent detection at the receiver. Switching to IR with a matched 780-1050nm photodiode eliminated the issue entirely. The receiver code auto clears the LCD after 4 seconds of inactivity, so the system resets itself without requiring manual intervention between messages. I also added a 600ms delay threshold; if the gap between key presses exceeds that, the LCD inserts a space, letting users send multiple numbers as separate values.
Transmitter
The transmitter houses an Arduino Uno, NEMA 17 stepper motor, L298N motor driver, 12-button keypad, and IR emitter. Rather than rotating the entire enclosure, I mounted only the IR emitter on a rotating platform driven by the stepper motor. This reduces the load on the motor and allows faster repositioning across the 135° rotation range.
I repurposed the * and # keys on the keypad for control functions: * to enter a rotation angle, # to send the numeric message. The user dials in a direction, confirms it, then types the message, for a simple two step workflow that keeps the interface intuitive.
Housing Design
I 3D printed both housings in PETG for durability. The first iteration used identical 84mm × 120mm rectangular enclosures for both units, but once I integrated the rotating emitter, the transmitter needed a redesign. Since the IR LED sweeps in an arc, I added a curved front face that follows the emitter's path, keeping it fully enclosed throughout its rotation.
An intermediate cylindrical design worked mechanically but was much larger than necessary. I conformed the final housing shape to the internal components; a rectangular prism for the electronics with a semicylindrical front for the rotating emitter. The receiver stayed simple, as a rectangular box with cutouts for the IR sensor and LCD.
Performance
Testing confirmed 100% message accuracy at distances up to 16 meters, with reliability dropping off beyond that. Angular tolerance was approximately 10°, providing reasonable margin for imprecise aiming. Total system power draw is approximately 1W during typical operation, calculated assuming 60% idle time, 30% IR transmission duty, and 10% motor duty. The NEMA 17 at 350mA per phase accounts for most of the consumption, but it only runs during repositioning.