The Light Radio

by nposner in Circuits > Gadgets

453 Views, 3 Favorites, 0 Comments

The Light Radio

Light Radio Keypad Demo
LightRadioImage_02.jpg
LightRadioImage_03.jpg
LightRadioImage_01.jpg

The Light Radio is a device which helps to visualize concepts related to how radio communication works.

Radio systems are comprised of two primary components, the Transmitter and the Receiver. Let's think about this in the context of an FM broadcast radio station. On the transmitter side, there is someone who talks into a microphone. This is known as the INPUT. Their voice is then ENCODED into radio waves through frequency modulation (FM). When encoding a specific radio frequency, the radio station, is chosen to modulate the input around. This frequency is called the carrier frequency. By using different carrier frequencies that are different enough, many different radio stations can transmit at the same time without interference. The now encoded voice is TRANSMITTED by sending out the modulated radio signal from a transmission tower.

To listen to the signal, the first step for the receiver is to tune their radio to the correct frequency for the station that they want to listen to so that they can RECEIVE it using its antenna (e.g., FM 99.7). The station frequency is the carrier frequency that is used by the transmitter to send the signal. The radio then DECODES the signal removing the carrier frequency and extracting the original audio signal. This audio signal is then DISPLAYED to the be person listening to the radio as the voice coming out of the radio speakers.

These six steps – Input, Encode, Transmit, Receive, Decode, and Display–are the core elements of a radio transmission. Tuning is also an important part that happens between the transmission and receiving if multiple radio signals are present at the same time. 

The Light Radio is comprised of 3 main parts: the transmitter, the receiver, and the filter.

Let's Look at the Light Radio’s Transmitter. Instead of sending voice, the Light Radio sends an image. Using the keypad, a person turns on and off pixels of the image. This is the INPUT. The image is then ENCODED into a sequence of blinking lights. Just how we can have different frequencies for radio stations, here we can have different frequencies of light for our light radio stations. We see different frequencies of light as different colors. The light radio has two stations, Red (650 nm) and Blue (400-450 nm). These colors are used because their frequencies are far apart. The light radio can now TRANSMIT the image by flashing a colored LED.

To tune the light radio to the station that we want to see, we need to filter out the frequency of that station. To do this, a pair of 3D glasses are used because they have both red and blue filters built in. If we want to tune to the blue station, we use the blue filter as it only lets blue light through, blocking out the red, so that the light radio can receive the blue station clearly.

Once we have selected the filter we want and put it between the LED and the photo transistor, which is like the antenna of our Light Radio, the Light Radio can RECEIVE the Station. The flashes of the LED are then DECODED. The image that was drawn on the transmitter keypad is then DISPLAYED on the keypad of the receiver. If we wanted to see the image that is being transmitted on the red station, simply put the red filter in between the LED and the photo transistor.




"This material is based upon work supported by the National Science Foundation under Grant No. 2053160. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.”

Supplies

NeoTrellis4by4_4352_01.jpeg
TinyBreadboard_65.jpeg
PhotoTransistor_2831.jpeg
RGBLED_159.jpeg
Resistors_2784.jpeg
USBCable_2185.jpeg
3DGlasses.jpg
BatteryPack.jpg
LRI0001_AllTools_174A0957.JPG
LRI0002_Stripper_174A0960.JPG
LRI0003_SolderingIron_174A0958.JPG
LRI0004_ScrewDriver_174A0961.JPG
LRI0005_Tape_174A0962.JPG

Supplies

The majority of the components for the Light Radio can be purchased from Adafruit. Quantities are listed first. 

2x | Adafruit 4x4 NeoTrellis Feather M4 Kit Pack

2x | Tiny breadboard

1x* | Photo Transistor Light Sensor

1x* | Diffused RGB (tri-color) LED - Common Anode

1x | Through-Hole Resistors - 10K ohm 5% 1/4W - Pack of 25

2x | USB A/Micro Cable – 2m

1x | Red/Blue 3D glasses

1x | Duel USB Battery pack (Optional)

*For some of the small parts it does not hurt to get a few extra 

Tools

Tools for cutting and stripping wire

Soldering iron and solder

Small Philips head screwdriver

Tape (optional)

Assemble the Keypad

LRI0060_0_174A1274.JPG

The first step is to assemble the two keypads that will become the Transmitter and the Receiver. These instructions are based the set found here but differ so please use the following instructions here.  

Prep Work: Remove the Backing

