PAGE 1 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
ONE DAY OF ROBOTICS
#2 SENSORS [DC MOTORS]
COACH MICHAEL
[USE THIS BOOKLET WITH A PRE-BUILT SciBOT]
ONE DAY OF ROBOTICS #2 continues your journey into the exciting world of mechatronics
where you learn how sensors pick up information from the robots environment, and how
rules contained in the program code determine how the robot reacts to the data from the
sensors. With your newly acquired knowledge you will be able to tackle a challenge to
program the table top robot to navigate a maze
PAGE 2 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
NOTES
www.robotscience.co.za
www.youtube.com/mikerobotscience
www.youtube.com/electronicsafrica
PAGE 3 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
ONE DAY OF ROBOTICS #2
MORE CRASH CODING AND ANOTHER MINI COMPETITION
INTRODUCTION
How much robotics can be taught in a just a few hours? Quite a lot, really.
Using a mini competition as a focus – and having equipped the participants with quality notes that include
sample codeand a pre-built robot – the “One Day of Robotics” experience is guaranteed to inspire young
people by showing them they can quickly acquire competence in this exciting field. Part of the One Day of
Robotics experience includes career awareness.
OUTCOMES
By the end of the day the trainees will know how to connect sensors to a small desktop robot, and write and
upload program code to the PRIMO robot that demonstrates the ability of sensors to interface to the
environment. Once participants have mastered a basic light sensor, they will learn how to use these skills to
control movements of the robot and write an autonomous robot program.
Next, participants will learn about how a robotics challenge works and what a competition maze looks like.
The challenge entails getting a robot to find its way autonomously through the maze using just a line.
The team that completes the challenge arriving first at the FINISH will be deemed winner, alternatively the
team that gets furthest into the maze towards the FINISH when the end of competition whistle blows will be
deemed the winner. Second and third places will be awarded [same rules].
09H00-10H00
Welcome +Safety
Introduction
10H00-12H00
Crash Coding Session
12H30-14H00
The Challenge
[practice session]
14H00-15H30
Mini Competition
15H30-16H30
Prizegiving
www.robotscience.co.za
www.youtube.com/electronicsafrica
PAGE 4 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
NOTES
www.robotscience.co.za
www.youtube.com/mikerobotscience
www.youtube.com/electronicsafrica
PAGE 5 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
ONE DAY OF ROBOTICS #2
CONTENTS #2 SENSORS
PART 1: Photo Transistor as Sensor
PART 2: Light Sensitive Robot
PART 3: Line Follower Explained
PART 4: Line Follow Modules
PART 5: Serial Monitor
PART 6: Maze Challenge
PART 7: Better Line Code
APPENDIX 1: Prototyping Breadboard
PAGE 6 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
NOTES
www.robotscience.co.za
www.youtube.com/mikerobotscience
www.youtube.com/electronicsafrica
PAGE 7 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 1 PHOTO TRANSISTOR USED TO MEASURE LIGHT LEVELS
Sensors are the eyes’ of a robot, they are used to form an interface between the robot and its environment.
The most obvious sensor system that could be used as ‘eyes’ of a robot would be a video camera, but that’s
expensive and requires powerful computers and complicated code.
With the limited time and skills ONE DAY OF ROBOTICS #2 allows us to implement a very effective light sensor.
The phototransistor is a small device that can be implemented on the PRIMO ROBOT to measure light levels. A
phototransistor usually looks just like another small electronic part the light emitting diode [LED]. A typical LED
consists of two legs terminating in a small plastic capsule just like in this drawing of an LED:
ILLUSTRATION OF LED © LASTMINUTEENGINEERS.com
While a phototransistor looks just like an LED, its operation is completely different. Applying 3.10 volts to an
LED makes it glow to produce light while applying voltage to a phototransistor does not.
Phototransistors react light changing their levels of conductivity. When exposed to HIGH levels of light a
phototransitor can become quite conductive and behave like a switch with closed contacts [an ON switch].
When exposed to LOW levels of light a phototransitor can become quite non-conductive and behave like a
switch with open contacts [an OFF switch].
The only difference between a phototransistor and a switch, is switches are either completely ON or
completely OFF whereas phototransistors present a range of values between completely on and completely off.
In the illustration below we can see the electronic symbol for a phototransistor, which shows the pin out
designations and how to connect it to an analogue input pin on the ARDUINO controller on the PRIMO ROBOT.
Notice the 4k7 resistor in the PULL DOWN position below which anchors the input of the ARDUINO to low:
PAGE 8 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
The illustration below shows what an actual implementation of a phototransistor looks like. The pen is pointing
to the side of the phototransistor showing where the flat spot is which designates the COLLECTOR pin:
NOTE: Not all photo transistors are built the same. Some manufacturers have it the other way around!
A microcontroller DIGITAL input pin is only pulled HIGH or LOW using the binary system, but we are going to
use an ANALOGUE input pin on the microcontroller to obtain a value between 0 [low] and 1023 [high].
DISPLAY ANALOGUE READING FROM THE PHOTO TRANSISTOR CIRCUIT IN THE SERIAL MONITOR
// connect the wire from the junction between the PULL UP transistor and PULL DOWN resistor to A0
// open the serial monitor to view the binary value which indicates light intensity
void setup()
{
Serial.begin(9600);
}
void loop()
{
int sensorValue = analogRead(A5);
Serial.println(sensorValue);
delay(1);
}
With the above program when we shine a light on the part we can accurately measure the intensity of light and
display the value in a special screen called the serial monitor like the screenshot below:
PAGE 9 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 2 LIGHT SENSITIVE ROBOT WITH PHOTO TRANSISTOR
We just placed a phototransistor on the breadboard and viewed readings of light levels in the serial monitor. Now we are
going to use code in the LOOP to do something with these values.
Program code in the LOOP containing an IF statement can make the robots motors respond when LIGHT exceed a certain
level. Example code on the next page contains a statement that IF the level of light exceeds a threshold value then the
motors will activate, if the light level is below the threshold the motors are stopped.
This is the actual line of code that takes the light level reading: int sensorValue = analogRead(A0);
This is the actual line of code that compares the light level to a threshold: if (analogRead(A0) > 512);
In ONE DAY OF ROBOTICS #1 we learnt how to program motor control instructions.
THE EMITTER of the PHOTO TRANSISTOR is CONNECTED to ANALOGUE INPUT the COLLECTOR to +5v
If the text code on the next page doesn’t work, check your physical connections are the same as those designated in the
code. You may need to change the physical wiring to match the code, or the code to match the actual wiring. Watch out for
short circuits between parts that are close together. Ask your instructor for help if you get stuck.
PAGE 10 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
The colour code on the 4k7 PULL DOWN resistor is YELLOW, PURPLE, RED, GOLD but you can also use other values of
resistor that are close enough like a 10k or 6k8 or 3k3 resistor.
LIGHT SENSITIVE PHOTO TRANSISTOR DEMO ROBOT: INPUT USING ANALOGUE PIN
// yellow Keyes L298 motor shield + yellow DC motors
// light sensitive robot
int DIRA = 12; // motor As rotation direction depends on whether this pin is HIGH or LOW
int DIRB = 13; // motor B’s rotation direction depends on whether this pin is HIGH or LOW
int ENA = 3; // motor As PWM signal is addressed to enable pin [D3]
int ENB = 11; // motor B’s PWM signal is addressed to the enable pin [D11]
const int threshold = 222; // tried these values: 22, 33
void setup()
{
}
void loop()
{
int leftNear = analogRead(A1);
int rightNear = analogRead(A4);
if (leftNear > threshold)
{
digitalWrite(DIRA, HIGH);
analogWrite(ENA,99);
digitalWrite(DIRB, LOW);
analogWrite(ENB,99);
delay(33);
}
if (rightNear > threshold)
{
digitalWrite(DIRA, LOW);
analogWrite(ENA,99);
digitalWrite(DIRB, HIGH);
analogWrite(ENB, 99);
delay(33);
}
}
www.youtube.com/electronicsafrica
www.robotscience.co.za
PAGE 11 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 3 THE BASICS OF FOLLOWING A LINE
Now its time to see if we can get the robot to navigate a maze autonomously using a line.
To program the robot to follow a line you will need a flat white surface with a black electrical insulation tape line [or a black
surface with a white tape line]. The basic line following system in this workshop will work well indoors, but is a little
susceptible to bright sunlight streaming into your practice area late in the afternoon. For this reason enclosing the sensors
with bits of cardboard to block ambient light can improve reliability.
VIEW FROM OVERHEAD THE ROBOT SHOWING THE POSITION OF THE LINE SENSOR
HOW DOES LINE FOLLOWING WORK?
The robot drives forwards along a line until one of the sensors “sees” that the robot has moved to one side, then the robot
turns slightly and drives the other way until the other sensor ends up over the black line. In the above drawing the line
sensor is over the black line, which means the two middle sensors return a low reading, the other sensors are over white so
they return high readings.
In the drawings below we can see the values the robot sensors return when the robot is exactly overhead the line. The
white dots represent a phototransistor that is returning a value that is above the threshold [in other words HIGH] and the
black dots represent a phototransistor that is returning a value that is below the threshold [in other words LOW].
When the robot moves a little towards the left or right as it follows the line, the readings coming from the sensors change:
When the robot moves a little to the left over the line the robot must move a little towards the right to correct. When the
robot moves a little to the right over the line the robot must turn towards the left to correct. The robot zig-zags along…
We can follow a line using just three photo transistors over the line with the IF and ELSEIF conditional operators. This
system can follow a straight line, even follow curves, but might struggle with really sharp corners.
PAGE 12 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
Slight differences in manufacturing tolerances of the motors of a robot means its unlikely to track straight, and will pull
slightly to one or the other side. As the robot drifts off the line the sensor on that side returns a HIGH value and it adjusts
the motor pulses to alter the direction of the robot to bring it back overhead the line. As the robot drifts off the line,
especially in the corners, the program code is constantly updating the speed of each motor to keep the robot on the line.
SIMPLE LINE FOLLOWER TEST PROGRAM USING FOUR SENSORS
// code is for the yellow Keyes L298 motor shield + yellow DC motors
// white line against dark background
// common robot tested ... working 20 sep 2025
int DIRA = 12; // rotation direction depends on whether this pin is HIGH or LOW
int DIRB = 13; // rotation direction depends on whether this pin is HIGH or LOW
int ENA = 3; // PWM signal is addressed to the enable pin [3]
int ENB = 11; // PWM signal is addressed to the enable pin [11]
const int threshold = 222; // tried these values: 22, 33
void setup()
{
}
void loop()
{
int leftNear = analogRead(A1);
int leftCentre = analogRead(A2);
int rightCentre = analogRead(A3);
int rightNear = analogRead(A4);
if (leftNear < threshold)
{
digitalWrite(DIRA, HIGH);
analogWrite(ENA,0);
digitalWrite(DIRB, LOW);
analogWrite(ENB,99);
delay(33);
}
if (rightNear < threshold)
{
digitalWrite(DIRA, LOW);
analogWrite(ENA,99);
digitalWrite(DIRB, HIGH);
analogWrite(ENB, 0);
delay(33);
}
if ((leftNear > threshold) && (rightNear > threshold) && (leftCentre > threshold) &&(rightCentre > threshold))
{
digitalWrite(DIRA, LOW); // DRIVE INTO BLOCK
analogWrite(ENA,66);
digitalWrite(DIRB, LOW);
analogWrite(ENB,66);
delay(777);
digitalWrite(DIRA, LOW); // STOP ALL MOTORS
analogWrite(ENA,0);
digitalWrite(DIRB, LOW);
analogWrite(ENB, 0);
delay(111);
exit(0);
}
}
PAGE 13 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 4 LINE SENSOR MODULE WITH PHOTOTRANSISTORS
We already programmed the PRIMO ROBOT to respond to bright light shining on a photo transistor
by moving. What happens if we place a row of photo transistors underneath the robot at the front?
If we set up a line of photo transistors on a circuit at the front of the robot, and aim the photo
transistors at a line on the robotics table, then we have a primitive line following system which we
can see in this photograph [each photo transistor is paired up with a bright LED]:
The image below shows us what a typical line module looks like from underneath. Notice how if we
look into the ‘lens’ of the row of photo transistors all we can see is a small square black piece of
silicon, if we look into the row of bright white LEDs we can see what looks like a blob of yellow glue
inside. In the image we can see the LEDs are across the top the photo transistors in the lower line:
Below is a circuit diagram of the line following module showing three LEDS providing illumination for
three phototransistors. Note the current limiting resistors so you can run the LEDs off the robot’s 5v
power without damaging them, and note the 4k7 pull down resistors from the EMITTER and
microcontroller connection to the microcontrollers analogue input pins.
When mounted on the robot the LEDs shouldn’t shine directly into the photo transistors, they must
light only the surface of the maze. The photo transistors are also aimed at the maze surface and read
the amount of light being reflected off the white [or black] maze [or line] surface.
PAGE 14 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
HOW TO WIRE THE SENSOR PHOTO TRANSISTORS AND LEDS
The robot you are setting up may have a line following module equipped with three, or six sensors.
The photos on the previous page show the six sensor line module, in the illustration below a three
sensor line module. Whichever sensors is on your robot, both will work with the example code.
You will need to connect the line module to the robot as per the drawing below. Connecting
everything up is really rather straightforward, as there’s only three wires for the sensors and the
positive and negative power supply lines:
If the robot has a six sensor line module the above drawing still applies, the only difference being
there are six sensor lines instead of three. The photograph below shows a PRIMO ROBOT with a 3D
printed line following module showing how to wire six sensors up to the breadboard:
PAGE 15 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 5 TESTING THE LINE MODULE: VIEW IN THE SERIAL TERMINAL
The serial terminal window [debugging screen] is used to view the status of input pins on the Arduino controller. The
microcontroller on the PRIMO ROBOT is the Arduino ATMEL 328P-PU as the widely used Arduino UNO.
Once the line following module has been connected up to the PRIMO ROBOT it needs to be tested to verify that it has been
wired up correctly, and that it is in fact working correctly. To check the line following robot we use the serial terminal to
check the values are falling within the 0-1023 range of the inbuilt 10 bit analogue-to-digital-converter [ADC] on the Atmel
ATMEGA 328P-PU. In the Arduino line following module we have photo transistors in the PULL UP position. That means
they are connected from the analogue inputs up to 5v (HIGH). In the PULL DOWN position we have resistors between the
analogue inputs and 0v (LOW) or GND. Resistors can be 2k2-10 kilo Ohms but we recommend 4k7 resistors.
If everything is working correctly, we will be able to see varying values similar to those in the screenshot below in the serial
monitor window. The actual values displayed should be in the 100-500 range when the line module is exposed to ambient
light, and somewhere around 500-1000 range if we shine a bright light of our cellphone torch on the line module.
If the values displayed in the serial monitor are static, either high or low, maybe stuck’ on 0 or 1023 then we need to go
back and check the soldering on the line following module is good with a multimeter, also check that you have wired the
module up correctly to the microcontroller or robots controller motherboard as per this diagram.
After we have determined that the sensor array on the line following module is working, the next step is to place the robot
over a black line [on a white maze] alternatively a white line [on a black maze] and move the robot slowly from side to side
to see and understand how the output to the serial terminal changes.
// Click on the magnifying glass icon in the top right corner of the Arduino IDE to open serial monitor screen
void setup()
{
Serial.begin(9600);
}
void loop()
{
int sensorValueA0 = analogRead(A0);
int sensorValueA1 = analogRead(A1);
int sensorValueA2 = analogRead(A2);
Serial.println(sensorValueA0);
Serial.println(sensorValueA1);
Serial.println(sensorValueA2);
delay(10);
}
PAGE 16 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
CODE TO VIEW THE VALUES A SIX SENSOR LINE MODULE IS RETURNING TO THE ROBOT [IN THE DEBUG SCREEN]
// AnalogReadSerial
// Click on the magnifying glass icon in the top right corner of the Arduino IDE to open serial monitor screen
void setup()
{
Serial.begin(9600);
}
void loop()
{
int sensorValueA0 = analogRead(A0);
int sensorValueA1 = analogRead(A1);
int sensorValueA2 = analogRead(A2);
int sensorValueA2 = analogRead(A3);
int sensorValueA2 = analogRead(A4);
int sensorValueA2 = analogRead(A5);
Serial.println(sensorValueA0);
Serial.println(sensorValueA1);
Serial.println(sensorValueA2);
Serial.println(sensorValueA3);
Serial.println(sensorValueA4);
Serial.println(sensorValueA5);
delay(10);
}
To get through the line maze challenge in this booklet you only really need three of the six sensors, but as your ability to
program the PRIMO ROBOT grows along with your confidence you will be able to tackle more advanced maze navigation
challenges like the Advanced Machine Learning Challenge.
www.robotscience.co.za
www.youtube.com/electronicsafrica
www.youtube.com/mikerobotscience
PAGE 17 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS: PART 6 A LINE MAZE CHALLENGE AND RULES
1. The objective of the challenge is to evaluate and confirm newly acquired skills.
2. The challenge consists of a simple maze with a contrasting line to guide the robots.
3. The robots must follow the line autonomously.
4. The robots start at the green line every time.
5. The end is at the red line.
6. The winner of the challenge is the robot that completes the challenge first.
7. Alternately, the winner of the challenge will be the robot that travels furthest along the line.
8. A team consists of one trainee or team of learners but only one robot.
9. The competition will start at the designated time, which will be signalled by the whistle.
10. The competition will end at the designated time, when the whistle blows.
11. During practice teams will bring their robots to the competition table, and without delay place their
robot on the table and trigger the execution of the program once.
12. If a team wishes to re-test their robot [without going to their base to change and re-upload their
program] that team must go to the back of the line of teams waiting to test robots at the maze.
13. The objective of Rule 8 is to ensure all teams can access the maze without undue delay.
14. During the competition the teams will bring their robots to the competition table, and without delay
place their robot on the table and trigger the execution of the program.
15. Each team will get one start, if things go wrong and that team decides not to go back to their base to
change their code that team must go to the back of the line of teams waiting at the maze.
PAGE 18 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
PAGE 19 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: PART 7 BETTER LINE FOLLOWER USING MORE SENSORS
The basic line follower robot drives forward along a line, one sensor each side of the line. When one
of the sensors picks up a change in value this indicates the robot has drifted to one side. The robot
reacts by turning slightly and continuing to drive forward until the other sensors status changes, and
the robot turns slightly the other way. This type of program is quite simple to write and easy get
working, but will tend to zig-zag which is not efficient.
Now add program code so the robot drives straight when perfectly overhead the line, only turning
slightly to correct if the robot drifts to the left or right, which should be more efficient:
// code is for the yellow Keyes L298 motor shield
// yellow DC motors
// a line following robot using four sensors
// common robot tested ... working 20 sep 2025
int DIRA = 12; // rotation direction depends on whether this pin is HIGH or LOW
int DIRB = 13; // rotation direction depends on whether this pin is HIGH or LOW
int ENA = 3; // PWM signal is addressed to the enable pin [3]
int ENB = 11; // PWM signal is addressed to the enable pin [11]
const int threshold = 222; // tried these values: 22, 33
void setup()
{
}
void loop()
{
int leftNear = analogRead(A1);
int leftCentre = analogRead(A2);
int rightCentre = analogRead(A3);
int rightNear = analogRead(A4);
if ((leftCentre > threshold) && (rightCentre > threshold))
{
digitalWrite(DIRA, HIGH);
analogWrite(ENA,99);
digitalWrite(DIRB, LOW);
analogWrite(ENB,99);
delay(11);
}
if (leftNear < threshold)
{
digitalWrite(DIRA, HIGH);
analogWrite(ENA,0);
digitalWrite(DIRB, LOW);
analogWrite(ENB,99);
delay(33);
}
PAGE 20 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
if (rightNear < threshold)
{
digitalWrite(DIRA, LOW);
analogWrite(ENA,99);
digitalWrite(DIRB, HIGH);
analogWrite(ENB, 0);
delay(33);
}
if ((leftNear > threshold) && (rightNear > threshold) && (leftCentre > threshold) &&(rightCentre > threshold))
{
digitalWrite(DIRA, LOW); // DRIVE INTO BLOCK
analogWrite(ENA,66);
digitalWrite(DIRB, LOW);
analogWrite(ENB,66);
delay(777);
digitalWrite(DIRA, LOW); // STOP ALL MOTORS
analogWrite(ENA,0);
digitalWrite(DIRB, LOW);
analogWrite(ENB, 0);
delay(111);
exit(0);
}
}
PAGE 21 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
NOTES
www.robotscience.co.za
www.youtube.com/mikerobotscience
www.youtube.com/electronicsafrica
PAGE 22 | 1DAY ROBOTICS #2: SENSORS ©2022 M I C H A E L E T T E R S H A N K
oneDayRobotics#2-SENSORS-DCM-v1.0
1DAY OF ROBOTICS #2: APPENDIX 1 PRIMO ROBOT PROTOTYPING BREADBOARD
On the top of the PRIMO robot there is a plastic rectangular shape, with lots of holes arranged in rows and
columns like the image. Electronics engineers call this prototyping area the ‘breadboard’ and that is where you
can build circuits to test sensors, adding new functionality and features to your robot. The breadboard is
solderless and thats useful because you can connect electronic parts without making permanent soldered
joints so the parts that can be re-used.
A MINI PROTOTYPING BREADBOARD [the right-hand drawing of the underside shows the
connections]
Notice, from the image above, there are rows from left to right and columns which are vertical. When you plug
parts into the holes in the same row, they connect because there is a metal strip behind the holes that the
wires slot into when you stick the parts into the breadboard.
On the breadboard the rows on the left are NOT connected to the rows on the right, because there is a gap in
the middle which is indicated by the channel that runs from top to bottom in the middle between the
horizontal rows.
In the illustration, the two resistors towards the top connect to each other because there is a jumper wire
between the row on the left and the row on the right. The two resistors on the left of the breadboard are
connected because the bottom lead from the top resistor is in the same row as the top lead of the bottom
resistor. The two resistors on the right side of the breadboard are not connected – look carefully and notice
their leads are plugged into different rows which is a common mistake folks make … when not paying close
attention to where the parts are placed exactly.