Suggestion for a new product - FEZ module

Wow! This idea has gained some serious steam over the last day. Remember the overall design mantra is low cost. It would be very easy to blow right by existing low priced boards on cost with too many features.

  1. If there are any hard to make design decisions or stalemates, lower cost always wins.
  2. Somebody (@ godefroi?) should be ‘project manager’ to keep folks from wandering into the ‘add yet another feature’ black hole of project doom. This person has the final say in all decisions, and no whining once they’re made.
  3. OSH is definitely the way to go, and @ realiser’s SmartiBlox is an awesome starting point.

Go Fezzers!

I think the LQFP breakout is a workable footprint, but I wouldn’t be against something more rectangle. I would like to see two rows of holes on each side and two rows across the top and bottom. That provides flexibility, because if you want yours breadboard-friendly, you solder male pins in one of each of the side rows, and you can solder female headers on top for more connections, or wires directly if that’s your thing.

RST and LDR can be broken out into pins, or even jumpers (which are probably smaller and possibly cheaper than SMT buttons?), or even just holes that could be wired as desired by the end-user. I think MOD could be the same way.

USB I think we wouldn’t want to put in the sides, but it could be put in one of the top/bottom rows and an IDC-to-USB socket adapter could be designed that would allow easy USB use.

Also, I think USBIZI100 is the obvious choice, for a few reasons:

[li]It’s smaller[/li]
[li]It’s cheaper[/li]
[li]If you’re working with USBIZI144 then you’re doing it specifically to get the USB host functionality, and it wouldn’t make much sense to produce a board for USBIZI144 that doesn’t have the associated USB socket.[/li]
[li]If you’re really desperate to get the USB host functionality, it’s available now from the USBIZI100…[/li]

I dont mind the simple low cost “bare bones” square; I think I like having wires, and parts all around. :smiley:

GHI once had a Embedded Master Breakout Board. Just to give you an idea.

So that’s ~35 pins per side…

I don’t think we need to go that long. The FEZ Mini has 12 per side, plus 10 in the UEXT header and another 10 along the top. That’s a total of 44, though some overlap.

I’ve attached an image of what I’ve got imagined. It’d give us 68 pins, which should be plenty for a nice mix of digital, analog, and USB.

If we use normal .1" holes for headers, then one could solder in male or female headers as needed. If the holes were plated, then one could solder headers on top or below, as desired. If that’s not possible, I’d probably go for male headers on the outer rows and female on top on the inner rows and the ends.

There certainly ought to be plenty of space between the headers for the crystal and possibly even LDR and/or RST buttons?

I love the Smartiblox idea. Novel form factor with good design ideas. I love the breakout area !

Also Godefroi’s sample looks pretty good too - I agree with the ability to choose between installing male pins downward facing for breadboarding/sockets, or female upward facing for “free” wiring with jumpers or other connections as you choose (could still be into a breadboard). Alternatively you could choose to put two rows of female headers upward facing, and have the outer ones as long thru-hole “stackable” headers and get the best of both worlds, the ability to connect stuff on the top and the ability to use a breadboard. I’d watch the closeness of the short side pins to the long-side pins, perhaps make more room for them, making the board wider ?

Personally, the USBizi100 decision will make this less relevant to me; not because i think it’s under-specced or anything, but just that I wouldn’t have boards made because I don’t have a couple of these chips sitting in my stockpile, like I do for a USBizi144.

One more question, that may only be food for thought and wouldn’t change the effort here. What about a USBizi based board that has connectors as per a Gadgeteer board? I don’t think it would stretch to the “full Gadgeteer support” (Ethernet missing; not really capable of display) but certainly the connection methods might give us some benefit when it comes to connections?

Perhas there needs to be multiple community efforts here :slight_smile:

With the board as-is (and that’s not a solid layout, just a pbrush mockup with possibly-close pin/chip footprints), it fits on a standard breadboard leaving 2 holes on either side. I got the width from the “boarduino” (20mm). Whether or not a USBizi144 could be fit on a board of this width I don’t know.

