5 ms·
Hi, I'd love to start making systems like Raspberry Pi. How does one start designing entire system boards like this? I know digital circuits and simple DC cir
by sown 14y ago
Hi,
I'd love to start making systems like Raspberry Pi.
How does one start designing entire system boards like this? I know digital circuits and simple DC circuits.
What else do I need to know? I've heard of Eagle before but I don't know to do board layout.
Is there a resource for a kernel engineer to go off and get started designing hardware?
- jff 14y agoThe hardest part is probably going to be power. A lot of the rest is just wiring up a bunch of components, which is complicated but not electronics-heavy. Datasheets are your friend. My first suggestion is to get a microcontroller like a PIC and design a circuit board for something simple. Something like the SpiffChorder (http://chorder.cs.vassar.edu/spiffchorder/hardware http://chorder.cs.vassar.edu/spiffchorder/hardware), which acts as a USB chording keyboard with about a dozen components, might be a good start. Eagle is free for small boards. The biggest hurdle here is probably getting your boards made--it'll be expensive and slow compared to everything else you're doing.
- johansch 14y agoPower hard - how? It gets regulated 5V via Micro USB.
- jff 14y agoI forgot about that part, I was thinking back to my experiences at a hardware startup. The battery circuitry was only a small portion of the board, but it was the most complicated electrically.
- jlgreco 14y agoYeah, in the simplest case you can battery power a pi with one of those rechargable battery-pack usb chargers meant for cellphones. Those require absolutely zero technical skill, start around $20, and it looks like they can power a pi from a few hours to more than 10.
- tcas 14y agoThe power distribution on a board is essential to it running properly. The 5v needs to go into 3.3v and probably 1.2-1.8v as well. You need to make sure that any loads on the power net won't cause a momentary voltage drop below any component's tolerance. You also want to make sure that the components on the far end of the board will receive the same voltage that everything else is receiving. Next you want to make sure that any digital chips won't inject noise on the line and have their own power reserve via decoupling caps. These capacitors need to be speced out to block specific frequencies and placed accordingly. Also, grounding is super important to consider as you want to have a stable "0V" reference (for digital only designs this means having a dedicated ground plane, mixed analog and digital can have separate ground planes). Now, for most hobbyist designs the rule of thumb is use a simple LDO and the recommended input/output caps (1-10uF) for it and use wide traces to route the power in a star like fashion. Also put a 100nF capacitor next to each power pin for noise and to serve as a power reserve. More complicated circuits / circuits that will need to go through FCC will require more complicated power distributions. Most professional boards (with high frequency signals on it) that will meet FCC will be 4+ layers, with a dedicated ground and power planes. A PCB I just designed with an FPGA on it had something like 50 capacitors for just the 1 chip, with physical size requirements for each type (the smallest capacitors were 1mm x 0.5mm to block the highest frequency noise, anything bigger won't be as effective). Don't let this deter you however, looking back on my first schematic/PCB designs I'm amazed at how much better I've gotten. Microcontroller designs with a few chips are very, very lenient. If you mess something up it will likely still work, but your performance won't be as good (i.e. if you use a built in ADC it may not be as accurate, or you might not be able to reliable run it at it's max clock speed)
- sown 14y agoIt sounds like you're trying to preach to a choir but talking to a de-converted atheist. :) Thanks for the link, though! I've worked with embedded systems before, so it's not totally foreign to me. But now, instead of programming a SoC or a board -- I want to MAKE the board! :D I have a concept of how power would fit into an engineering system, but I mean * How do I do board layout? * How do I know which components to put on a board? * How do I know what components go where? * How do I test the system I want to build.
- sliverstorm 14y ago* How do I do board layout? You learn an EDA tool such as Eagle, pick a board vendor, and produce a design that meets the board vendor's specifications. You submit an order, and get boards in the mail. It's like designing and getting custom t-shirts made, expect much more involved. * How do I know which components to put on a board? Mostly datasheets. Once you identify your subsystems (I want this micro, that USB interface, this video chip) you get the datasheets and read them to learn how to design the schematic for that part. How do you pick what micro or USB chip? I start by browsing hobbyist websites to see what is popular and digikey to see what meets my specs and is cheap. * How do I know what components go where? On a hobbyist board running in the kHz range? They mostly go where they fit. There are no rules, just guidelines- group things by how they connect, so you have less wire everywhere. Rats-nests are hard to design and debug, and component placement is the #1 way to fight rats-nest. Put central components (like the microcontroller) in the center. Put ports on the edge of the board. Put the USB chip next to the USB port. * How do I test the system I want to build. You build it. There's no simulation. You build it, and if things are wrong you figure out why with a multimeter and maybe an oscilloscope.
- jff 14y agoYou can try breadboarding if you have a simple through-hole circuit. If things are SMD-only, you'll have more trouble.
- bugsbunnyak 14y agoI've been looking for a way to get around this for some ADC chips I'd like to use in a one-off. Proto-vantage SMD-to-DIP boards look great for that, if slightly spendy; Radioshack even sells a few varieties.
- follower 14y ago> The biggest hurdle here is probably getting your boards made--it'll be expensive and slow compared to everything else you're doing. I guess it's a relative thing but compared to what it used to be I don't think getting PCBs made these days is expensive or particularly slow. (Well, slow is a couple of weeks compared to seconds for a compile cycle I guess...) A few months ago I got two simple board designs fabricated at a couple of online PCB manufacturers and it cost under $20 per order with around two weeks for delivery from each vendor--for between three and ten copies of each design. These are my notes on the experience: http://www.labradoc.com/i/follower/p/notes-seeedstudio-fusion-pcb-kicad http://www.labradoc.com/i/follower/p/notes-seeedstudio-fusio... http://www.labradoc.com/i/follower/p/notes-osh-park-pcb-kicad http://www.labradoc.com/i/follower/p/notes-osh-park-pcb-kica...
- joezydeco 14y agoYou always start with a schematic. Rip apart an existing schematic for a SoC system like a BeagleBoard or SABRE Lite. Then when you're ready, you feed this netlist into a board layout tool. You'll find that most of these newer boards are a single massive chip that contains the CPU/GPU and all related I/O. There isn't much hardware to design anymore. The rest of the board is either I/O connectors and their related parts (filter caps, pullups, etc), or support chips (eMMC, DRAM, Ethernet transceivers, etc). Note that these SoC parts are usually highly dense ball-grid array (BGA) devices. This is pretty exotic stuff if you're just getting started with board layout, and we won't even get into RAM timing and trace impedance matching yet. Pandaboard references (TI OMAP): http://pandaboard.org/content/resources/references http://pandaboard.org/content/resources/references SABRE Lite (Freescale i.MX): http://boundarydevices.com/products/sabre-lite-imx6-sbc/ http://boundarydevices.com/products/sabre-lite-imx6-sbc/ RPi Schematics (Broadcom SoC): http://www.raspberrypi.org/wp-content/uploads/2012/10/Raspberry-Pi-R2.0-Schematics-Issue2.2_027.pdf http://www.raspberrypi.org/wp-content/uploads/2012/10/Raspbe...
- sown 14y ago> You always start with a schematic. How does one get started making schematics? Is there a simulator tool?
- digikata 14y agoLook at KiCad (open source) or Eagle (free to hobbyist) for a schematic capture / electronic design. But for a starter in hobby electronics, you might start by following a blog like "Dangerous Prototypes" or "HackADay"
- subsystem 14y agoWhile fairly basic, the Arduino boards are probably some of the most documented out there and would be a decent starting point.
- sown 14y agoThat sounds like a plan.