I thought about this a lot and pullups are everywhere. Having zero external component pullups is very important.
I suggest using TCA9534 plus a 4- or 8-wide resistor network to get tristate/pullup/pulldown capacity on every pin. It will have to be mounted on the bottom side and complicate routing even more, but it's worth the hassle.
Bikeshed: what should we make the pull value? 10k sounds good to me.
The text was updated successfully, but these errors were encountered:
Consider a few channels with individual 0603 resistor or small surface mount 100k trimpot for easy changes.
e.g. Bournes TC33X-2-104E in series with 2.2k to 3.3k resistor to limit lower bound.
I think I'll go with 5k or 10k for revC. I think further revs might use a current source instead of a pullup so you can use a current mirror to set their strength, but I'll need to find a suitable IC and/or make a larger board. I think revC board just doesn't have enough space for configurable pulls.
I think channels not being all equal is a rather bad idea, I value consistency a lot. If they get configurable they should all be.
Yea board space is always a problem. I was not necessarily saying the digi-pots for rev C.
An add-on daughter card to have the digital-pots that mimics cordwood type interconnects using longer tails on the interconnects. Any spare pins on the FPGA? It looked full on the schematic.
It the options are 5k or 10k, a user can always add a resistor externally if need be.
Done. What I ended up doing is adding 1.27mm female pin headers around the resistor network for the pull-ups. The user can then opt to desolder the resistor network and plug in their own resistors (discretes, daughtercard, or whatever).