Maker Pro

How to Transfer UART Data With Laser Diodes

March 21, 2018 by Robin Mitchell

This simple power sequencer is ideal for large voltage and current switching for CNCs.

Data is typically sent across distances with cable, but this may not always be an option. Sometimes, neither is the use of radio signals. In this project, we will construct a laser data transmitter that uses pulses of laser light to send UART signals at a distance.

Laser Data Transceiver Schematic



How Does It Work?

The transmitter circuit consists of input protection, a buffer, and a laser diode driver. The UART signal (or any data signal), is fed into the first inverting buffer (U1A), and the input to the whole circuit is protected by R2 and D1. R2 is a 220Ω resistor that limits the input current while D1 is a Zener diode that prevents the input voltage from exceeding 5.1V. The capacitor C2 is included for EMC control, as sharp edges here can potentially interfere with nearby electronics. While this is not entirely important, it is good practice to always consider EMC (electromagnetic compatibility). This buffer is also a Schmitt trigger, which prevents noisy signals from causing glitches in the laser beam. The invert U1A is again inverted to preserve the polarity of the UART signal, and this buffered signal is used to control a laser diode with Q1.

The receiver circuit consists of a voltage averager, a Schmitt trigger, and an output buffer. The light that is transmitted from the transmitter is shown on the LDR R6, which varies the resistance. This variance of resistance results in a variable voltage produced across R6, which is fed into U1A through a 100K resistor. This varying voltage is averaged with a voltage divider (R4 and R8) to produce a voltage that varies about 2.5V. The adjusted signal from U1A is fed into a Schmitt trigger U1B, which helps to convert the small changes from the LDR into rail to rail swings (5V and 0V). The last stage takes these swings and buffers the signal to improve output impedance.

Both circuits use a 7805-linear regulator for power control. The diodes that connect the 5V rail to the input voltage rail are to protect the 7805 from current spikes, while the Schottky diodes provide reverse polarity protection.


Like most projects I design, these two circuits are made on custom PCBs built on a CNC machine. The attached project files include all the needed G-code to produce your own PCB, but other construction methods can be used, such as stripboard, matrix board, and breadboard.

Transmitter Circuit 

Receiver circuit

To get the transmitter/receiver working, you may have to shield the LDR from ambient light, as this can severely impact the signal. Depending on the LDR, the maximum baud rate can be less than 100 baud, so to improve the circuit, the LDR can be replaced with a photodiode circuit.

KiCad Files for the Laser Transmitter and Receiver


Robin Mitchell

Graduated from the University Of Warwick in Electronics with a BEng 2:1 and currently runs MitchElectronics.

Related Content


You May Also Like