The design gives us 68 pins, which I honestly think is plenty. I laid out a list of USBizi100 pins in groups, and here’s what I propose:

group		pins	io_cap	int_cap
ADC/DAC		6	6	2
VBAT		1	0	0
RESET#		1	0	0
I2C		2	2	2
USB		3	0	0
PWM/MODE	6	6	3
CAN1		2	2	2
CAN2		2	2	2
COM1		2	2	2
COM2		4	4	4
COM3		2	2	2
COM4		2	2	2
SDMMC		7	7	7
BL#		1	1	1
SPI1		3	3	3
SPI2		3	3	3

Total		47	42	35

(io_cap means “GPIO capable”, and int_cap means “interrupt capable”)

That gives us 47 pins. Add in 3.3V and GND and you’re still way under budget. There’s another 25 GPIO ports available, 4 of which are interrupt capable. Now I’m tempted to trim the board a bit.

I know my Drawings are my weakest skill… enter the FEZ"square"…

All around the board
#1 the Red blocks are 0.1" header pins
#2 the Green blocks are its equivilent female sockets
#3 arrows show the direction of connections

will just have a single row of 0.1" headers around perimiter.

This will allow connecting it into a pref board on the bottom,and alow access to the same pins on top.

If USBizi 100 and 144 sell about $20.00, adding this should not raise the price alot maybe + 5.00 or 10.00

what a person gets is a tangible USBizi with out dealing with surface mount… and replacing the USBizi should be easy as using a heat gun to unsolder, and simple cleanup of leads with solder wickand other methods, Reinstalling could use solder paste and a headgun; very fast past of the heat gun.

Thats it, hope this helps.

There will be some thing that ‘must’ be on the board with the processor. You will want the crystal(s), mode/ldr buttons, USB connector and possibly the 3V3 regulator. These are all things needed to make the processor module run and things that you do not want long leads for so you will not want to bring then off the board.

What I meant was as a home hacker I have non-standard lengths of header pins/sockets and I cut them to size; that might mean that a .1" grid may not have room for my jagged edges :slight_smile:

Question on “logistics” for the crew, related to this discussion - do you envisage delivering “complete” modules or just PCB with USBizi soldered on?

Crystals and associated caps, yes, USB connector and regulator, no. No switches either. The goal here is to create the “DIP” version of the USBizi, analagous to the cheap, easy-to-work-with DIP versions of the Atmel MCUs. If you want all the infrastructure on the board, then GHI already has the product for you, it’s called the FEZ Mini. I imagine a tiny piece of protoboard/veroboard with a .1" header and USB socket soldered on could serve as the USB interface.

I imagine you’d get the PCB with the USBizi soldered on, along with any other necessary infrastructure (which seems to be a couple of caps and a couple of crystals, one for the MCU and one for the RTC).

You could easily leave out one pin on the short sides… we’ve got plenty of pin budget, I think. We could make it longer if necessary to make up the difference, we’re still a couple of pins shorter than the “boarduino”.

This project isn’t meant to create a “cheaper FEZ”, it’s meant to create the “permanant-installation FEZ”. Where the pros would fab a PCB and mount the USBizi directly, us hobbyists need an easy-to-install and cheaper-than-fullblown-fez “module” so we can use our Panda/Domino/whatever to prototype the next project…

[quote]I imagine a tiny piece of protoboard/veroboard with a .1" header and USB socket soldered on could serve as the USB interface.

But it would likely not work very well. USB has some specific requirements w.r.t. impedance, equal wire length on D+/D- lines, etc. It is not something that would work reliably with perfboard wiring. A micro USB connector is cheap and would be less expensive to include on board than it would cost to rig up something externally.

@ godefroi - I was the one to suggest cheaper is better, but am right with you on the ‘permanent installation’ concept. I’ve got a project that needs a board exactly like this. I’ll have to pull it off the “it’s summertime” shelf now that you’ve unleashed this awesome brainstorm upon us :slight_smile: I’m down for helping however I can to move it along.

