Standardizing an SPI module pinout: SPI-10
Re: Standardizing an SPI module pinout: SPI-10
I just checked and it looks like SPI-10 would be sufficient to connect the popular ENC28J60 SPI ethernet controller, so for systems with enough RAM and software this could be a useful addition.
http://ww1.microchip.com/downloads/en/D ... 39662e.pdf
http://ww1.microchip.com/downloads/en/D ... 39662e.pdf
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: Standardizing an SPI module pinout: SPI-10
I have my first run of SPI-10 boards made, the revision per the final spec (two posts up) of the flash memory module for W25X40CL, 25VF016, 25VF032, 26VF032, 25VF064, 26VF064, CY15B104Q, or any other SPI flash ICs in narrow or wide SO-8 packages with the same pinout. (The 32's are four megabytes, and the 64's are eight.)
Here in the picture are:
Granted, 4MB or 8MB is very little storage compared to what comes in CF of SD cards; but it's a lot for a 6502 system where you won't be storing and watching videos or doing photo editing and probably won't even be listening to music on it; but the home-made modules are much easier to work with in terms of writing your own software drivers, and also a lot cheaper than the standard consumer-electronics memory cards. You can make your own file system, or use them with no file system at all (as in my first use of one, for recording audio, in a loop). They are not as small as microSD.
For my own use, I might coat these in epoxy again for protection. Or maybe not.
Here's a screenshot from the gerber viewer. It does not show the holes, but does show the copper layers, soldermask, etc..
and here's the schematic. The socket is viewed from the back, not looking into the holes. It's like looking into the pins it plugs onto.
I got 264 boards made at a super low price, obviously far more than I have any personal use for. I'll make them available to others. The price of the bare board will be well below that of the IC, probably even including shipping if it's to U.S. addresses. As for selling pre-assembled units: The amount of assembly time required is fine for small quantities for personal use, but if I assemble them for others, I'd probably need to charge more than they will want to pay; so I might just sell the bare boards, with an exception for the few customers who can't see well enough to assemble one, or have other limitations. I still need to figure out the details, which I plan to apply to more future boards as well. Input invited.
I want to re-visit the consortium idea in another topic, where various ones of us cooperate to make compatible modules to facilitate computer-building for the group.
Here in the picture are:
- upper-left corner: the dual-row socket, stood up on end (neither keying position blocked yet)
- center-left: bare board, top
- next to the right of it: a completed assembly, bottom side (showing 1206-size 0.1µF bypass capacitor)
- further to the right: two completed assemblies, top side, with labeling area still blank, one with and one without the shunt on the 90° 2-pin header for write-protect
- top center: CF (Compact Flash) card for size comparison
- bottom center: SD card for size comparison
Granted, 4MB or 8MB is very little storage compared to what comes in CF of SD cards; but it's a lot for a 6502 system where you won't be storing and watching videos or doing photo editing and probably won't even be listening to music on it; but the home-made modules are much easier to work with in terms of writing your own software drivers, and also a lot cheaper than the standard consumer-electronics memory cards. You can make your own file system, or use them with no file system at all (as in my first use of one, for recording audio, in a loop). They are not as small as microSD.
For my own use, I might coat these in epoxy again for protection. Or maybe not.
Here's a screenshot from the gerber viewer. It does not show the holes, but does show the copper layers, soldermask, etc..
and here's the schematic. The socket is viewed from the back, not looking into the holes. It's like looking into the pins it plugs onto.
I got 264 boards made at a super low price, obviously far more than I have any personal use for. I'll make them available to others. The price of the bare board will be well below that of the IC, probably even including shipping if it's to U.S. addresses. As for selling pre-assembled units: The amount of assembly time required is fine for small quantities for personal use, but if I assemble them for others, I'd probably need to charge more than they will want to pay; so I might just sell the bare boards, with an exception for the few customers who can't see well enough to assemble one, or have other limitations. I still need to figure out the details, which I plan to apply to more future boards as well. Input invited.
I want to re-visit the consortium idea in another topic, where various ones of us cooperate to make compatible modules to facilitate computer-building for the group.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: Standardizing an SPI module pinout: SPI-10
If I understand this it is basically a breakout board that adapts a SOIC-8 to your socket spec. It includes a decoupling cap and possibly a 3.3 volt regulator?
But bit banging SPI is the host processors job.
But bit banging SPI is the host processors job.
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: Standardizing an SPI module pinout: SPI-10
Yes, it adapts the flash chip to the socket spec, and can be swapped out in a second or two.
I just added the schematic to my post above. There's no regulator on the module. This one is for 3.3V SPI-10. One of the holes in the socket (when assembled) is plugged to keep it from getting plugged into a 5V SPI-10 port. The spec (above, four posts up) shows either pin 3 or pin 4 of the port cut or removed on the master, for 5V or 3.3V, respectively. One of the goals was to keep the modules really simple, in order to reduce the size, cost, and assembly time so it's practical to build up many different modules for different uses; so rather than burdening every single module with voltage-translation circuitry for the signal lines, the master has separate SPI-10 ports for 3.3V and 5V, and the master has the voltage-translation circuitry if any is needed. If you only expect to use one voltage, there's no need to have ports in both voltages; and if the voltage you want (like 3.3V for the flashes which are not available in 5V and the master works at the same voltage, there's no need for voltage-translation circuitry at all.
Bit-banging is one way to get the SPI-10 signals, and it is very easy to do with any I/O port (unlike trying to bit-bang RS-232 which has strict timing requirements). There's also Daryl's 65SPI IC that he sells which is a 6502-bus-compatible IC that does all the shifting and so on internally, relieving the processor of that burden and increasing the communication speed. Some people will do the SPI signaling in programmable logic, or by using a microcontroller. So far, with the 6502, I myself have only done it by bit-banging.
I just added the schematic to my post above. There's no regulator on the module. This one is for 3.3V SPI-10. One of the holes in the socket (when assembled) is plugged to keep it from getting plugged into a 5V SPI-10 port. The spec (above, four posts up) shows either pin 3 or pin 4 of the port cut or removed on the master, for 5V or 3.3V, respectively. One of the goals was to keep the modules really simple, in order to reduce the size, cost, and assembly time so it's practical to build up many different modules for different uses; so rather than burdening every single module with voltage-translation circuitry for the signal lines, the master has separate SPI-10 ports for 3.3V and 5V, and the master has the voltage-translation circuitry if any is needed. If you only expect to use one voltage, there's no need to have ports in both voltages; and if the voltage you want (like 3.3V for the flashes which are not available in 5V and the master works at the same voltage, there's no need for voltage-translation circuitry at all.
Bit-banging is one way to get the SPI-10 signals, and it is very easy to do with any I/O port (unlike trying to bit-bang RS-232 which has strict timing requirements). There's also Daryl's 65SPI IC that he sells which is a 6502-bus-compatible IC that does all the shifting and so on internally, relieving the processor of that burden and increasing the communication speed. Some people will do the SPI signaling in programmable logic, or by using a microcontroller. So far, with the 6502, I myself have only done it by bit-banging.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: Standardizing an SPI module pinout: SPI-10
Thanks, it will be interesting to see what you do with it.
Re: Standardizing an SPI module pinout: SPI-10
GARTHWILSON wrote:
..but the home-made modules are much easier to work with in terms of writing your own software drivers.
GARTHWILSON wrote:
I got 264 boards made at a super low price, obviously far more than I have any personal use for. I'll make them available to others. The price of the bare board will be well below that of the IC, probably even including shipping if it's to U.S. addresses. As for selling pre-assembled units: The amount of assembly time required is fine for small quantities for personal use, but if I assemble them for others, I'd probably need to charge more than they will want to pay; so I might just sell the bare boards, with an exception for the few customers who can't see well enough to assemble one, or have other limitations. I still need to figure out the details, which I plan to apply to more future boards as well. Input invited.
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: Standardizing an SPI module pinout: SPI-10
unclouded wrote:
GARTHWILSON wrote:
I got 264 boards made at a super low price, obviously far more than I have any personal use for. I'll make them available to others. The price of the bare board will be well below that of the IC, probably even including shipping if it's to U.S. addresses. As for selling pre-assembled units: The amount of assembly time required is fine for small quantities for personal use, but if I assemble them for others, I'd probably need to charge more than they will want to pay; so I might just sell the bare boards, with an exception for the few customers who can't see well enough to assemble one, or have other limitations. I still need to figure out the details, which I plan to apply to more future boards as well. Input invited.
I'll look into getting a quantity of 10-position sockets. They'll be used for other SPI-10 modules anyway. So far for my own use however, I've just been cutting sections off longer socket strips and filing the ends down smooth and square, which again is fine for just a few for personal use but has been too labor-intensive to do in quantity.
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: Standardizing an SPI module pinout: SPI-10
GARTHWILSON wrote:
unclouded wrote:
Would it be economical to include the parts along with the board, i.e. a kit rather than a finished product? I'd like a few for sure.
GARTHWILSON wrote:
I'll look into getting a quantity of 10-position sockets. They'll be used for other SPI-10 modules anyway. So far for my own use however, I've just been cutting sections off longer socket strips and filing the ends down smooth and square, which again is fine for just a few for personal use but has been too labor-intensive to do in quantity.
When you're cutting and filing, do you always lose one pin position to the cut? How do you make it square? I always end up with a bow in the end no matter how carefully I sand the end.
- GARTHWILSON
- Forum Moderator
- Posts: 8775
- Joined: 30 Aug 2002
- Location: Southern California
- Contact:
Re: Standardizing an SPI module pinout: SPI-10
unclouded wrote:
I suppose the male header could be left out since (unless they can be sourced in 2-way then) it would be labour to cut two positions off from a longer length.
Quote:
The jumper would be nice though. I have much more in the way of R/A 40-way male headers on hand than jumper blocks. I'd be interested in whatever's going for the chips. If there's 6502 code to drive them then that would be awesome, otherwise a data sheet will be fine since they can't be that different from other SPI flash memories that I've integrated with.
Again, I'm using the 25VF032 just because I got some and developed code for them before they were discontinued. You're welcome to my code (in fact, maybe I'll just post it on my website), but I imagine you'll want to use the newer, current-production 26VF... which has some small differences in how you talk to them. The PCB can handle any of the 25VF's or 26VF's.
Quote:
GARTHWILSON wrote:
I'll look into getting a quantity of 10-position sockets. They'll be used for other SPI-10 modules anyway. So far for my own use however, I've just been cutting sections off longer socket strips and filing the ends down smooth and square, which again is fine for just a few for personal use but has been too labor-intensive to do in quantity.
My apologies. I have not looked into the pricing yet. I still need to do that. I'll look into types with and without the external key. I've bought directly from Samtec before. They let you do that, or at least let businesses do that. I do have a legitimate business, although it's just for fun. It pretty much pays for itself but I don't make any money at it. My job for income is separate. They know it's not possible for a distributor to stock every combination of types, of numbers and lengths of pins, plating options, etc., so they make them up when you order (if you order enough to make it worth setting up the machine). Come to think of it, I haven't checked my own stock yet! I have thousands of pin headers and sockets. With some luck, I won't have to buy any! (I estimate that I have between a quarter and a half million parts here at home in my office and garage.)
Quote:
When you're cutting and filing, do you always lose one pin position to the cut?
Yes, partly because the Dremell cut-off wheel takes away some thickness.
Quote:
How do you make it square? I always end up with a bow in the end no matter how carefully I sand the end.
I'm just careful to keep the socket perpendicular to the file, and it comes out pretty good.
Happy Thanksgiving!
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
Re: Standardizing an SPI module pinout: SPI-10
This reminds me of PMod interfaces used on Digilent and other FPGA development boards. They use either a 6- or 12-pin configuration, arranged 1x6 or 2x6. See https://www.digilentinc.com/Pmods/Digil ... cation.pdf
I'm going to add to this an unrecognized "type 7" pinout, for running IEEE-1355 / SpaceWire serial interfaces:
This allows self-clocked, yet asynchronous, peer-to-peer communications between modules. This is intended to link computers together, not slave peripherals.
I'm going to add to this an unrecognized "type 7" pinout, for running IEEE-1355 / SpaceWire serial interfaces:
Code: Select all
1 DO Output
2 SO Output
3 DI Input
4 SI Input
5 GND
6 3V3
- barrym95838
- Posts: 2056
- Joined: 30 Jun 2013
- Location: Sacramento, CA, USA
Re: Standardizing an SPI module pinout: SPI-10
Someone on a different forum told me that the designer of the USB interface died. At the funeral, they were having problems putting him in the ground, so they had to flip the coffin over, and all was well.
Thanks ... I'll show myself out ...
Mike B.
Thanks ... I'll show myself out ...
Mike B.
Re: Standardizing an SPI module pinout: SPI-10
I always have to flip the USB connector over twice before it fits.
Re: Standardizing an SPI module pinout: SPI-10
Arlet wrote:
I always have to flip the USB connector over twice before it fits.
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html
https://laughtonelectronics.com/Arcana/ ... mmary.html
Re: Standardizing an SPI module pinout: SPI-10
Dr Jefyll wrote:
Arlet wrote:
I always have to flip the USB connector over twice before it fits.
- BigDumbDinosaur
- Posts: 9428
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: Standardizing an SPI module pinout: SPI-10
barrym95838 wrote:
...so they had to flip the coffin over, and all was well.
x86? We ain't got no x86. We don't NEED no stinking x86!