LRI0006_PartsUnPeeledMarked_174A0974Marked.jpg
LRI0007_Peeling1_174A0985.JPG
LRI0007_Peeling2_174A0989.JPG
LRI0006_PartsPeeled_174A1005.JPG

Remove the backing paper off of the laser cut case parts. You will not need one of the side panels

Prep Work: Cut the Stemma Wire

LRI0008_wireCut1_174A1093.JPG
LRI0008_wireCut2_174A1031.JPG

Cut the STEMMA wire included in the kit in half.

Prep Work: Strip & Tin

LRI0009_strippingWire_174A1096.JPG
LRI0010_tinning1_174A1061.JPG
LRI0010_tinning2_174A1063.JPG

Strip and tin the cut end of both ends of all the wires

Soldering the Keypad Wires

LRI0011_174A1068.JPG
LRI0012_wireinsert1_174A1073.JPG
LRI0012_wireinsert2_174A1070.JPG
LRI0012_wireinsert3_174A1075.JPG
LRI0013_soldering1_174A1078.JPG
LRI0013_soldering2_.JPG
LRI0013_soldering3_174A1080.JPG
LRI0013_soldering4_174A1081.JPG
LRI0014_174A1082.JPG

All the wires you will be soldering will need to approach from the bottom of the board and soldered from the top side.

Start with the half of the wire with the STEMMA connector attached. Solder the wire to the Feather M4 in the following order. You will do this for both Feather M4 boards.

Black (GND) - GND

Red (VIN) - USB

White (SDA) - SDA

Green (SCL) - SCL


Soldering the Transmitter and Receiver Wires

LRI0033_174A1153.JPG

Up until this point the same wiring has been attached to both Feather M4 boards. The next steps will differentiate one board to become the transmitter and one to become the receiver.

Soldering the Transmitter

LRI0016_174A1104.jpg
LRI0017_redinsert1_174A1107.JPG
LRI0017_redInsert2_174A1108.JPG
LRI0018_174A1109.JPG
LRI0019_174A1110.JPG
LRI0020_174A1111.JPG
LRI0021_174A1112.JPG
LRI0022_174A1113.JPG
LRI0023_174A1114.JPG
LRI0024_174A1120.JPG
LRI0015_174A1102.JPG

Select one of the Feather M4 boards, this will become the Transmitter

To connect to the transmitting LED we will use the other half of the STEMMA wire with the header pins.

These wires need to be attached to specific pins on the board in the same manner as the wires for the STEMMA connector, from bottom to top and soldered on the top.

  1. Attach the red wire to the 3V rail on the proto area of the board
  2. Attach the black wire to pin 12
  3. Attach the white wire to pin 11
  4. Attach the green wire to pin 10


Soldering the Reciever

LRI0025_174A1126.jpg
LRI0026_blackInsert1_174A1127.JPG
LRI0027_174A1129.JPG
LRI0028_174A1131.JPG
LRI0029_174A1132.JPG
LRI0030_174A1133.JPG
LRI0031_174A1138.JPG

Select the other Feather M4, this board will be the receiver

To connect to the receiving photo transistor we will use the other half of the STEMMA wire with the header pins.  You will need the red, black and green wires

These wires need to be attached to specific pins on the board in the same manner as the wires for the STEMMA connector, from bottom to top and soldered on the top.

  1. Attach the black wire to the GND rail on the proto area of the board
  2. Attach the green wire to pin A2
  3. Attach the red wire to 3V

Case Assembly

LRI0034_PartsLabled_174A0974.jpg

For the assembly of the case, reference this image for labeling of the parts.

Bottom Assembly

LRI0035_174A1175.JPG
LRI0036_174A1182.JPG
LRI0037_174A1189.JPG
LRI0038_174A1192.JPG
LRI0039_BoardNoNuts_174A1197.JPG
LRI0039_BoardWithNuts_174A1198.JPG
LRI0040_174A1169.JPG
LRI0041_174A1199.JPG
LRI0041_SideView_174A1202.JPG
  1. Collect the M2.5 hardware (four smaller black screws, four black nuts, and four white standoffs)
  2. Find the bottom plate A, The board will be installed with the top of the board facing into the plate so that the battery connector fits into the plate and the reset button is accessible
  3. Insert the four M2.5 screws through the base from the bottom and lay it on the table, if you need to tape the screw heads so that they stay in
  4. Add the white standoffs to the screws
  5. Place the board bottom side up on the screws and secure it with the nuts
  6. Collect the four black threaded standoffs and four of the eight M3 Screws
  7. Attach the standoffs to the bottom plate with screws coming through from the bottom

Inner Side Assembly

