If you'd like to play around with breadboards, and electronics in general without having to purchase anything, check out Fritzing.They don't have any electronics tutorials that I know of, but it is a good, free tool to use for following along tutorials.
I don’t know of any program that would spoon feed things like that to the user. Best way to learn Arduino (for me) is trial and error and guided videos!
If you want to mock up circuit diagrams for Arduino, Fritzing is a great resource. Good luck with your project(s)!
I totally get what you're saying. All I'm saying is...just try it out. You already have a track-soldered board that works. It can't hurt to also try using a free tool like Fritzing, which is also compatible with OshPark, to lay out your schematic and setup a PCB. I really think you'll be surprised how easy and cheap it is and how much more pride you'll have in the end result.
Edit: And if you continue down this maker path and start designing more complex schematics, I think you'll thank me one day. 🙂
Can you post a schematic of your wiring? You can use something like http://fritzing.org/home/
Alsom which ESP8266 do you have? How many pins? If it has more than 8 pins then you can program Arduino code on it directly.
Precisely. Prototyping and proof of concept are very important. An Arduino for example is just a CPU mounted on a board ready to go. Once you're happy with your prototype you can be more specific with your components to ultimately save you as much money as possible.
http://www.makeuseof.com/tag/dont-spend-money-on-an-arduino-build-your-own-for-much-less/
Notice however there's a lot more going on. This is why it's best to have your prototype first, as really the additional aspects of having to build from scratch will be hindering and ultimately detract from what you actually want to accomplish.
If you haven't heard of it check this out.
Great way to gather your thoughts and requirements. I always like to look at the output and work backwards and this helps immensely for that.
Really great advice in this thread from the other posters. Best of luck!
Your upper transistors should be PNP ones. Think about them:
To activate a NPN transistor you have to put current between base and emitter. You're putting 3.3v on the base, but the emitter is connected to the motor (and to a closed transistor) which is kind of an inductance. You would want to have GND on the emitter.
To activate a PNP transistor you have to put current between emitter and base (Warning: pin names change). Here your emitter is connected to 9V. You would then want to put a voltage lower than 9V on the base in order to turn it on. A solution for this is putting another npn transistor which lets current pass from the PNP base to GND. This activates it and lets current pass between emitter and collector (pls see warning). Some people use a pull-up resistor from the PNP base to V+, and I believe it's good practice not to leave floating pins on this kind of circuits.
If you google typical H bridge configurations for driving a DC motor (or a stepper), you'll see they put some diodes on it. They're very important as they avoid reverse current produced by the inductor discharge flowing on your transistors, which could damage them and your gpio's.
Having said all this, the resulting circuit could look like this one I just made (no pullups).
I would like to reccomend you use some software for your schematics, like Fritzing (it's free and lets you even design pcb's and protoboard prototype diagrams :D).
Cheers dude, good luck.
Disclaimer: Please check the circuit very well. I'm mostly self taught on this stuff. Any corrections are welcome!
EDIT: Just read that you're indeed using diodes. Nice.
There are a lot of ways to do this. I always draw the circuit even before I start building it. This way I check and double check that everything is OK while building it. In my word clock I had a mistake in the diagram and found a few ways to make the breadboard smaller while I was building it.
I use this program but I do not know if it is available in English. It seems like this (online) or this (program) do more or less the same.
When I am building complicated programs I like to split it in different parts to check each one separately. For instance on my second project I want to build something that controls an external valve, saves data to a SD card and has a menu displayed on a LCD. I started with building a voltage logger that saves to SD and displays it on the LCD. Next step will be building the menu and then the program to control the external valve. If every part is working I pour all together and recheck if it is working.
Additionally Arduiono gives you a lot of help. I.e. when you declare a variable twice, a variable is not declared in the function etc. The chances to destroy something are limited as well in my opinion.
Which Arduino are you using? The Uno uses MOSI as 11, MISO as 12, SCK as 13 and SS as 10.
I think those are hard coded. Might try using the defaults.
http://www.arduino.cc/en/Reference/SPI
Can you draw it out in Fritzing?
You should try Fritzing. It's incredibly user friendly compared to Eagle and KiCad, and is perfect for making small board such as ones for pedals. Fully cross platform too :)
Do what we do with code. Get an IDE. Fritzing is pretty awesome in that it gives you a virtual breadboard to play with. I've taken to prototyping here as I can save and mirror changes. It also allows me to lay out a pcb, I print and transfer that to a copper board that I etch. So if a project is worth making a permanent for it's really easy to go back and get the layout even if it's older.
Fritzing is free. http://fritzing.org/home/
FYI there are a couple services out there that let you design a circuit in "breadboard" view and will automatically generate a PCB layout, then let you order the custom PCB in small quantities.
http://www.123dapp.com/circuits
I've used them to make breadboard diagrams but never actually ordered a PCB, so can't comment on cost effectiveness. From my limited experience, Fritzing has a much larger library of parts. The advantage of this approach is that designing in "breadboard view" is a lot more noob-friendly, although that's certainly not how professionals do it.
I don't know what software OP used, but I was interested too so I went looking and I found this.
I haven't tried it yet, but it supposedly has a way to make stripboard layouts. Gonna try it now.
Try Fritzing. You can recreate your breadboard layout in this program and use that to easily put together a schematic and PCB. You can skip the breadboard part and just put together a schematic, or just go straight to the PCB editor.
It's intended more for the hobby market, but it's a very simple program with a lot of features and it's 100% free open source software, no accounts, no payments, just download it and get to work.
If you describe your circuit with something like fritzing (free software) we can evaluate it it for you. As it is, it's impossible to make heads or tails out of the jumble of wires..
Thanks for the information.
You have devices hooked together on ä breadboard. We need to know how they are connected together. A simple drawing is fine or a diagram from fritzing would also work.
With that info, we can help you. Without, we can't.
I use 22AWG solid core because that's what I have. I wouldn't recommend; it's a fat wire for small work. I would recommend thinner gauge insulated.
I use Fritzing for prototype software. Free and pretty. Seen it around a few places. It works for what I need it for.
It always helps me to draw something up on EagleCad (Or on paper) heck you can even using fritzing for something like this.
you're going to need to know how much current each of those strip's draws in order for anyone to tell you what a good way to drive them.
They look like SMT RGB 5050 LED's which means they run on 3v and each draw 50ma so count and do the math :)
Frietzing is free. I've never used any of the software mention ITT but it did the job for me. I also used a GitHub-like browser based tool with less features, Autodesk's 123D Circuits.IO, to explore other circuits do quick tests.
As I do not know on which continent you are, I cannot give you specifics, but I have an overwhelmingly positive history with fritzing. They have shipping times of 2 weeks, because they collect all orders over the course of a week and make one big order, that way, your PCB is ultra cheap and I even got a second one without cost one time, I assume they had some space left. The program you need to use also is called Fritzing and it is super easy to use and has good documentation. I started using it and really, it has a low entry barrier and is suited for every task :) If you have problems though, maybe I can help :D
I am very impressed as to how simple the numbering is, you have used a number of LED's and a simple card with pieces cut out.... I would never have thought to do something like that, I would have found a convoluted way to make it even more difficult!!!
I see great use of the breadboard, did you design your circuit on something like Fritzing or was it trial and error?
Thanks for sharing.
I'm just a newbie and never got out of the breadboard prototyping stage, yet. But I figure, that once I have a better clue of what I'm doing. I'll just look up for one of those specialized softwares for designing circuits and add the files it generates to version control. And permanently solder stuff.
Right now I'm using Fritzing, because it's focused on Arduino specifically and it's really easy to use for a newbie like me. But there might be something better out there.
For the actual hardware, in my understanding, breadboards and the basic solderless Arduino boards (uno, mega etc) are for prototyping only. I feel no remorse and in completely dismantling a project I took hours to set up all the jumpers. I knew from the start it wouldn't be permanent. When I finally get to the point where I'm confident I can build something actually useful, then my plan is to buy one of the smaller, more space efficient solderless boards, then just permanently solder the circuit on it. By then I should probably have a decent circuit design made on Fritzing or similar, and carefully stored on Github, so I can just follow that.