Tuesday, March 10, 2009

From Shenzhen, With Love

Got the boards yesterday. Here's a nice pic of my pcb alongside an original snes cart pcb, competely with educational labels (click to enlarge):

I got 5 boards and I started testing the basic stuff. you can see in the picture that i've populated the board so far with the regulators and the usb port. I am able to power the board over usb and the regulators give off the right voltages (3.3v and 1.2v). So far so good.

I tried to put on the FPGAs though, and that was a nightmare. The thing has so many pins, and they're so close together. my first board try was an absolute disaster. My second try went better, but apparently i shorted the 1.2v supply vcc and ground. From visual inspection of the board it seems like the relevant pins are unconnected, so I'm not sure what's wrong. Maybe I fried the FPGA?

I'm tempted to just try again and potentially torch another board but I don't want to waste the 3 good bords that I have left. I might be able to get access to a hot-air rework station which would be easier to deal with than just a soldering iron, I think. There's also the griddle/toaster oven option. I'm going to e-mail the guy in my building who has the hot-air station and see what he thinks (or see if he even responds to me).

23 comments:

  1. Looks pretty cool. Good luck with the soldering. Somehow Kevin Horton pulled it off with his FPGA NES:
    http://www.tripoint.org/kevtris/Projects/console/index.html

    Are the USB port and PIC going to be a part of the final product? RetroZone's PowerPak for the NES apparently made do with the NES's CPU as opposed to a new microcontroller on the cart. Also, I think I remember development versions of the PowerPak having a USB port on them, but the final product doesn't have one.

    ReplyDelete
  2. @Luke,
    USB is for power.
    the PIC is to load the 'code' from the SD card to the FPGA.. so you can easily update and or replace the code...

    ReplyDelete
  3. This comment has been removed by the author.

    ReplyDelete
  4. Cool, it even has its own lockout chip!

    Now about saving games:
    -Can it store saves?
    -In what way does it save? (SD card?)
    -Will the saves be compatible with PC SNES emulators?

    ReplyDelete
  5. The PIC has a few functions.
    - Like Icekiller said, the PIC allows the FPGA to be upgradable through the sd card. It's sort of misleading to say that though. Really, every time the cart boots, the firmware is loaded from the sd card.
    - The PIC can allow you to access the sd card as a drive on your computer. during this mode, usb powers the device
    - The usb port can also be used to control the cart as a hardware debugger. in this mode, the snes powers the device.

    really, i've only begun work on the first of these modes, but the PIC is definitely there for a reason.

    I can't get a close enough picture of the powerpak pcb to see what they're doing. my guess is that they just load the firmware from a serial PROM and it's not user upgradable.

    For savegames, I plan to store them temporarily in one of the banks of SRAM, and then sync that back to the SD card. I don't know much about how emulators store saves, but I would suspect that the saves will be compatible with emulators. If not, I can write a simple conversion app.

    kevin horton has a really cool project, but I am clearly not as skilled as him :)
    I've been experimenting with a toaster, and I am not confident enough to use it to assemble these boards.

    What I am doing now is ordering an SMD stencil for the FPGA and I've gotten the go-ahead from the WIMS lab here at U of Michigan. I can use their expensive reflow oven. Which is great. The guy told me that it would be really tough to use a stencil for the whole board. I think he said that aligning the stencil would be almost impossible. I don't understand why, but he is an expert. He was telling me about how he calibrated wave soldering stations and all sorts of crazy things, so I trust his judgement.

    Of course, I don't know what i'm going to do if this all works out. I still need to solder the other tiny pitch components. but they aren't nearly as many pins each, so I think I might be ok to do them by hand. Surely I've mangled enough FPGAs to know what /not/ to do...

    ReplyDelete
  6. Thanks for the info, also, where did you get your pcb's made?

    ReplyDelete
  7. myropcb

    for custom spec pcb orders (in my case, thinner than standard), it was the cheapest i could find. the boards came out great.

    ReplyDelete
  8. Hmm, they are in canada, im inn usa...
    Thanks anyway. Off to google for me!

    ReplyDelete
  9. i'm in the usa too, it doesn't really matter. the boards ship from shenzhen, china.

    ReplyDelete
  10. This comment has been removed by the author.

    ReplyDelete
  11. Hi, why you say From Shenzhen, With Love ?
    You're from Shenzhen ? I'm in Hong Kong. I can help to solder component to the board.

    ReplyDelete
  12. oh no, sorry. I ordered the boards from shenzhen. I live in Michigan (USA) right now.

    ReplyDelete
  13. This looks realy promising, and is EXACTLY what I've been searching for. Will this be something that you will be willing to sell to us that don't understand how to solder and so on? If so, you will be the hero in the 16-bit-corner on the web!

    ReplyDelete
  14. @Thomas I may sell some in the future. Keep in mind this is still the design phase.

    If you really can't solder, the biggest problem is going to be the lockout chip. I don't know if I really have the resources to be acquiring/selling them. If you've modded your SNES to disable the lockout, then this won't be a big deal. If you won't do that, and you won't desolder your own lockout chip from another cart, then... I'm not sure.

    Maybe we can work something out. I'll figure it out when I have a working product :)

    ReplyDelete
  15. Of course! The lockoutchip is needed.. Have you been able to test it on both PAL and NTSC-consoles yet? If you are in need of some pal-stuff, just let me know, and i'll be more than happy to help out!

    ReplyDelete
  16. @scottjg
    add a connector for cartridges and loop it through to a 'real' card..

    ReplyDelete
  17. @Icekiller Where can i get a cart connector that isn't from an existing SNES?

    ReplyDelete
  18. @Thomas I don't have a PAL console, but it should "just work". I am nowhere near the point where I am ready to be testing much of anything but I'll keep your offer in mind.

    ReplyDelete
  19. How much "thinner than standard" is the pcb?

    ReplyDelete
  20. i measured the cart edge at .46 inches with a micrometer, but the edge pins were spaced in metric so i think the cart edge is probably in a metric size too. I would guess 1.2mm (which is what you get when you round up from the conversion). This size seemed to fit ok in my snes.

    ReplyDelete
  21. Thanks for the info. If you don't mind me asking, how much did you pay for the raw pcb fabs from Myro?

    I had a similar idea as this except I had planned to use a xilinx FPGA and a silicon devices 8051 uC. The layout I had planned was almost identical too. Congrats for getting it working!

    ReplyDelete
  22. i think it was like roughly 180$ for 5 boards(?) That included electrical testing (it's cheaper without it).

    ReplyDelete
  23. Hey ScottjG I need to talk to you, is there any way that we can talk through email?

    ReplyDelete