LRI0042_SidesOnly_174A1205.JPG
LRI0042_174A1206.JPG

See the labeled Image for reference of which side piece is which. The pieces themselves are not labeled so pay close attention to the shape of each piece. The Transmitter and Receiver are assembled differently so make sure you do so correctly. The case is double walled in order to support the keypad. Both the transmitter and receiver will have the same inner walls but different outer walls.

Find the two side pieces (B & C) and fit them into place on the bottom


Inner Front and Back Assembly

LRI0043_PanelsOnly_174A1207.JPG
LRI0043_Reciever_174A1211.JPG
LRI0043_Transmitter_174A1209.JPG
LRI0044_174A1210.JPG

Find the front and back inner walls (D & E) and slot them into place. The one with the large cutout (D) fits over the Feather.


Outer Side Assembly: Transmitter

LRI0045_1_174A1213.JPG
LRI0045_2_174A1214.JPG

For the TRANSMITTER ONLY Find the outer side wall (F) This side wall is going fit on the side closest to the Feather. In order to install it you will need to slightly lift the inner walls to slot everything in correctly.



LRI0046_174A1227.JPG
LRI0046_RecieverAllParts_174A1223.JPG

For the RECEIVER ONLY Find the outer side wall (F) This side wall is going fit on the side furthest from the Feather. In order to install it you will need to slightly lift the inner walls to slot everything in correctly.



Outer Front and Back Assembly

LRI0047_1_174A1215.JPG
LRI0047_2_174A1216.JPG

Find the front and back outer walls (H & I) and fit them into place in a similar manner to the previous side wall.



Connect the KeypadPCB

LRI0048_174A1218.JPG
LRI0048_Reciever_174A1228.JPG

Plug the STEMMA connector into the Socket on the Keypad PCB


Transmitter Wire Routing

LRI0049_174A1231.JPG

For the TRANSMITTER ONLY take the four wires with pins on them and hang them over the edge of the inner wall, furthest from the Feather, in the groove on that wall. This should be on the side that does not have a side panel


Receiver Wire Routing

LRI0050_174A1234.JPG

For the RECEIVER ONLY take the three wires with pins on them and hang them over the edge of the inner wall, closest to the Feather, in the groove on that wall. This should be on the side that does not have a side panel


Fitting the Keypad

LRI0051_Reciever_174A1237.JPG
LRI0051_Transmitter_174A1246.JPG
LRI0052_174A1236.JPG
LRI0053_174A1248.JPG
  1. Position the housing so that the USB Port is at the top and carefully fit the Keypad PCB into place. Be careful fitting the wires into the case and that the wires from steps 1 or 2 are still hanging out the side. The numbers on the Keypad PCB should appear upside-down with respect to the case, I.e. “16” will be at the top left
  2. Carefully fit the Keypad PCB onto the inner walls so that it sits flush. Be careful about making sure the wires fit into the case. You might need to use a screwdriver to stuff them back in. Again, make sure that the wires with header pins that are hanging out of the side are sitting the in grove in the inner wall.


Install the Button Pad

LRI0055_174A1250.JPG

Install the button pad over the keypad PCB. The button pad has protrusions on the bottom which line up with holes on the PCB. The button pad should sit flush on the Keypad PCB



Fitting the Top Pieces

LRI0056_174A1251.JPG
LRI0057_174A1252.JPG
LRI0058_174A1256.JPG
LRI0059_174A1259.JPG
LRI0060_1_174A1262.JPG
LRI0060_2_174A1264.JPG
  1. Fit the top piece (J) over the Button Pad making sure that the buttons do not catch and that all the tabs and slots on the side walls fit in
  2. Fit the black layer (K) on top of the Button pad
  3. Use the 4 remaining M3 Screws to hold the top in place. Getting one screw in will help hold everything together while you do the others.

Add the Rubber Feet

LRI0061_174A1269.JPG

Add the 4 rubber pads to the bottom just inside the screws so that the keypad has some feet and does not move around.

Tranmitter Breadboard

LRI0065_174A1309.JPG
LRI0062_AllParts_174A1276.JPG

We will now be assembling the breadboard for the transmitter.

First you will need to find the transmitter keypad, the one with 4 wires coming out of it.

You will also need a mini breadboard and the RGB Led

Placing the Transmit LED

LRI0062_174A1283.jpg
LRI0063_174A1286.jpg

Fit the 4 legs of the RGB LED into the first bread board. Pay special attention to where you put the long leg (3V). See the Image for LED Pin Numbering

Wiring the Transmit LED

