Hi all, I’m trying to manually control the IR-cut filter motor on an Arducam camera from a Raspberry Pi 4B GPIO pin. The camera has two IR assemblies mounted on the left and right sides of the board. I don’t have any code yet. My plan is to remove the photo sensor, wire ground from the Pi to the ground connection on the back of the camera board, and connect the IR signal pin on the back of the camera board directly to a Pi GPIO pin.
A few questions: Is the current required by the 3.3V GPIO pin within the Raspberry Pi 4B GPIO specs? Why do the examples I’ve seen use wiringPi instead of the standard RPi GPIO library — can’t I just set the pin high or low? That seems like preference. Are the photosensor, IR, and ground connections on the camera board basically connected in parallel, and is that why the photosensor has to be removed when using the IR and ground pins for manual control? Does anyone have a wiring diagram showing how the photosensor, IR, and ground are wired for IR-cut control? Also, does the two-pin connector from the camera to the camera PCB need to stay connected either way?
Thanks for laying that out. To make sure I give you the right answer for your exact board, can you confirm the camera model and board revision? There are a few IR-CUT variants and the wiring notes differ slightly between revisions. Your planned approach is in the right direction — remove the photo sensor, tie the Pi ground to the camera board ground, and drive the IR signal pin directly from a GPIO. I’ll verify the current limits and the wiring once I know which board you have.
Sure. It’s the Arducam Day/Night Vision Camera with IR-CUT (OV5647 5MP, 1080P) for Raspberry Pi. Board revision is UC-439 REV D. It came with two IR assemblies and two heatsinks for those assemblies.
Thanks, that’s the UC-439 REV D IR-CUT camera. Here’s what I can confirm on your questions:
GPIO current: the IR signal pin draws very little current, well within the Raspberry Pi 4B GPIO limits. A single GPIO can source/sink up to 16 mA, and the total across all pins is 50 mA max. The IR-cut motor isn’t being driven directly from the GPIO signal, so this is fine.
Library: yes, you can use RPi.GPIO or gpiozero and just set the pin high or low. wiringPi is another popular option, but it’s really personal preference. The standard Python libraries are often the easiest to start with.
Photosensor: remove it. It’s part of the automatic light-based switching circuit, and if it stays in place it can interfere with the manual signal from the Pi. Driving the IR signal pin directly from GPIO effectively bypasses the photosensor-based auto switching.
For the wiring diagram, check the Arducam documentation page — it shows the photosensor/IR/ground layout. I still need to confirm the two-pin connector question for this revision.
Thanks. Follow-up on the Raspberry Pi 4B vs 3B difference. I found a reference setup for a Raspberry Pi 3B where the camera LED controls the IR-cut assembly, and the pictures show the photocell removed plus a 470 ohm resistor. I’ve attached the two reference pictures I’m looking at. For the 4B, do I need to do anything with that 470 ohm resistor, or is removing only the photocell enough? Also, can other lenses be used with this camera, and if so where can they be bought?
Thanks for the pictures. To summarize where things stand: for manual IR-cut control on this board, removing the photocell and driving the IR signal pin from the Pi GPIO is the confirmed approach, and the GPIO current draw is within the Pi 4B limits. The 470 ohm resistor question is specific to that 3B reference — I need to check the UC-439 REV D documentation on whether that resistor is required on the 4B or whether photocell removal alone is enough, so hold off on that until I confirm. I also don’t have a definite answer yet on alternative lens compatibility for this exact board; I’m checking that as well and will follow up. The two-pin connector question is still open too. In the meantime, the safe workaround is to remove the photocell, wire ground and IR to the Pi, and use short GPIO high/low toggles to test switching.