10 of the GPIO pins are related to the on-board ethernet:
86 IO60 ENET-MDIO General purpose digital I/O
87 IO59 ENET-MDC General purpose digital I/O
88 IO58 ENET-RX_CLK General purpose digital I/O
89 IO57 ENET-RX_ER General purpose digital I/O
90 IO56 ENET-RXD1 General purpose digital I/O
91 IO55 ENET-RXD0 General purpose digital I/O
92 IO54 ENET_CRS General purpose digital I/O
93 IO53 ENET-TX_EN General purpose digital I/O
94 IO52 ENET-TXD1 General purpose digital I/O
95 IO51 ENET-TXD0 General purpose digital I/O
Are these pins used for the WIZNet module, or for something else? My current pin list has these pins, but none of them are interrupt-capable, and there’s a couple more INT pins that could be included if we didn’t ever need these…
The USBizi has limited memory and putting full TCP/IP stack code will take away almost everything. The Wiznet chip has a “hard wired” TCP/IP stack onboard and the host processor can talk to using sockets.
ok, so who is interested in helping out here? I have basic Eagle skills - anyone who can trump that hands up
Requirements:
USB port - confirmed.
XTAL - confirmed
RTC - route to pins or xtal or ignore?
RESET - route to pins
LDR - route to pins or put jumper?
3v3Reg - ? without means external supply
SD card pins - routed to pins? if so, use Fez standard layout
I’ll help. Also have Eagle skills (but won’t say I trump anyone :)) Just shout where you need manpower.
USB port - confirmed - Mini USB or Micro USB? Mini is easier to find.
XTAL - confirmed
RTC - XTAL on board please - and external pins with resistor for super cap/battery.
RESET - route to pins - next to each other to use a jumper.
LDR - route to pins - next to each other to use a jumper.
3v3Reg - External - this is a “drop-in” module remember.
SD card pins - Yes please. Maybe on bottom of board with big vias as an optional. You can always wire it externally using the big (0.8mm) vias doubling as pin headers.
Oops - if Usb is on, then regulator must be on too. Is a supply from USB 5V through 4 diodes in series an option? It is really just meant for “power while programming” - not to power the overall project the module will be plugged into.
My vote for the footprint will go to SmartiBlox (but I’m prejudiced :))
A more popular choice would be like a Fez Mini - but a long one - 2x40 pin DIL head to tail footprint - so you could use standard DIL sockets for drop-in on breadboard, stripboard or PC board. Maybe even make the board cuttable at 40 pins between the sockets if you don’t need all the extra I/O - so shrinkable back to Mini.
I’m rethinking the idea of the USB. Given that COM1 is easily accessible and MODE is easily accessible, deployment could happen over a serial-to-usb cable easily enough. Don’t get me wrong, I’d like to have it, but space is at a PREMIUM here.
Here’s a mockup of a 25-pin DIL module that would fit in a breadboard. It could be made .2" wider and leave room for one hole on each side (on a standard columns-of-5 breadboard), if necessary. Currently on it are (what I believe to be) the 6 MUST-HAVE components: 2 crystals (1 for RTC, 1 for MCU) and 4 decoupling caps. As you can see, it doesn’t leave a lot of room for anything else, including traces.
I just thought of an idea, however. This design has a LOT of IOs. All of the peripherals are broken out, as well as something like 18 plain-jane GPIOs. What if we lost the inner header on one side? That would leave much more room for things like USB connectors etc.
Realizer… have you attempted to fit the crystals and caps into your Smartiblox form factor? It’s a super tight fit…
The smallest version snaps just the UsbIzi chip (and crystal). The biggest version has everything on - including crystals, Usb, SD, power supply - even LiPo charger etc.
If you do it right, you can snap off the connectors but still have the pins available to mate on a a carrier board.
I like the centipede idea. SparkFun did something similar called a ProtoSnap [url]http://www.sparkfun.com/products/10817[/url]. The only downside is, if you just need, say, the chip, you end up with a lot of spare parts. But if the cost difference is not that much, may not be an issue.
This shot shows the to-scale USB MiniB connector for reference. This of course does not include all the additional parts necessary for USB to function. It’s clear that USB will not fit in the DIP24 form factor without an “overhang”.
Realizer, your centipede, how wide is it? Does it fit in a breadboard or standard DIP socket?
Alright, a few more minutes, another layout. In this version, the INNER row of pins is a standard 24-pin DIP (with rows on .6" centers) that would fit in, for example, the machine pin socket I referenced earlier. Making the board a bit wider does make it less convenient to breadboard, but not impossible, especially if you had the aforementioned socket.
The big news, however, is that making it wider gives room for all the necessary USB paraphernalia. While there’s no regulator (can’t power the board via USB without it), the socket is there. We could even break out the +5V from USB onto a pin, and you could mount your regulator external to the board if you wanted to power the project via USB.
The layout here is just a board with all the right pieces… nothing is in a sensible place. I just wanted to satisfy myself that everything would fit.
All in all, this is a form factor I like. It’s breadboardable, it’s socketable, it’s compact, and it breaks out all the peripherals plus lots of GPIO (including all the interrupt capable ones).
Would anyone like to try their hand at laying this out in Eagle and routing it?
May I suggest a few more things before routing begins?
Rotate the chip 45 degrees - it makes it a lot easier to route all those pins to the headers.
Invert the 16 pin headers so the pin 1’s are where you’d expect them to be if inserted like a DIP package - in other words pin 1 is top left in the inside row… Or is the idea here to plug the board in “upside down” with the chip on the bottom? Might not be a bad idea to then use the other side for all the silkscreen documentation.
Consider making one of the 16 pin headers a 14 pin or 10 pins - so the whole thing has some polarity. This other socket is also a nice one to use to break out buses when you stack modules. You could make this compatible with Spider or UEXT so you can use those modules too.
Leave the inside rows 16 pins each (so it can plug into a DIP socket), but you can add an additional 16 single row pins each side easy on the outside row. I think there’s a better chance that way to get all the pins connected to the 100 pin package.
The 32kHz crystal can be a through-hole type. It can lie over other components if space is an issue. Doesn’t look like it is a problem though.
I think the regulator (SOT-23) will fit on the board if people think it is important to have. A Zener diode could also do the job.
It looks like there is space for an SD socket on the other side of the board (under the chip).
Yeah, I’m working in FreePCB to play with the layout, and I don’t think it allows you to do that. the board should be wide enough now, and that’s probably a really good idea.
I just dropped the headers on without any regard for pin location. I just needed to see where things would go and what would fit. It could certainly be placed upside-down, but then you’d want the USB connector on the top, and you’d need to be sure everything would clear whatever was on the board underneath.
Probably a good idea. Plugging this in backwards could be fatal
I think that would prevent you from rotating the chip… Already we have all the peripherals plus 18 GPIO broken out. That only leaves something like 6 GPIO unconnected. If you connected a SD socket underneath (not a bad idea, cost permitting), then you’d actually have pins unused.
If space wasn’t an issue, it’d come down to cost (for me). If it was included, I’d want a 5V VIN/VOUT pin included in the design. I’d want to be able to power the module via the 5V or the 3.3V depending on what voltage I had available.
I like the idea, assuming it doesn’t add much to the cost.
maybe they bought a reel of those crystals(10000?) and use it everywhere. Sometimes it is cheaper to standardize on parts than to have different parts for every product, thus buying small crystals just for the mini would not make financial sense…
I think there is even 3mmx2mm crystals. Look around…