Hi David, the first scope image I sent was between the strobe - isolated ground pin.
Strobe / sync output
Just to clarify, is there anything specific you need to do in the pipeline to enable the strobe pin output? And the device you were using in your test there was a OAK-D Pro W PoE?
Hi David, that'll be the issue, I've been expecting a TTL pulse. Is there a supply line as well I can use for pull-up, or do I need an external supply?
That was the problem, thanks David. Annoying mistake on my part sorry, should have looked at the strobe circuit diagram.
Hi,
how did you solve the issue? What values for a pullup did you use?
@cnolan What values did you use? I'm not sure how you solved the problem finally. It would help us a lot!
@K-LReinhard could you share your setup / script and all the details? Perhaps we can help as well
erik thanks for circling back!
Overall we want to drive an external strobe light. If I'm reading the circuit diagrams correctly this should be possible with the strobe output(decoupled via optocoppler).
Maybe before I describe our setup in details: do I need to explicitly enable the strobe output via python code?
What about the open collector output and the pullup resistance?
For the m8 connector is there a specific color coding which color is the strobe output and isolated gnd(maybe for the included m8 cable)?
Hi K-LReinhard ,
Here's the API for setting the strobe, via CameraControl message:
/**
* Enable STROBE output on sensor pin, optionally configuring the polarity.
* Note: for many sensors the polarity is high-active and not configurable
*/
CameraControl& setStrobeSensor(int activeLevel = 1);
/**
* Enable STROBE output driven by a MyriadX GPIO, optionally configuring the polarity
* This normally requires a FSIN/FSYNC/trigger input for MyriadX (usually GPIO 41),
* to generate timings
*/
CameraControl& setStrobeExternal(int gpioNumber, int activeLevel = 1);
// TODO API to set strobe line directly high/low (not following the exposure window)
// TODO API to set strobe timings, as offsets in relation to exposure window, or fixed duration
/**
* Disable STROBE output
*/
CameraControl& setStrobeDisable();
Example:
colorCam = pipeline.createColorCamera()
colorCam.initialControl.setStrobeExternal(48, 1)
We don't have any color coding, but the pins should be described in HW docs. Thoughts?
Thanks, Erk
After my holiday I got another look; I had also a look at the datasheet of the optocoppler. I've seen that the emitter collector max is 6V. I'm not sure if I always got the polarity right
I think it would be wise to test with another cam(and limited voltage…)
Regarding the code - this should be sufficient to enable the strobe?
colorCam.initialControl.setStrobeExternal(48, 1)
I got something blinking I just ran the demo and got a blinking led - got me thinking. What I was wondering when I do something like this
cam = pipeline.createColorCamera()
cam.setFps(1)
cam.initialControl.setStrobeExternal(48, 1)
cam.initialControl.setStrobeSensor(1)
I don't get a blinking led. When I do something like:
monoRight = pipeline.create(dai.node.MonoCamera)
monoRight.setFps(1)
monoRight.initialControl.setStrobeExternal(48,1)
The led starts blinking with ~1hz. I'm not sure if I haven't understood something fundamentally wrong
Another progress…finally got it. For future readers: With the included M8 cable
Green:= Strobe out
White:= ISO GND
For a 12v based circuit i used a 4.7k Pullup resistor