Creating your own custom hardware (printed circuit boards)

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 พ.ค. 2024
  • Patreon ➤ / jacobsorber
    Courses ➤ jacobsorber.thinkific.com
    Website ➤ www.jacobsorber.com
    ---
    Creating your own custom hardware (printed circuit boards) // A lot of embedded systems projects require custom hardware, but people are often unsure where to start. This video takes you through the process of making your own printed circuit boards, so you can make more professional-looking embedded systems and other devices that are easier to deploy.
    *** Sponsor Offer ***
    Register to get $100 free coupon:
    www.nextpcb.com?code=Jacob
    Double side PCB assembly free shipping:
    www.nextpcb.com/pcb-assembly-...
    Free PCB Design Analysis Software:
    www.nextpcb.com/nextdfm.html?...
    ****
    Related Content:
    Sparkfun Eagle Tutorials: www.sparkfun.com/search/resul...
    Embedded Systems Videos: • How to Get Started Lea...
    ***
    Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
    About me: I'm a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
    More about me and what I do:
    www.jacobsorber.com
    people.cs.clemson.edu/~jsorber/
    persist.cs.clemson.edu/
    To Support the Channel:
    + like, subscribe, spread the word
    + contribute via Patreon --- [ / jacobsorber ]
    Source code is also available to Patreon supporters. --- [jsorber-youtube-source.heroku...]

