open-ephys / acquisition-board

Hardware interface for streaming up to 512 channels of neural data via USB
https://open-ephys.github.io/acq-board-docs/
Other
51 stars 29 forks source link

Pull *down* resistors on digital input #3

Open ckemere opened 10 years ago

ckemere commented 10 years ago

We were debugging camera signaling issues yesterday, and finally discovered that our input source had open-collector logic, and so the pull-down resistors on the TTL lines are problematic. Why pull-down rather than pull-up?

jvoigts commented 10 years ago

We currently dont have a pull-down on the digital in lines - they're wired directly into the level shifter input ( http://www.ti.com/product/sn74lvc4245a ). When we tested the circuit this seemed to reliably default to the low state when nothing was connected to the input, though it probably is far from ideal.

Do you think it would make sense to add space for users to throw in their own pull up/down resistors? My hunch is that it would be easiest to make a small HDMI breakout board for this. There's GND and +5V on the connector so it should be very easy to throw together.

As a side note - ive had issues with my AVT camera here because it uses some optocoupler circuit for output - i'll add the solution to that to the wiki when i have some downtime.

open-ephys commented 10 years ago

That's not true...there are 10k's to ground on all 8 of the HDMI lines (R77 through R84).

There are still the 8 inputs that go directly to the FPGA. You could use those instead if you knock the input down to 3.3V.

jvoigts commented 10 years ago

Oh- my bad. I looked at the sch and missed them because we put them off on the side. I guess we could add a dip switch or something to enable/disable them? How common do you think are cases where a pull down ends up causing problems?

ckemere commented 10 years ago

Dreaming, it would be really nice for us if we could move a large chunk of the I/O away from the actual box. Or alternatively move the headstage interface further away. The dream would be one HDMI with digital data that expands out into the DACs, ADCs, and TTL I/O's that could be in a separate box.

Near term, I think pull-up signalling is slightly more common than pull down. In principle, though, I can put a buffer on the I/O board itself and then it doesn't matter. We may actually switch to the 3.3V direct inputs for the camera anyway given the proximity of camera to plug in box in the ceiling and non-proximity to I/O board.

jvoigts commented 10 years ago

Just did some mockups and i think we can fit 8x 3-way jumpers on the board so we could possibly add the option of switching between pullup / floating / pulldown resistors on a per-channel basis. Think that would make sense?

ckemere commented 10 years ago

I'm thinking that I'll probably end up making an active TTL in (and maybe TTL out) board, with a buffer and maybe a microcontroller to fiddle with inputs. Maybe that makes more sense than adding complexity to the core system?

jvoigts commented 10 years ago

yea, that would be pretty elegant, and it should be pretty simple to make the pcb so that it can still be used as passive ttl breakout board like the current one when the active section is left unpopulated.