SNES Controller Interface - Part 3 - Final PCB Module

  Переглядів 5,460

James Sharman

James Sharman

День тому

The circuit is final so the last step is to convert the circuit to a PCB. After the audio controller PCB the remaining space is better defined so I was able to define the area I had to work with. I decided it would be fun to put the 12 button led’s in the shape of the controller rather than just in a row. The first revision of the board has an error, I assigned the wrong led’s to the buttons, I also made a small placement error. This is the first time I opted to do a second PCB revision inside a single video but I felt it was important to finish the video with a final module.
0:00 Introduction
0:30 Circuit Recap
2:04 Schematic
4:01 PCB Layout
7:10 PCB Routing
16:49 Pick and Place
22:28 Reflow
23:35 Hand Soldering
26:45 Test
30:13 PCB Fix
34:43 New PCB!
37:46 New PCB Reflow
38:32 New PCB Soldering
39:06 Working!
40:19 Integration
43:28 Outro
oshwlab.com/weirdboyjim/snes-...

КОМЕНТАРІ: 95
@weirdboyjim
@weirdboyjim 6 місяців тому
Join us on Discord: discord.gg/jmf6M3z7XS Follow me on Twitter: twitter.com/WeirdBoyJim Support the channel on Patreon: www.patreon.com/JamesSharman
@janschrder
@janschrder 6 місяців тому
It's very rewarding to watch your systematic work and reasoning during the whole construction phase. From idea to the final tests. Well done James, well done 🙂
@weirdboyjim
@weirdboyjim 6 місяців тому
Thanks! Glad you enjoyed it.
@m1geo
@m1geo 6 місяців тому
Nice one, James! I'm laying out my own board (USB SDR interface), enjoying a beer, and watching you layout a board! 👌
@weirdboyjim
@weirdboyjim 6 місяців тому
Have fun!
@m1geo
@m1geo 6 місяців тому
@@weirdboyjim Just given up! Too much computer time for a day off!
@andymouse
@andymouse 5 місяців тому
I'm the same, if something on a PCB ain't right it bugs the hell out of me. Great work James !.....cheers.
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks andymouse! I agree!
@SirHackaL0t.
@SirHackaL0t. 5 місяців тому
Loving that your signature in solder is so complicated. Lol
@weirdboyjim
@weirdboyjim 5 місяців тому
You mean my name in copper? It seem a bit more reserved than putting it on the Silk Screen.
@jerril42
@jerril42 6 місяців тому
Terrific. It's getting very exciting. Thanks James. Take care.
@weirdboyjim
@weirdboyjim 6 місяців тому
Thanks, you too!
@FrankGevaerts
@FrankGevaerts 6 місяців тому
Excellent work! Those cosmetic touches make all the difference!
@weirdboyjim
@weirdboyjim 6 місяців тому
Thanks Frank! Needed an antidote to the last pcb which had no led's!
@FrankGevaerts
@FrankGevaerts 6 місяців тому
@@weirdboyjim Yes, too many of those would be simply unacceptable!
@luandkg
@luandkg 5 місяців тому
It’s amazing progress
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks! Glad you are enjoying!
@bytesandbikes
@bytesandbikes 5 місяців тому
Love the LED layout!😁
@weirdboyjim
@weirdboyjim 5 місяців тому
Far better than a row of led's!
@OscarSommerbo
@OscarSommerbo 5 місяців тому
Yay, another James video. According to the dates of the comments I really should become a patreon. Never be ashamed of bodges, have you seen the 80s mass produced computers? Many with factory made bodges for months or even years. Bodges are just a part of making new computers.
@weirdboyjim
@weirdboyjim 5 місяців тому
It really isn't necessary. At the moment I'm experimenting with making video's public at the same time as I upload the next video. That way I avoid spending two evening watching the stats and replying to comments.
@user-sy8nb4me7z
@user-sy8nb4me7z 5 місяців тому
So great to see Snek being played with the controller, with PCBs completed. Glad you took the time to fix LEDs...that was so frustrating to see that happen, but that's what revisions are for :)
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks! Hoping to do some games with the vga soon! That will be cool to play something without the pc attached!
@cskilbeck
@cskilbeck 5 місяців тому
Love it - totally agree that the layout had to be fixed. Also... 20K! Well done!
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks Charlie! Now I'm looking at a silkscreen error on another board, need to do something about that!
@cskilbeck
@cskilbeck 5 місяців тому
@@weirdboyjim Ah, now you'll have to spend time looking for something that justifies a re-spin so you can get that silk screen juuuuust right...
@Mario.M.71
@Mario.M.71 5 місяців тому
Awesome job as a always .....
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks!
@TheRealBobHickman
@TheRealBobHickman 5 місяців тому
PCB bugfix was totally worth it for the joypad silkscreen alone.
@weirdboyjim
@weirdboyjim 5 місяців тому
Absolutely Bob! Should have done the silkscreen outline first time round!
@RaveYoda
@RaveYoda 5 місяців тому
Just so cool and mad respect!
@weirdboyjim
@weirdboyjim 5 місяців тому
Grateful for your praise I am.
@Otakutaru
@Otakutaru 5 місяців тому
The outline is really good. Another little board to your collection
@weirdboyjim
@weirdboyjim 5 місяців тому
Yeah, I really like this one.
@BillySugger1965
@BillySugger1965 5 місяців тому
Nice looking board James. Don’t forget to add the missing link to the backplane schematic and layout now, because when you come to make an integrated backplane that correction will be easily forgotten. Ask me how I know these things 😊
@weirdboyjim
@weirdboyjim 4 місяці тому
Good to make those tweaks as you find them! Not actually necessary in this case as the mistake was just in creating the little temporary board.
@DavidRFHarris
@DavidRFHarris 5 місяців тому
I love it.
@weirdboyjim
@weirdboyjim 5 місяців тому
Glad you did!
@TitanumIchigo
@TitanumIchigo 5 місяців тому
I like to complain about PCB designs people do, so let's go... 1. Don't leave copper pours with single via (32:52) - it acts as antenna and your board becomes a nice radio. 2. Traces / components should be at least 2-3mm from boards edge (with exception for angled connectors) 3. Board edge should be protected by chassis ground ring (on each single layer) that is stitched together with vias. This reduces edge fired emissions. 4. Thin long ground pours also acts as antennas (ref. point 1, 32:30) 5. Components should be placed at least 1mm away from other components in low density designs [34:12, capacitor and SOIC14 IC] 6. Each PWR/SIG via should have GND via placed at lumped distance - it improves signal integrity and is necessary at high frequencies (and in power-spike-sensitive circuits) 7. In two-layer designs never cross signals at angle other than 90 degrees (bottom/top layer). Otherwise they will couple together causing interference. 8. If you've space use that space - place traces as far away as possible. 9. Always name your nets (makes it easier to understand your work when PCBs arrive :D). 10. Use colors - it makes routing way easier (especially to have custom color for each power network / GND and high speed signal or parallel bus). There're other issues, but those are the most significant ones. Your design is not bad (as it's low frequency, so it works fine. It's just an "future problem" pretender - it's better to learn proper design rules from "beginning" than to implement them later on).
@weirdboyjim
@weirdboyjim 5 місяців тому
Well, if you like to complain about ropey PCB design you have come to the right place. I’m a rank amateur (with a working circuit!). Whist I know I have a lot to learn about pcb design I can find many breaches of your rules on commercial pcb’s within arms reach, they are not universally followed! I often get conflicting advice in the comments of videos and it’s not easy to determine who I should listen to. You might be interested to know the schematic is open source, you are welcome to make improvements yourself. It would actually be interesting to make comparisons between my work and the circuit revised by an expert, I would get some test gear on it and hopefully see tangible differences!
@TitanumIchigo
@TitanumIchigo 5 місяців тому
@@weirdboyjim Okay, sent you an improved version via OSHW Lab messages (User Center). It's not best way to do it, but acceptable for hobby-grade design. (sorry for GDrive link, can't upload to OSHW Lab from my EDA :sad_face:). Btw. I'm not an expert. I just spent way too much time watching "proper circuit design" videos from reputable sources (eg. Altium Academy). On those frequencies differences are hard to see without research-grade hardware, however it quickly becomes an issue (at about >100MHz signals). I always prefer "futureproof" learning (as it's easier to learn how to do things properly rather than to implement countermeasures when issues arrive). And commercial PCBs often breach rules, because it's made to be the cheapest possible PCB, even if it sometimes violate local regulations (IIRC our gov tested extension cords and 80-90% weren't complying to EU standards - aka were illegal to sell). Chinese companies design things "just to work", safety and standards... who would care. That's the reason why I always check newly purchased device for proper grounding of metal parts... (which are usually not grouded at all). If you're looking for good resources on PCB design search for Altium Academy and Phil's Lab. Those are best sources on UKposts.
@thegiq
@thegiq 5 місяців тому
I love that your hotplate still tries to display "Err" when you shut it off.
@weirdboyjim
@weirdboyjim 5 місяців тому
I sympathies with the hot plate!
@markantony7413
@markantony7413 5 місяців тому
Great videos. Is it possible to use solder paste without a stencil? I have a smd practice board but it hasn't a stencil
@weirdboyjim
@weirdboyjim 5 місяців тому
Yes you can, but it’s only really practical on boards with a solder mask. Repulsion from the mask and attraction to the metal parts seems almost magical at times, be very careful about how much solder you put on and check carefully for bridges before powering on.
@peter.stimpel
@peter.stimpel 6 місяців тому
Not so bad. I am sure I would have needed more versions of that board if I would have done this. And maybe more layers, too.
@weirdboyjim
@weirdboyjim 6 місяців тому
Really kicked myself for that mistake, could have avoided it so easily!
@peter.stimpel
@peter.stimpel 6 місяців тому
@@weirdboyjimMaking mistakes is part of the learning process ... dont be too harsh to yourself.
@kterstal
@kterstal 5 місяців тому
Bedankt
@weirdboyjim
@weirdboyjim 5 місяців тому
That is very Generous thank you! I appreciate the support!
@helmutzollner5496
@helmutzollner5496 4 місяці тому
Great! Will you convert this interface now to become an SPI device as well?
@weirdboyjim
@weirdboyjim 4 місяці тому
No, I'm happy to leave it as it is although it would be fairly simple job.
@helmutzollner5496
@helmutzollner5496 4 місяці тому
@@weirdboyjim Understand, although it would be conceptually cleaner to have only one interface type. What SPI interface chip would you use to interface the SNES interface to SPI, or would you do that with TTL logic?
@markrgreenlane
@markrgreenlane 5 місяців тому
Morning James, any reason why the final peripheral back plain there couldn’t be more than one SNES input board for multi player games, should any arise that is?
@weirdboyjim
@weirdboyjim 5 місяців тому
You could do that but I wasn't planning on it. Would be more interesting to adapt the board to support 2 controllers, you could share some components. This was an interesting circuit as it has some states and variety of components but if I wanted a second controller the easiest thing would be to put some extra wires into gpio lines and bit bang it.
@markrgreenlane
@markrgreenlane 5 місяців тому
I hadn’t thought of that, have a two controller board and share some of the circuit between the two rather than having two separate but identical boards.
@DustinWatts
@DustinWatts 5 місяців тому
If you have silkscreen on bare copper, they will not silkscreen print that, so you could have let it like you had it the first time. No use for that information now, but good to know for in the future ;) Nice build btw!
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks Dustin. Good to know, but I suspect it maybe good practice not to rely on it.
@DustinWatts
@DustinWatts 5 місяців тому
@@weirdboyjim I also not put silkscreen on bare copper. Just because it is not good practice. And it if I do, the design will not look like the final board, which I don't like :) But it is good to know that it is ok if you do it by mistake.
@HanWechgelaer
@HanWechgelaer 5 місяців тому
2067 views and only 284 likes?, people please like some more! Great content thanks!
@weirdboyjim
@weirdboyjim 5 місяців тому
That's still more than 10%, apparently that's pretty good.
@DFPercush
@DFPercush 5 місяців тому
Huzzah! This is a great step toward making a retro style game console, that's also a general purpose computer with a tty. I wonder what it would take to make an emulator for this board, once it's all said and done. That would give people a reason to write code for it, and you could run it on hardware (as well as anyone who can be bothered to duplicate your boards). I'm not suggesting you write it, but it would make a cool project. Imagine if you had a C compiler back end as well.
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks! I actually already have a simulator for it. You can find it on the discord #toolchain channel with the assembler.
@Minecraftmigapiku
@Minecraftmigapiku 5 місяців тому
Hardware design into vertilator and simulator's done. If schematics can be converted to kicad there's even tool to convert schematics to HDL
@ffsireallydontcare
@ffsireallydontcare 5 місяців тому
How can you concentrate on the game when there are all those awesome twinkling LEDs?
@weirdboyjim
@weirdboyjim 5 місяців тому
There are so many LED's on this thing now!
@your_utube
@your_utube 5 місяців тому
My youngest daughter got married on Saturday, I had a horrible chest infection since Saturday and now that I feel better I see this gem of a video in the series and all is well!
@weirdboyjim
@weirdboyjim 5 місяців тому
Glad you liked it! And congratulations to you daughter!
@LeeSmith-cf1vo
@LeeSmith-cf1vo 5 місяців тому
If you put a polarizing filter in front of the light, and another one in front of the camera, rotated 90degrees, it might help reduce the reflections? Honestly though I don't think it's that bad, at least not in this video.
@weirdboyjim
@weirdboyjim 5 місяців тому
That's a clever idea, I actually tried that a while back and it works but it has a drawback. It takes out all the reflections so you use the nice little sparkles of the solder pads etc.. The resulting footage feels flat to me so I'd rather find another way.
@frognik79
@frognik79 5 місяців тому
Blast Processing (TM).
@weirdboyjim
@weirdboyjim 5 місяців тому
I Love the way you push order and it's right there on your desk!
@wChris_
@wChris_ 5 місяців тому
I really dont like the select and start buttons being so high up. Ideally they should go below the Right and X Leds. But thats only cosmetic (and will forever trigger my ocd). You might be able to squeeze the 3 lines going through the perfect spot in between the led pads.
@weirdboyjim
@weirdboyjim 5 місяців тому
The schematics are open source if you want to try your own layout. I'm happy with this one.
@m1geo
@m1geo 6 місяців тому
Oh noes! Glad you respun the PCB. Don't be too hard on yourself. This stuff happens. Look in anything electrical you've bought - bet the PCB isn't V1.0!
@weirdboyjim
@weirdboyjim 6 місяців тому
Yeah, I know. It would be easier if the mistake was bigger, this was just me rushing to get the pcb order out the door.
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 5 місяців тому
Your circuits are very hard to follow where they are just shown as individual chips and a global label. Have you thought of using a bus so you can follow the flow more easier. Would help with debugging the circuit as well?
@weirdboyjim
@weirdboyjim 5 місяців тому
It's really difficult to strike a balance on this. Remember most of this schematic is made in a corner window alongside the breadboard work. Something that many people applauded when I started doing it, but I don't want to jump into videos with a schematic that doesn't relate at all to the stuff people have seen me put together already.
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist 5 місяців тому
@@weirdboyjim Having spent way too many years drawing schematics by hand I find it hard not to use buss for things like address, control and data . Made it easer to draw and follow the flow, the old thing of information flows in on the left and out on the right. The final circuits and PCB's were done by the drawing office. saved me having to know all the standards required for the PCB production etc. I love the videos, so will continue to pause them to get an understanding of the cct operation. keep them coming.
@AJB2K3
@AJB2K3 5 місяців тому
Planned Obsolescence ?
@weirdboyjim
@weirdboyjim 5 місяців тому
8-bit is Eternal!
@AJB2K3
@AJB2K3 5 місяців тому
Oh bummer, that really sucks Well you have to have a failure at some point but at least it wasn't a Magic Smoke mistake.
@weirdboyjim
@weirdboyjim 5 місяців тому
Thanks! But you did see the second board revision right?
@AJB2K3
@AJB2K3 5 місяців тому
@@weirdboyjim Yes and it was back to normal high quality operation.
@rimmersbryggeri
@rimmersbryggeri 5 місяців тому
Is better to learn playing with the buttons reverse and the absolutely dominate when your friends come over for a gaming session.
@weirdboyjim
@weirdboyjim 4 місяці тому
Unfortunately the buttons were not reversed, just the led indicators for them.
@maskloy
@maskloy 5 місяців тому
10
@weirdboyjim
@weirdboyjim 5 місяців тому
On this channel I feel I need to double check the number base before interpreting...
@m1geo
@m1geo 6 місяців тому
37:54 what is going on with the JLCJLCJLC and their serial number? They didn't replace it? 😂😂
@weirdboyjim
@weirdboyjim 6 місяців тому
I double checked my original recording. Looks like I didn't select the option to specify serial location. I've done that before any they spotted it anyway but not in this case. It was still comfortably hidden by the connector though so no harm.
@m1geo
@m1geo 6 місяців тому
@@weirdboyjim Aah that explains it! Nice little board that, James! Keep it up mate!
@bkuker
@bkuker 5 місяців тому
Only at the beginning, really wishing the abxy buttons were in the same location, but rotated to make the two // shapes on the controller.
@weirdboyjim
@weirdboyjim 5 місяців тому
I used the layout that seemed best to me. The designs are open source so you are welcome to have a play yourself of course.
@bkuker
@bkuker 5 місяців тому
@@weirdboyjim No worried, this entire project is a work of art! I've been following along the whole time and love it!
ZX Spectrum, Expansion Port Research
40:45
James Sharman
Переглядів 9 тис.
Output PCB - VGA from Scratch - Part 18
1:22:14
James Sharman
Переглядів 9 тис.
Эта Мама Испортила Гендер-Пати 😂
00:40
Глеб Рандалайнен
Переглядів 3 млн
Voloshyn - ЗУСИЛЛЯ (прем'єра треку 2024)
06:17
VOLOSHYN
Переглядів 587 тис.
Spectrum 48K Bluetooth, load games from your phone!
12:33
Fix or No Fix
Переглядів 3,8 тис.
SPI (Bit Banging)- IO from Scratch - Part 4
30:04
James Sharman
Переглядів 9 тис.
Tile Data - VGA from Scratch - Part 13
1:00:34
James Sharman
Переглядів 15 тис.
Interim Backplane - VGA from Scratch - Part 16
30:37
James Sharman
Переглядів 6 тис.
This 9$ Universal ROM Burner is Open Source!
16:36
Anders Nielsen
Переглядів 31 тис.
Final Peripherals Backplane - Making an 8 Bit pipelined CPU - Part 104
45:26
Framebuffer - VGA from Scratch - Part 3
46:36
James Sharman
Переглядів 21 тис.
I Built a Portable Super Nintendo - Pt1
16:01
Restore Technique
Переглядів 382 тис.
M4 iPad Pro Impressions: Well This is Awkward
12:51
Marques Brownlee
Переглядів 4,3 млн
Which Phone Unlock Code Will You Choose? 🤔️
0:12
Game9bit
Переглядів 6 млн
Vortex Cannon vs Drone
20:44
Mark Rober
Переглядів 13 млн
Creepy Samsung Alarm cannot be turned off 😱🤣 #shorts
0:14
Adani Family
Переглядів 972 тис.