Page 1 of 1
Standalone SNAC and RAM
Posted: Tue Mar 01, 2022 8:01 am
by Bren McGuire
Hi, I just bought a DE10-nano and thanks to all the advancements in the MiSTer project I don't think I'll need an IO board (also because I have to put the DE10 inside an A600 chassis and I'm not sure about the clearance), but I feel that I still need at least a SNAC port, is there a standalone SNAC available? If it is, how do I attach it to the DE10?
About the RAM: is there any important info I should know or I can just buy any random 128MB module (I think this is the correct size for the NEO GEO core, but what about the Saturn and PS1, do they need more RAM?)?
Re: Standalone SNAC and RAM
Posted: Tue Mar 01, 2022 3:53 pm
by Sigismond0
I wouldn't just buy any random 128MB stick, but as long as it's from a reputable vendor you should be OK. For now, there's no compelling reason to get a second stick for PS1, and Saturn is still too far out to really know if it's going to be needed. Just get a single 128MB stick for now, and maybe sometime down the road get another if it turns out to be necessary.
Re: Standalone SNAC and RAM
Posted: Tue Mar 01, 2022 6:51 pm
by Bren McGuire
Thanks. What about the SNAC, aren't there any standalone adapters?
Re: Standalone SNAC and RAM
Posted: Tue Mar 01, 2022 11:00 pm
by Sigismond0
I'm not aware of any commercial ones, though I think I've seen people say they've wired their own SNAC port directly into the GPIO pins. I can't be of any specific help there, and unless you can find someone that's done it do provide details, you'd have to reverse engineer a solution from the IO board PCBA design.
Re: Standalone SNAC and RAM
Posted: Tue Mar 01, 2022 11:54 pm
by Bren McGuire
Sigismond0 wrote: ↑Tue Mar 01, 2022 11:00 pm
I'm not aware of any commercial ones, though I think I've seen people say they've wired their own SNAC port directly into the GPIO pins. I can't be of any specific help there, and unless you can find someone that's done it do provide details, you'd have to reverse engineer a solution from the IO board PCBA design.
OK, thanks. You've been helpful anyway, in fact you gave me an idea. Here's the PCB design:
download.png
In case someone knowledgeable on this topic will read this: what if I connect the 4 pins from the GPIO to a USB 3.0 port as shown in the picture? I'm not sure about that lone trace with the question mark though.
Re: Standalone SNAC and RAM
Posted: Wed Mar 02, 2022 2:13 am
by amstan
If I were you and wanted to keep this spartan, I would buy a
USB3.0 breakout board with some
header wires.
Bren McGuire wrote: ↑Tue Mar 01, 2022 11:54 pm
what if I connect the 4 pins from the GPIO
In case someone knowledgeable on this topic will read this: what if I connect the 4 pins from the GPIO to a USB 3.0 port as shown in the picture? I'm not sure about that lone trace with the question mark though.
You're missing the other side of the board, perhaps open the main layout/schematic file in the appropriate software.
Re: Standalone SNAC and RAM
Posted: Wed Mar 02, 2022 4:15 pm
by Bren McGuire
Thanks, that's exactly what I need, you saved me a lot of searching and uncertainty.
amstan wrote: ↑Wed Mar 02, 2022 2:13 am
You're missing the other side of the board, perhaps open the main layout/schematic file in the appropriate software.
The other side is this:
download-1.png
But since from this side I cannot see the USB connector I'm a bit lost, I'm not sure about which trace goes where.
Re: Standalone SNAC and RAM
Posted: Wed Mar 02, 2022 7:28 pm
by C-R-T
Look at the schematic instead of the layout. It’s on GitHub and can be opened on the Altium online viewer website.
Re: Standalone SNAC and RAM
Posted: Thu Mar 03, 2022 4:24 pm
by Bren McGuire
C-R-T wrote: ↑Wed Mar 02, 2022 7:28 pm
Look at the schematic instead of the layout. It’s on GitHub and can be opened on the Altium online viewer website.
Screenshot-193.png
Screenshot-194.png
These ones? I'm still not sure about what to do. I can still only identify the top 4 traces.
Also, in the bottom overlay there are these spots called RN12 and RN13 and I'm not sure what to make of them.
Re: Standalone SNAC and RAM
Posted: Thu Mar 03, 2022 4:41 pm
by amstan
Based on your hesitance to look at the schematic (or parse what the RN does) I'd say you probably want to use a normal IO board instead.
Those 100ohm series resistors are probably for signal integrity in order to minimize reflections (or perhaps to lower potential current leaks?). You're also missing the last pin, it's probably just GND, but in the layout it might nto be immediatelly apparent. I also see there's 10k pullups on all the signals.
Yes, what you want to do is probably doable, but not with understanding how to do it and what the implications would be.
Re: Standalone SNAC and RAM
Posted: Thu Mar 03, 2022 5:00 pm
by Bren McGuire
amstan wrote: ↑Thu Mar 03, 2022 4:41 pm
Based on your hesitance to look at the schematic (or parse what the RN does) I'd say you probably want to use a normal IO board instead.
Those 100ohm series resistors are probably for signal integrity in order to minimize reflections (or perhaps to lower potential current leaks?). You're also missing the last pin, it's probably just GND, but in the layout it might nto be immediatelly apparent. I also see there's 10k pullups on all the signals.
Yes, what you want to do is probably doable, but not with understanding how to do it and what the implications would be.
You're right, it'll be a challenge to make it fit inside my Amiga 600 case though (I've already tried the keyboard and it works perfectly (after remapping F12 to F10).
Aside from that, the other reason why I didn't want to get an IO board is the Saturn/PS1 cores: if they'll end up needing the extra RAM won't I have to remove the IO board anyways? In this case I'll be back to square one.
Re: Standalone SNAC and RAM
Posted: Thu Mar 03, 2022 5:33 pm
by amstan
Space savings are a noble goal.
Bren McGuire wrote: ↑Thu Mar 03, 2022 5:00 pm
Aside from that, the other reason why I didn't want to get an IO board is the Saturn/PS1 cores: if they'll end up needing the extra RAM won't I have to remove the IO board anyways? In this case I'll be back to square one.
Wouldn't those same pins be not be available because they go to the ram now? I don't think you can have your cake and eat it too.
Re: Standalone SNAC and RAM
Posted: Fri Mar 04, 2022 12:42 am
by Bren McGuire
amstan wrote: ↑Thu Mar 03, 2022 5:33 pm
Wouldn't those same pins be not be available because they go to the ram now? I don't think you can have your cake and eat it too.
I didn't know that. I guess that in that case I'll have to find another way to use original controllers, thanks for all the help.
Re: Standalone SNAC and RAM
Posted: Fri Mar 04, 2022 2:22 am
by rhester72
a) Yes, you can wire directly to the DE10-Nano. I can provide a map from the USB port to the user I/O pins if needed.
b) No, the user I/O pins and the RAM port are entirely different side-by-side pins and are not related.
Re: Standalone SNAC and RAM
Posted: Tue Mar 08, 2022 6:59 am
by Bren McGuire
rhester72 wrote: ↑Fri Mar 04, 2022 2:22 am
a) Yes, you can wire directly to the DE10-Nano. I can provide a map from the USB port to the user I/O pins if needed.
That'd be great, thank you. Sorry for the delayed reply, I didn't realize there were new messages.
Re: Standalone SNAC and RAM
Posted: Sat Mar 12, 2022 10:24 pm
by rhester72
Bren McGuire wrote: ↑Tue Mar 08, 2022 6:59 am
rhester72 wrote: ↑Fri Mar 04, 2022 2:22 am
a) Yes, you can wire directly to the DE10-Nano. I can provide a map from the USB port to the user I/O pins if needed.
That'd be great, thank you. Sorry for the delayed reply, I didn't realize there were new messages.
Sorry for my delay as well - been working on a few things.
This is the complete pinout including (standard) wire colors - please let me know if anything is unclear.
Code: Select all
Color USB I/O Signal
----- --- --- ------
RED 1 N/C +5V
WHITE 2 2 TX (MIDI out)
GREEN 3 1 I2C SDA
BLACK 4 4 GND (common)
PURPLE 5 8 I2S DAT
ORANGE 6 7 I2S BCLK
drain 7 6 I2C SCL
BLUE 8 5 I2S WS
YELLOW 9 10 RX (MIDI in) [controlled by IO6 on newest boards]
Re: Standalone SNAC and RAM
Posted: Tue Mar 15, 2022 7:13 pm
by Bren McGuire
rhester72 wrote: ↑Sat Mar 12, 2022 10:24 pm
Bren McGuire wrote: ↑Tue Mar 08, 2022 6:59 am
rhester72 wrote: ↑Fri Mar 04, 2022 2:22 am
a) Yes, you can wire directly to the DE10-Nano. I can provide a map from the USB port to the user I/O pins if needed.
That'd be great, thank you. Sorry for the delayed reply, I didn't realize there were new messages.
Sorry for my delay as well - been working on a few things.
No problem, thanks a lot. I have a couple of questions though:
The N/C in USB pin 1 means that I must take the current from a powerline somewhere, right (even directly from the PSU)?
Regarding the pinout, I'm gonna use the wikipedia one: it seems to match with yours but I want to be sure, is it OK? (I also posted a picture of the actual connector and the realtive pins to remove any ambiguity)
Here's the pinout:
Screenshot-202.jpg
And the female A plug:
USB-3-Pins-static.jpg
Re: Standalone SNAC and RAM
Posted: Wed Mar 16, 2022 4:13 am
by rhester72
re: power - yes, you'll definitely need to source +5V. It should be available on the Arduino rail on the other side of the board from the user port.
re: pinouts - to be honest, I'm not 100% certain (it bothers me that our bundles are reversed), but you're right in that mine is 'mirrored' because I was actually working from a male cable end. That being said, there's only four possible combinations to try (RX +/- and TX +/- pairs flipped both ways), so a 6-button Genesis controller (original old-school, not Retrobits!) and a SNAC adapter plus some Duponts should answer that question safely (since they are only data lines).
EDIT: A male cable end because it was plugged into the I/O board at the time of testing, and a Genesis specifically because it's the only one to use all 7 available I/O lines for testing - that plus the 240p test suite (attached) will give you 100% confidence your wiring is correct.
Re: Standalone SNAC and RAM
Posted: Mon Mar 21, 2022 7:04 pm
by Bren McGuire
rhester72 wrote: ↑Wed Mar 16, 2022 4:13 am
re: power - yes, you'll definitely need to source +5V. It should be available on the Arduino rail on the other side of the board from the user port.
re: pinouts - to be honest, I'm not 100% certain (it bothers me that our bundles are reversed), but you're right in that mine is 'mirrored' because I was actually working from a male cable end. That being said, there's only four possible combinations to try (RX +/- and TX +/- pairs flipped both ways), so a 6-button Genesis controller (original old-school, not Retrobits!) and a SNAC adapter plus some Duponts should answer that question safely (since they are only data lines).
EDIT: A male cable end because it was plugged into the I/O board at the time of testing, and a Genesis specifically because it's the only one to use all 7 available I/O lines for testing - that plus the 240p test suite (attached) will give you 100% confidence your wiring is correct.
Thanks a lot, you've been very helpful. Now it's time to source the parts and build it.
Re: Standalone SNAC and RAM
Posted: Mon Mar 21, 2022 8:05 pm
by venice
Have you seen the resistor combination RN12/13/14/15? Don‘t forget them.
Schematics are from the actual IO Board v6.1.
There is no need to use an USB Socket for a SNAC, I think a 9 Pin Sub-D is more reliable.
6BA47209-26E3-49F2-925D-BBEFC08E16EF.png
Re: Standalone SNAC and RAM
Posted: Tue Mar 22, 2022 9:02 pm
by rhester72
I don't want to discount the importance of resistors, but I will say that at least a couple of folks have directly wired Pi pins straight to P7 without obvious issue in the past, I can't imagine SNAC would be much different.
Re: Standalone SNAC and RAM
Posted: Wed Mar 23, 2022 12:23 am
by legacypixels
rhester72 wrote: ↑Tue Mar 22, 2022 9:02 pm
I don't want to discount the importance of resistors, but I will say that at least a couple of folks have directly wired Pi pins straight to P7 without obvious issue in the past, I can't imagine SNAC would be much different.
Apologies for the super handy wavy explanation...
Modern devices often don't actually "set" a signal line to 0 or 1, rather, they can provide a GND and hence a 0, or they can "do nothing." In the nothing case, the resistors tied to Vcc actually do the work of making the signal line go high and hence a 1. With the resistors absent, there's nothing to drive the signal high when the device "does nothing". You might get lucky and have these pullup resistors somewhere else on the line, or have a device that can actually drive the signal high or low, but it's a crap shoot, and violates the rules of this particular design.