Cleaning Up A Schematic

Hello All,

I hope everyone is having a great day. I have no formal education in electronics but I have a schematic that I designed is EASYEDA. It's functional but to me it looks like a mess. I was wondering if I could get some pointers on how to clean it up to make it more readable. As I change the versions and add new features it gets to be more of a mess. I've seen some pretty complex schematics that seem to be pretty neat and I'd like mine to look the same. I felt comfortable posting this here because the schematic revolves around an Arduino Nano. Thanks to everyone in advance.
Laser Tripwire V. 1.1.1.d.pdf (182.7 KB)

The basic rules for a schematic are power at or towards the top, ground at or towards the bottom, signals travel from left to right. Components should be well spaced, have standard symbols and orientations, and connections should have as few jogs as possible. All of those rules are violated by the schematic posted above.

Take a look at schematics by professionals and study how they apply these rules. Hobby suppliers like Adafruit, Sparkfun and Pololu publish high quality, easy to read schematics of their original products.

Sparkfun's tutorial is worth studying: How to Read a Schematic - SparkFun Learn

That was exactly what I was looking for. Thanks very much.

Tips:

  1. We put the parts with one leg to GND. From the Arduino pin to a resistor, then to the part, then to GND. Your LDR and 5mm led have it the other way around.
  2. What kind of buzzer is it ? You probably need a 330Ω or 220Ω resistor to it. That will make it less loud :cry:
  3. A resistor of 330Ω for the led ? Should it be that bright ? Start with 1kΩ.
  4. You should not drive a 3V relay with a pin from an Arduino. You need a 5V relay and you need a transistor (or other driver). A cheap relay of about 40 cents might not be reliable. If it says that it can switch 10A, then it can perhaps switch 0.5A (if you are lucky).
  5. Do you power it with a normal 9V battery ? It might last a few minutes to a few hours, but not much more.
  6. The RGB led needs resistors.
  7. The transistor Q1 does not work like that. A transistor is not a switch that you can turn on and off for any voltage level at the Emitter or the Collector. There should be a resistor from the Arduino pin to the base of the transistor.
  8. Don't put SDA next to SCL in a cable. I see them next to each other in a connector. If you connect a flat ribbon cable to that, then the I2C bus will fail because the I2C bus can not deal with crosstalk between SCA and SCL.
  9. I doubt if the LDR needs a resistor of 330Ω. A value of 10kΩ or 100kΩ is probably better, depending on the LDR and how accurate you want to measure bright or dark conditions.
  10. What are you charging ? There are very specific rules for each type of battery, because there is a safety risk.

@Koepel has many good points about serious, even fatal errors in the schematic.

I did not check for those, and only commented about the general layout rules.

In addition to the errors pointed out above, relays, motors and solenoids require inductive kick diodes, otherwise entire sections of the circuit will be destroyed the very first time one is activated.

I am elated for the help. Thank you so very much. Answers to your questions:

  1. I'll correct that immediately.

  2. Active buzzer, it's supposed to be loud because it's on a kind of alarm.

  3. The RGB LED is a common cathode so I ran the resister from the ground. I thought it was correct
    but if I need to change it I will.

  4. The relays are momentary and not driving much current. I didn't see the need for a separate
    power source for that reason. I might be pulling 50 milliamps because the device that I'm closing
    has its own power supply.

  5. Actually two 9 volt batteries in parallel. It's seems to run fine on just one, but it dies in a few
    hours. By adding the second battery it seems to run longer.

  6. So should I connect the individual pins to the pins on the Arduino througs resistors? Like I said
    this LED has a common cathode so I thought I did it right.

  7. I got this from This YouTube Video. In the
    video the guy is only charging a 1.5 volt battery so it works for him. Mine charges the 9 volt
    battery but doesn't change the text on the OLED from waiting/done to charging. But you're
    saying that I shouldn't do it this way?

  8. I'll separate them, thanks.

  9. I'll add a bigger resistor.

  10. Two 9 volt batteries.

Again, thank you so much for all of your help.

Wrong. You need a resistor for every LED unless LEDs are in series.

And, as the forward voltages are different for the different colors, a different resistor value is needed for each of R, G, and B.

This is a big project for someone not well grounded in circuit basics.

About number 4 (switch relay with pin from Nano):
The relay coil is what the determines the current through the relay.
The pin of the Arduino should be able to give that current. The Arduino Nano can output 20mA (even up to 40mA is possible). I doubt if your relays have a coil current less than 40mA.

About number 5 (using 9V batteries):
A 9V battery is not good for a Arduino project.
Will you be charging a 1.5V battery from two 9V batteries ?

About number 7 (charging a battery):
A NiMH battery is not very dangerous :cold_sweat: However, one bug in your sketch and all your batteries will be damaged. Charging a battery is not for a beginner. Charging a battery with software is not good at all. There are dedicated chips to charge batteries.

Conclusion:
Buy a charger for your batteries. Those can sometimes do a "refresh" or a "charge-discharge-charge" cycle.
Arduino is fun. Start with something fun, for example a ledstrip or a simple game with buttons and a OLED display. Adafruit has the best tutorials.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.