LRI0064_1_174A1287.JPG
LRI0064_2_174A1288.JPG
LRI0064_3_174A1289.JPG
LRI0064_4_174A1290.JPG

Plug the Black wire into the breadboard to connect it to Pin 1 on the LED. This is going to be the same column of 5 on the breadboard

Plug the Red wire into the breadboard to connect it to Pin 2 (the long leg) on the LED

Plug the White wire into the breadboard to connect it to Pin 3 on the LED

Plug the Green wire into the breadboard to connect it to Pin 4 on the LED

Bend the Transmit LED

LRI0064_5_174A1291.JPG

Bend the LED over so that it is at 90 degrees

Receiver Breadboard

LRI0071_174A1307.JPG
LRI0066_AllParts_174A1292.JPG

We will now be assembling the breadboard for the receiver.

First you will need to find the receiver keypad, the one with 3 wires coming out of it.

You will also need a mini breadboard, resistor, and the phototransistor.

Placing the Phototransistor

LRI0066_174A1294.JPG
LRI0067_1_174A1296.JPG
LRI0067_2_174A1298.JPG

Fit the photo transistor into the second breadboard. Pay special attention to where you put the long Leg.

Placing the Resistor

LRI0069_174A1300.JPG

Place a resistor into the breadboard with one leg of the resistor connected to the long leg of the photo transistor and one leg in an open spot on the breadboard

Wiring the Phototransistor

LRI0070_1_174A1301.JPG
LRI0070_2_174A1302.JPG
LRI0070_3_174A1303.JPG

Plug the Red wire into the breadboard to connect it to the short leg of the photo transistor

Plug the Green wire into the breadboard to connect it to the long leg of the photo transistor and the resistor

Plug the Black wire into the breadboard to connect it to the other end of the resistor

Bend the Phototransistor

LRI0070_4_174A1304.JPG

Bend the Photo Transistor over so that it is at 90 degrees

Upload the Code

LRI0072_174A1313.JPG

The encoding and decoding Code is based on https://github.com/SaadOjo/DIY_Li-Fi

The keypad code is based on https://learn.adafruit.com/adafruit-neotrellis/arduino-code

Upload the LightRadio_Reciever.ino to the Feather M4 in the Receiver Keypad

Upload the LightRadio_Transmitter.ino to the Feather M4 in the Transmitter Keypad

The Keypads do not need to be connected to a computer to work but they should be connected to power. The USB battery pack is a great way to power the system and allow it to be portable

Position the Breadboards

LRI0073_174A1316.JPG

Position the breadboards so that the LED of the transmitter is facing the photo transistor with about an inch between them.

Power Up the Keypads

LRI0074_174A1317.JPG
LRI0075_174A1320.JPG
LRI0076_174A1324.JPG
LRI0077_174A1325.JPG

Plug in the USB cords for the Transmitter and the Receiver

Plug the USB cords into a power source

Both Keypads should play a rainbow pattern

The LED on the transmitter should start flashing

Drawing an Image on the Transmitter

LRI0078_174A1329.JPG
LRI0079_174A1330.JPG
LRI0080_174A1331.JPG
LRI0081_174A1334.JPG

On the transmitter keypad the opposing corners should begin dimly lit in red and blue

Pressing on one of these corners will select the “Pen Color” for the input, that button will get brighter

Pressing a key will turn it the color of the “Pen Color”. Pressing it again will remove that color from the key

Where Blue and Red overlap the key will turn purple.

You can think of each of these colors as different Light Radio Stations

Receiving the Signal

LRI0082_174A1336.JPG

Nothing will be happening on the receiver at this

Tuning the Light Radio

LRI0083_174A1337.JPG
LRI0084_174A1338.JPG

Inserting the Blue side of the 3D glasses between the LED and the photo resistor will “Tune” the Receiver to the Blue Station. The Receiver will Light up in white with the same image as what is in blue on the Transmitter

Inserting the Red side of the 3D glasses between the LED and the photo resistor will “Tune” the Receiver to the Red Station. The Receiver will Light up in white with the same image as what is in red on the Transmitter

Troubleshooting

The receiver is not showing anything

           Try moving the transmitter LED very close (almost touching) to the receiver phototransistor

           Load the AnalogSerialRead example onto the receiver (Change the pin to A2)

                       Look at the value that you are getting on the serial monitor

                       If you are receiving you should see a “high” number and some “low” numbers

                       Open the Reciever Code

                       Change line 34 “THERSHOLD” so that the number is above your “low” number but below your “High number”