Wiring circuits, using electronic components and writing software isn't easy -- even professionals spend a lot of time "debugging" their hardware and software designs. So, if you're having issues, don't feel bad, it's a typical part of an programming and electronics work you'll ever do. Below, we offer some suggestions on how to work through the issues you might be having with your projects. If you're having issues that aren't addressed in any of the sections below, feel free to visit our support page at: http://www.raspberrystem.com/support.
If your circuit isn't working, there are lots of
potential issues you could be encountering. When this
happens, the best approach is one that tests each part of the circuit
piece-by-piece until the problem is identified and fixed.
Here are some suggestions on how to do this in an efficient
fashion:
1. Verify that the circuit is being powered and grounded
correctly
The first thing you'll want to verify is that your circuit is receiving power and ground. Most likely, you're providing power and ground to the breadboard from the lid connector, and you're using the red and blue power/ground strips to provide power and ground to the rest of the breadboard. Assuming this is the case, testing to ensure power and ground are working should be pretty simple.
Take a working LED, and place the longer lead of the LED somewhere along the power strip. Next, take the shorter lead of the LED and place it somewhere along the ground strip. You've now created a simple circuit using power, ground and an LED -- if the power and ground are working correctly, and if the LED is placed in this fashion, the LED should illuminate. Here is an example:
INSERT FRITZING OF LED ACROSS POWER/GROUND
Note: Don't leave the LED like that for very long, as without a resistor, the LED can be damaged.
2. Verify that power and ground are not reversed
By convention, the red power strip is typically used for power and the blue power strip is typically used for ground. Like this:
INSERT FRITZING OF TYPICAL POWER/GROUND
But, there is nothing stopping you from (purposefully or accidentally) wiring it backwards, with red being used for ground and blue being used for power. Like this:
INSERT FRITZING OF BACKWARDS POWER/GROUND
The previous wiring would still work, but would require that you provide power to your circuit from the blue rail and ground from the red rail (opposite of typical convention).
If your circuit isn't working, verify that your circuit is getting power from the powered rail and ground from the grounded rail, and that you haven't accidentally switched power and ground coming onto your breadboard.
3. Check that each component is being wired and programmed correctly.
Once you are confident that your circuit is getting working power and ground, the next step is to verify that each of your components is wired correctly and functioning properly. We have included sections below to troubleshoot each of the components provided with the RaspberrySTEM kit. Here are links to troubleshoot each of the individual components:
- LED
- Button
- Accelerometer
- LED Matrix
4. Test continuity between various points in the circuit
If you've verified power and ground are working correctly, and you've verified that each of your components are wire correctly and functioning correctly, but your circuit still isn't working, it time to do some investigation into whether the wiring between components was done correctly.
5. Verify your code is working as expected
LEDs are relatively simple devices, but there are still some
challenges you'll face when using them in your circuits.
Luckily, fixing LED issues should be pretty quick and easy
once you get used to working with them. Here are some tips on
how to solve issues with LEDs:
1. Verify that the LED is working properly
2. Verify that the LED is oriented correctly
3. If attached to a GPIO, verify that the LED is wired
correctly
4. If attached to a GPIO, verify that the code reflects the
correct GPIO being used
1. Verify that the button is oriented correctly on the breadboard
2. Ensure the button is fully inserted into the breadboard
3. If attached to a GPIO, verify that the button is wired correctly
4. If attached to a GPIO, verify that the code reflects the correct GPIO being used
5. If still not working, you might want to verify that the button works correctly (unlikely issue)
1. If you see or smell smoke, verify that the accelerometer is oriented correctly
2. Ensure that the accelerometer is wired correctly
3. Test the accelerometer with some simple code
1. Verify that your display is oriented correctly on the circuit board
2. Ensure that the LED Matrix is wired correctly
3. Test the LED Matrix with some simple code