Hello! I have been playing around with the arduino for a couple years, and I want to think I have a basic understanding of electronics. Recently I have started designing a more complex project that I want to build in the future. I have made a schematic for it, but I have several questions.
This project is going to be a general purpose wifi-enabled controller for RGB led strips, relays, and maybe more things in the future.
The goal is to have a custom PCB that contains everything (except the wifi module). I have attached the schematic that I made.
The arduino part is basically a copy of the Arduino Nano schematic with the USB UART converter and the atmega 328p chip. I have also added a PWM controller to extend the pwm capacity of the mcu, and a 3x2 socket for an ESP8266 module.
As you can see on the PDF, I am still a noob when it comes to more advanced electronics and schematic design.
So these are my questions:
-
Is it okay to build an arduino from off-the-shelf parts? Is there anything wrong with my implementation?
-
Can I use two SPI devices at the same time as shown on the schematic? As far as I can tell there is a 'chip select' pin on the wifi module (CH_PD), but I haven't found anything similar on the pwm controller. The documentation says that the 'BLANK' pin can be used to blank all the outputs, so currently I am using that as the chip select. Is this going to work?
-
I want to drive RGB led trips and relays with the mosfets. Is the IRLB8721PBF a good choice for that? Of course I won't output pulse-width modulated signals to relays, only 0 or MAX values to turn it on or off.
-
Do I actually need the 10k resistors on the mosfets? I've seen many led strip diagrams that include them and some that don't. On one particular tutorial I saw 10k, but I don't know if I need it, or if it's the right value for the given mosfets.
-
Are there any major design flaws in my schematic?
-
If I made a PCB from this, could I burn an arduino bootloader on it with the on-board usb? I don't know if I need some custom firmware on the FT232RL. Will I be able to use the Arduino IDE to program my device?
These are the exact part numbers and values used in the schematic:
Code | Part ID | Type |
---|---|---|
IC1 | ATmega328P-PN | Microcontroller |
IC2 | FT232RL | USB converter |
J1 | 10118193-0001LF | USB B micro connector |
Y1 | 16.00M-HC49-S | Crystal 16 MHz |
C1 | C0805C220J5GACAUTO | Capacitor 22p |
C2 | C0805C220J5GACAUTO | Capacitor 22p |
F1 | 0ZCJ0050AF2E | Fuse |
D1 | SS1P3L-M3/84A | Diode |
C3 | C0805C104M3RACTU | Capacitor 100n |
C4 | T491A475K016AT | Capacitor 4.7u |
R1 R2 R4 | RC0805FR-071K | Resistor 1k |
D2 D4 | KP-2012LSGC | LED green |
D3 | KP-2012LSURCK | LED red |
C5 | C0805C104M3RACTU | Capacitor 100n |
C6 | T491A475K016AT | Capacitor 4.7u |
C7 C8 C9 | C0805C105K8RACAUTO | Capacitor 1u |
R3 | SMD0805-2K-1% | Resistor 2k |
IC3 | TLC5940PWP | PWM driver |
Q1-12 | IRLB8721PBF | N-MOSFET |
IC4 | LD1117S50T | Regulator 5V |
R5-16 | SMD1206-10K | Resistor 10k |
(all the part numbers are from tme.eu, but some of them can be found on digikey or mouser)
Keep in mind that I am still a beginner and this entire project might be completely stupid.
Sheet1.pdf (360 KB)