Yes, the folks that designed Fritzing did a good job. When a part that isn’t in core parts appears in a sketch, a copy of the part is included in the sketch so that it will work on any system (which may not have those parts.) That said, one is broken and another ugly so I replaced them. The first thing I did was run DRC (Routing->Design Rules Check) which finds a number of things to complain about:
the part circled in red at the bottom indicates that the OLED part is misconfigured (one of the copper layers is incorrectly named.) and you can’t route traces on the bottom layer. The second thing I did was start to route schematic, because breadboard and pcb can look fine but not be fine (and that is true in this case!) That got me looking at breadboard, where there are a number of errors and omissions.
The red circles correspond to these problems:
Capacitors are wrong polarity, rotating them 180 degrees to correct the polarity. It is ugly but at the moment the only choice because polarity matters. Moved the motor drivers down one pin to make it a little less ugly.
Move ground on the DC DC converter from positive rail to ground.
move the yellow wire on both FSRs from ground to the other side of the resistor.
move wire from Vin to 5V I don’t believe the Nano will work with 5V on Vin, as there is a 5V regulator in the way I think. It needs to go to the 5V pin but then you need to be careful about plugging USB in as you can damage the USB port. The arduino site has this to say about power:
" Power . The Arduino Nano can be powered via the Mini-B USB connection, 6-20V unregulated external power supply (pin 30), or 5V regulated external power supply (pin 27). The power source is automatically selected to the highest voltage source."
You could put the 19V power in to the Vin pin.
Add +5V and ground connections from top breadboard to bottom to complete the 5V and ground distribution. That gives this corrected breadboard (there is a copy of the sketch later):
Now on to schematic. Convention in schematic is inputs on the left, outputs on the right, so move the components so the power comes in on the left and the motor and solinoid are on the right. Then arrange things (really done while routing the traces to make schematic readable.) in to a reasonable order. Then route all the traces. I actually did schematic first, it is how I discovered the errors in breadboard. The center of the fsrs didn’t connect to anything, and switching back to breadboard and tracing the wire out from the Nano showed it going to ground instead of the fsr resistor junction where it should. The lack of a +5V / gnd connection between the two breadboards caused a puzzle for a bit. Because I had used net markers, (the upright bar with a voltage, 19V or 5V and the ground symbols) in schematic Fritzing knew the two buses should connect together but there wasn’t such a connection in breadboard. Took me some looking to see where the problem was. A note about parts here. The transistors are overly large, (their scale is too large for the other components and the wire are too large) as well they are not properly postitioned on the .1 in grid so the connectors (for instance ground) connect at an angle. Nothing you can do about this, it is a fault in the part. Eventually it offended me enough that I made a new (better) part and added it. As noted the OLED part is also misconfigured so I replaced that as well.
Earlier I had deleted all the traces in pcb (because if breadboard isn’t correct, making changes in pcb is dangerous, as it can cause routing database corruption.) So I was starting from scratch, however loading your original sketch I see another error there is a short between A2 and A3 (which will reflect in to breadboard) circled in red here. The bottom layer trace is shorting A2 to A3
if you click on a pin (try A2 in this case ), everything else it is connected to will light up yellow. First (as you may know) anything past the boundaries of the grey background won’t appear on the board. So for instance the “150W DC-DC Converter” message will not appear on the board. Then I rotated both capacitors 180 degrees (via right click to select then Rotate 180 degrees) that makes the routing much easier as the traces don’t cross each other. While I haven’t done it, you may want to move the Polulu A2 part right .1in. While I believe (from another board I worked on) they will stack end to end like this, a bit more clearance would be easier. I didn’t move it because there may be a space constraint I don’t know about. I also moved all the labels in to the correct position and orientation (by righ clicking on the label with the part selected and using flip/rotate to change the orientation) so they are all readable. I enabled a couple that were disabled, so if that was intentional you will need to disable them again. Then I did View->Set grid size and changed the default .1 in to 0.05in. This allows me to make 45 degree bends in the traces. Best practice in pcb design is considered be to have all traces vertical or horizontal and connections betweem vertical or horizontal segments at 45 degrees (no 90 degree bends.) This is mostly important at RF and for EMI suppression, but it is a good habit to learn even when not doing RF or worrying about EMI. Then for the Vmot connections and grounds, because they are high current, I selected the trace then in Inspector (the lower right window) set the track size from the default 24mil to 48mil for all the high current paths (including the external USB charger ground.) Now all the digital grounds should connect together and then connect once to one of the high current ground points. The reason for doing this is the high current grounds will exhibit a slight change in voltage due to the high current flowing in them which may have an undesirable effect on the logic circuits (this is why there is a digital ground and a motor ground on the motor driver chip.) At this point I fixed up the Tip120 and OLED parts and used delete minus to replace them. Delete minus deletes the selected part but leaves the traces that connect to it, so you can load an updated part then (in all views) click on the end of a trace and move it off and back on to the pin of the new part until the connection goes from red (no connection) to green (connected.) The end result of all of this is this sketch (which you need to check to make sure I didn’t make any mistakes .)
MPS-fixed.fzz (107.2 KB)
This sketch has the following two parts in the temp parts bin, but I will include them here for anyone later searching for corrected versions of these parts:
OLED-128x64-I2C-Monochrome-Display-fixed.fzpz (9.0 KB)
TIP120-Hi-Current-Darlington-Transistor-fixed.fzpz (6.4 KB)