Not guys that USB requires a transistor and couple resistors to work and the resistors are of a specific value that you probably do not have in your “resistor drawer” so even if you do not want the USB connector on there to save on space, I suggest you keep those parts on board.

Jeff, USB on these chips run at 12Mhz (PCs run it at 480Mhz, USB3 even 8 times faster!!!) so it is not very critical and can be done on a breadboard or hand wiring over few inches.

Ok this is my final revision… feel free to add or take… its been fun drawing again :slight_smile:


All around the board
#1 the Red blocks are 0.1" header pins
#2 the Green blocks are its equivilent female sockets
#3 arrows show the direction of connections

will just have a two parallel rows of 0.1" headers spaced about 11/16, because this board is not meant for a small breadboard! [more room to be place anywhere]

USB is access host or client, onboard crystals with caps and other needed components.

This will allow connecting it into a proto board or breadboard on the bottom,and alows access to the same pins on top.

[The pins on the botton can be chosen as the most needed or preference, but will also be available at the top with the rest of the pins; all pins accessible.]

If USBizi 100 and 144 sell about $20.00, adding this should not raise the price alot maybe + 10.00 or 20.00

what a person gets is a tangible USBizi with out dealing with surface mount…
This board in not meant for begginers, its for ppl who know the risk of “crossing wires”. :wink:

Thats it, hope this helps.
feel free to change or add.

The square as it is, gives access to the same pins through diffirent sockets in 3 or 4 rows; if you want to keep the board small and low cost, then your going to have to eliminate the [italic]repetitive[/italic] access and just make every single pin count; except the repetitive one like gound and some of the voltage INs
example; so the USBizi100 theres 25 pins on each side; say you place those into 3 rows = about 8 pins per row on each side… the USBizi144 theres 36pin on each side, place those into 3 rows = about 12 pins per row on each side
I havent measured the dimentions but it will look like a little square, [like a FEZmini Squared; not a rectangle]
if more features are placed the price goes up and then you just might get near the FEZ Rhino developer board price.

You don’t need to break out anywhere near all 100 pins on the USBizi100. Here’s a breakdown of the pins you might even consider breaking out:

VDD		1
GND		1
I2C		2
USB		3
GPIO		25
CAN		4
UART		10
BL#		1
SPI		6

Total		74

… so it’s not critical or even useful to attempt to cram 100 pins into the module. Of those 74 pins, assuming a good mix, including most/all of the dual/triple use pins and all the interrupt-capable GPIO pins, you’re still down around the 50 mark, which I think is a reasonable target.

Is there anyone with the Eagle skills to lay this out?

good timing for a new collaborative hardware deisgn website… [url][/url]

I went through the USBizi outputs in detail, and I think we can make do with just the 2x12 headers plus the 2x7 header. It gets us all of the peripherals, and a giant pile of GPIO pins. I’ve revised the rough outline, and here’s a list of pins that could be exposed and where:

	Function	Pins	GPIO	INT
inside rows:
	ENET		10	10	0
	CAN2		2	2	2

	SDMMC		7	7	7
	COM3		2	2	2
	COM4		2	2	2
	PWM5		1	1	1

outside rows:
	SPI1		3	3	3
	DAC/ADC3	1	1	1
	ADC0-2		3	3	3
	SPI2		3	3	3
	I2C		2	2	2

	CAN1		2	2	2
	COM1		2	2	2
	COM2		4	4	4
	PWM1-3		3	3	0
	PWM6		1	1	1

left rows
	VCC		1	0	0
	RESET#		1	0	0
	MODE		1	1	1
	USB		3	0	0
	GPIO		1	1	1

	GND		1	0	0
	BL#		1	1	1
	VBAT		1	0	0
	ADC4-5		2	2	0
	GPIO		2	2	2

It strikes me that this module could/should provide mounting holes. If so, there could/should be two on the far-right edge and at least one on the left. In that case, there could/would be room for a mini-usb jack between the holes, and if we could/should put the other USB components on the board, the jack shouldn’t add much cost on top of that…