ความคิดเห็น • 80

  • @connor4440
    @connor4440 2 ปีที่แล้ว +11

    Gerber files are actually really cool! At one of my software jobs, I wrote code to convert Gerber Files (usually just the ones that had the information for the traces), and converted them to STL files for 3D printing. And boom, 3D printable circuit. I've since left that job, so I don't have access to the C# code I wrote. I may revisit the project and rewrite it in C++, with larger files speed can be an issue so porting it to C++ would be a fun project.

  • @ojouniisama5401
    @ojouniisama5401 3 ปีที่แล้ว +29

    Would love to see more hardware based videos. Amazing content as always!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +2

      Thanks. I'll see what I can do. Any particular hardware topics?

    • @konstantinrebrov675
      @konstantinrebrov675 3 ปีที่แล้ว +2

      @@JacobSorber How about Verilog programming?

  • @phoenix7680
    @phoenix7680 3 ปีที่แล้ว +4

    Wow... You really need to keep this series alive. I love it!

  • @inventorj
    @inventorj 9 หลายเดือนก่อน

    Awesome high level! Showing a specific project at a detailed level could be a sweet series

  • @NeerajSharma-oz1mm
    @NeerajSharma-oz1mm 3 ปีที่แล้ว

    This is undoubtedly my favorite channel

  • @longdusboob7227
    @longdusboob7227 3 ปีที่แล้ว +5

    HOLY SH*T THAT WAS EXACTLY WHAT I WAS LOOKING FOR !!! YOU'RE THE MAN !!!

  • @outlawcoder423
    @outlawcoder423 3 ปีที่แล้ว +4

    You literally make the best coding videos. Thanks for taking the time and doing this!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว

      You're welcome. Glad they are helpful.

  • @haathimmunas1563
    @haathimmunas1563 3 ปีที่แล้ว +1

    Please keep making more embedded systems videos👌👌

  • @jacobkoziej
    @jacobkoziej 3 ปีที่แล้ว +1

    Its videos like these that excite me for EECS in college :)

  • @imranmuthuvappa4311
    @imranmuthuvappa4311 2 ปีที่แล้ว

    this video was such a good primer!!!

  • @Ryan-mn6xs
    @Ryan-mn6xs 3 ปีที่แล้ว +2

    Really cool topic, wish this was covered when I was in school!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Yeah, even now a lot of students don't actually get to fabricate boards as students. I've started doing it in one of my embedded systems courses. I figure printing boards and buying a few components now costs less than a textbook. So, why not.

  • @TonyDaExpert
    @TonyDaExpert 2 ปีที่แล้ว +1

    Next semester I am taking Analogue electronics, embedded systems and operating systems courses so it seems like a fun semester, after that semester I will take some advanced embedded system classes where you do hardware and software

  • @jacobl1214
    @jacobl1214 3 ปีที่แล้ว

    Love these videos keep it up!!

  • @TheVertical92
    @TheVertical92 3 ปีที่แล้ว +3

    very interesting!
    Im a ex- electronics technician for industrial engineering (this is translated with google, bcs i dont know the correct name in english),
    but i dont have the confidence to design a PCB 😒
    I did all the math, soldering and board-building many years ago and none of it was designed by me. It was just building by blueprint.
    PS: There is not enough C-Content out there (compared to other languages). Its mostly basic crash-courses.
    You are the only one (that i know) that goes deeper in C. You're my favorite C-Channel and you deserve much more Viewers^^
    Harvards CS50 ignited my love for C and you helped me a lot on understanding some details!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Thanks. I'm glad I could help. You should really design a simple board. I think you'll find that it's not as daunting as it seems once you are done with it.

  • @7alfatech860
    @7alfatech860 3 ปีที่แล้ว

    Very nice overview.

  • @antoniomh1061
    @antoniomh1061 3 ปีที่แล้ว +2

    Got my job in C after watching almost every video of yours, tnx Jacob, very 1337 stuff

    • @googavo1d
      @googavo1d 3 ปีที่แล้ว

      Now it's time to create your own youtube channel!

  • @christopheralbano3570
    @christopheralbano3570 2 ปีที่แล้ว +2

    There are a few nuances about schematics worth keeping in mind. Yes, the primary goal of the schematic is to capture and communicate the logical relations of the components, but a well-crafted schematic also conveys a lot of more subtle design information to the person who is actually performing the layout. Physical proximity on the schematic can convey which decoupling capacitors belong with which ICs, which side of a trace to place the dampening resistors on, and other important nuances. I know that when I am laying out my PCBs, I really tend to appreciate when I take care to encode those design features into the schematic, and I end up with correctly operating prototypes much more quickly and with fewer iterations or botch wires. It probably also helps that it's also another opportunity to review decisions and make sure that they actually make sense. If you sweat the small things when designing your circuit and creating your schematic, you won't have to deal with nearly as many hardware bugs during prototyping.

    • @JacobSorber
      @JacobSorber  2 ปีที่แล้ว

      Absolutely. Thanks!

    • @somtochukwuisaac2829
      @somtochukwuisaac2829 ปีที่แล้ว

      how do yoU design schematics as a beginner

    • @speakersr-lyefaudio6830
      @speakersr-lyefaudio6830 4 หลายเดือนก่อน

      ​. Just like most other things, dive in and figure things out as ya go

  • @sabachuguashvili6073
    @sabachuguashvili6073 ปีที่แล้ว

    what a great moment to see your chanelll!😍 i have one question and interested one thing about what is look like to uploud or take a code into/from microcontroller after it assembled and created on board. and how avr isp work,what is it...? and also what you advising for production this is also very good i think for content, for example which microcontrollers are you recommend? really which ?

  • @oluwatobioyinlola
    @oluwatobioyinlola 3 ปีที่แล้ว

    Awesome! Prof.

  • @alevez2004
    @alevez2004 3 ปีที่แล้ว +1

    In my case I describe every component I need in VHDL and then connect it to the a soft professor system. It's basically the same, you are describing Hardware. Definitely much harder to grasp for software engineers

    • @netoskin
      @netoskin 2 ปีที่แล้ว +2

      Yeah but that vhdl code has to go in some kind of device like a fpga and the fpga requires its own board and external components, the thing is start making hardware outside of development boards

  • @Chevifier
    @Chevifier ปีที่แล้ว +1

    Im a complete noob on circuit boards and custom software for them. Where should I start learning? Im a game programmer/designer. But ive been interested in custom hardware. For real world applications

  • @mikelong3444
    @mikelong3444 5 หลายเดือนก่อน

    Awesome content as normal

  • @Certifiedtechologists
    @Certifiedtechologists 2 ปีที่แล้ว

    Hi,
    I’m doing some research and would love some guidance. I’m not handy however I’m looking to have a one of a kind primarily circuit built. Can you recommend a starting point ?

  • @abidibrahim
    @abidibrahim 3 ปีที่แล้ว +1

    Please can you do a video about FreeRTOS and libopencm3 library?

  • @joseortiz_io
    @joseortiz_io 3 ปีที่แล้ว +1

    Awesome video, awesome watch! What kind of watch is that? I've been dying to know for a while!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      It's an Orient dive watch. Nothing too fancy, but I do like it.

    • @joseortiz_io
      @joseortiz_io 3 ปีที่แล้ว

      @@JacobSorber I love watches. Been curious about Orient. Thank you for reply and thank you for spreading the knowledge! Looking forward to the network programming sequels to handle multiple clients! 😉

  • @faranahmadk7401
    @faranahmadk7401 3 ปีที่แล้ว

    kewl man alived!

  • @erikzamecnik4914
    @erikzamecnik4914 10 หลายเดือนก่อน

    This still leaves a lot of questions. How do I find correct chips meeting my purpose (search by params)? How to connect things together? For example processor, RAM, ROM, Ethernet chip?

  • @sammeredith7047
    @sammeredith7047 3 ปีที่แล้ว +1

    Great video as always. I've ordered PCBs with other people's designs (pcbtrain are a good outfit in the UK), but wouldn't know where to start designing my own. I'm sure you've answered this many times before, but do you have any electronics learning resources you'd particularly recommend to someone with a software background?

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +2

      Practical Electronics for Inventors (book) is solid, and it avoids a lot of the theory that you may not immediately care about.

  • @gremtristan8481
    @gremtristan8481 8 หลายเดือนก่อน

    how know wich components i need for exemple i want build my own lvds hdmi controler board but how i know that i need each component (i'am engineer student grade 3 in france)

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Dear Jacob Sorber,
    What are attributes of well designed PCB?
    Regards,
    AB

  • @rafaelcoelho5226
    @rafaelcoelho5226 3 ปีที่แล้ว

    good video.

  • @Silentknowledge826
    @Silentknowledge826 2 ปีที่แล้ว

    hi jacob sorber, we need pcb with components can you make it? But we need just as a sample.

  • @Lamoboos223
    @Lamoboos223 ปีที่แล้ว

    Ok but how do I put linux operating system on the assembled pcb?

  • @karlsamaha907
    @karlsamaha907 2 ปีที่แล้ว

    hi Jacob if i don't want them to assemble the parts on the pcb can they the send me the parts with the pcb so i don't have to go out and buy them thank you.

  • @mockingbird3809
    @mockingbird3809 3 ปีที่แล้ว +1

    I'm curious, How do you actually load a code into that board? Let's say you wrote some C code, how do you actually compile your code for that handmade board and actually load and run it?

    • @netoskin
      @netoskin 2 ปีที่แล้ว +1

      Depends on the microprocessor/microcontroller you are using, every microprocessor has its own set of tools, usually you compile the code with the processor specific compiler in your computer and then load the program to the chip via serial communication

  • @juanmarquez9988
    @juanmarquez9988 9 หลายเดือนก่อน

    Make some out of harden paper op lei 9 emergency legal ones

  • @pedroantonio5031
    @pedroantonio5031 6 หลายเดือนก่อน

    Hey guys! I'm a tech enthusiast looking for learning everything about hardware. I wanted to create my own laptop, and I ask you: is it possible, by designing/contracting someone to design the motherboard and assembly the other stuff like CPU, RAM... make a laptop? I know this will be expensive, but my goal is learn with the process and know if it is possible😊

  • @Handskemager
    @Handskemager 2 ปีที่แล้ว

    The only problems with EAGLE, for me atleast, is the constraint on board size in the free version.

  • @bill2424
    @bill2424 3 ปีที่แล้ว

    how you program this circuits to run software or firmware?

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Somewhere in your system, you probably have one or more microcontrollers (typically a component on your board). The programming interface will vary by processor, but, you typically have to expose some pins on the board for programming.

  • @hansdietrich83
    @hansdietrich83 3 ปีที่แล้ว

    Hey, I want to write a simple graphics library in C for multiple ebedded systems that can drive 1 bit screens like an led matrix for example. The thing I struggle with is how to store frame/pixel information.
    How would I go about implementing a framebuffer in this case?
    One uint8_t for every pixel is such a waste of memory, as i only need on bit per pixel.
    Using 2d arrays in C is also not very practical, IMO.
    Storing multiple pixels in one 8 16 or 32 bit number is also a pain, as it requires relativly "complex" transformation from screen space to buffer space, when the width of the screen is not a multiple of the word size.
    Is there maybe a way to just store a long line of bits without a format that is width*height long or something like that?
    Any ideas are appreciated

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว

      This is going to depend a lot on the display you're using? Or are you designing that from scratch?

    • @hansdietrich83
      @hansdietrich83 3 ปีที่แล้ว

      @@JacobSorber that's the thing, the plan is to write a universal library for 1 bit displays. My problem is just how to store a one bit image to be easily moddifiable in code. The code to interface the hardware is gonna change from project to project.
      My question is, how would you store pixel information at an arbitrary size so you can acess it in x y coordinates without much processing needed?

    • @benhetland576
      @benhetland576 3 ปีที่แล้ว

      @@hansdietrich83 I would capture the set of display parameters in a struct (in C++ I probably would've made a class with some suitable methods instead), such a how many pixels wide/high and how many of your uint8_t you use in each direction. Upon initialization you could decide to use only a whole number of uint8_t in the minor indexing direction (say x), which possibly means adding an extra element and waisting max 7 bits per y-coordinate. [nh = y; nw = x / 8; if (x % 8) ++nw; buf = malloc(nh * nw);] You can then make a couple of functions to convert to & from x,y and the corresponding array index and bit offset, which use the struct members to do the calculations. The formulas should be relatively simple using integer div/mult/shift/mod. [idx = y * nw + (x >> 3); bit = x % 8;] All library functions receive a pointer to that struct as one of its arguments, and even the buffer pointer could be stored there so the client code only needs to keep track of that single struct to represent the display.

  • @lbricks4774
    @lbricks4774 ปีที่แล้ว

    How do you code your pcbso it does what you tell it to

    • @brandontay2053
      @brandontay2053 11 หลายเดือนก่อน +1

      You do need to have a microcontroller component (not necessarily the whole development board, just the chip with some peripherals) on your PCB for it to be programmable!

  • @sakshisingh8167
    @sakshisingh8167 3 ปีที่แล้ว

    PLEASE DO STM32F407VG DISCOVERY BOARD

  • @chrispearson2329
    @chrispearson2329 5 หลายเดือนก่อน

    Your affiliate sponsor link to next pcb is not formed correctly, just fyi

  • @douvonnie
    @douvonnie 2 ปีที่แล้ว

    Is it possible to have someone design a pcb for me based off raspberry pi

  • @ranjithmkumar
    @ranjithmkumar 3 ปีที่แล้ว

    But How about the NDA? Will the nextPCB ensure the novelty of the design by not selling to 3rd parties?

  • @phiwatec2576
    @phiwatec2576 3 ปีที่แล้ว

    If you want to get in PCB design in KiCAD I reccommend the Phil's Lab TH-cam Channel. He has really godd videos in which he explain a lot of stuff in detail.

  • @tobias4lyph
    @tobias4lyph 3 ปีที่แล้ว

    One of my boards made the video :) woohoo! Lol

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Indeed. It was the most photogenic one I had lying around. Rectangles are boring. 😀

  • @plbader3714
    @plbader3714 4 หลายเดือนก่อน

    Oh man you just forgot the most important step in the end how we can make our software inside this hardware and make it work ???

  • @antoniomh1061
    @antoniomh1061 3 ปีที่แล้ว

    Just be careful about the fumes when soldering, it can harm your lungs

  • @khankashani7387
    @khankashani7387 3 ปีที่แล้ว

    If you could teach us the new C++, a complete C++ tutorials, that would be awesome professor. C++ is very challenging 😰 and hard, we don’t find any good tutorials. Please do C++ tutorials with C++ data structures and algorithms??????????????????

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Yeah, maybe. I definitely feel your pain, but posting your request 10 times doesn't make it more likely.

  • @espero_dev
    @espero_dev 2 ปีที่แล้ว

    EasyEDA

  • @juanmarquez9988
    @juanmarquez9988 9 หลายเดือนก่อน

    Ed purp

  • @apexstate3127
    @apexstate3127 2 ปีที่แล้ว

    Hello Sir , Few days ago i decide to make my own Operating System, I can't figure out how i start or right path to design OS. can you suggest me how I start or where I start ,

  • @ewout4890
    @ewout4890 3 ปีที่แล้ว +1

    altium is fun, but doesn't work for OSX or Linux😂

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว

      Yeah, it's pretty sad.

  • @lucretiaxx
    @lucretiaxx 6 หลายเดือนก่อน

    more like an advert rather

  • @jeffbrownstain
    @jeffbrownstain 2 ปีที่แล้ว

    I had this at 2x speed and it still felt like you were talking too slow.
    I'm not a damn baby, and I've got better shıt to do than listen to someone talk like they got dropped as one.