Unsure about pin placement on ArduCam Pan-Tilt kit with RPi 3b+, getting 'make' error 'no source target'

Hey everyone, I just got the ArduCam Upgraded Pan-Tilt Platform Kit for my Raspberry Pi 3b+ and I’m hitting a wall trying to get it set up. Two problems:

First, I can’t figure out the GPIO pinout for the PTZ driver. The build instructions that came with it don’t have a pin diagram specific to the Pi 3b+, and I’ve been searching YouTube for a walkthrough but nothing seems to match my board revision.

Second, I went ahead and tried the software side anyway. I cloned what I think was the right repo and ran make, but it immediately fails with:

make: *** No targets specified and no makefile found.  Stop.

Not sure if this is an no source target type of error or something else. I’m kind of stuck. Anyone got this working on a 3b+?

Welcome to the forum! Let’s work through both issues.

For the hardware side — the PTZ driver on this kit communicates over I2C, so you need to use the Pi’s dedicated I2C pins. Here’s the wiring:

  • PTZ VCC → RPi 5V (Pin 2 or 4)
  • PTZ GND → RPi GND (Pin 6, 9, 14, etc.)
  • PTZ SDA → RPi SDA — this is GPIO 2 / Pin 3
  • PTZ SCL → RPi SCL — this is GPIO 3 / Pin 5

Before anything else, make sure I2C is enabled. Run sudo raspi-config, go to Interface Options → I2C → Enable, then reboot.

As for the make error — that usually means you’re running it from a directory that doesn’t contain a Makefile. Which repository did you clone, and what directory were you in when you ran make? That’ll help narrow it down.

Thanks for the quick reply. I just wired it up per your pinout — that makes way more sense now, I had no idea it was an I2C device. I’ve enabled I2C through raspi-config and rebooted.

For the software part, I honestly can’t remember which repo I cloned — I was following a few different tabs and might have grabbed the wrong one. I was running make from the top-level directory of whatever I cloned. Still getting the same error though, even after double-checking I2C is enabled.

What’s the actual repo I should be using?

That explains the make error then — wrong repo and wrong directory.

The pan-tilt kit uses a PCA9685 PWM driver chip to control the servos over I2C. The correct repository is the ArduCAM PCA9685 one:

git clone https://github.com/ArduCAM/PCA9685.git
cd PCA9685/example/rpi
sudo make clean && sudo make
sudo ./run_servo

The key detail is that the servo example lives in the PCA9685/example/rpi subdirectory — that’s where the actual Makefile is. If you run make from the repo root or anywhere else, there’s nothing to build, hence the “no source target” / no makefile error.

Give those commands a shot and let me know if the servo test fires up.

That did it! Cloned the PCA9685 repo, cd’d into example/rpi, ran the make commands and the servo test started right up. The pan-tilt is responding to the test sequence now.

I feel a bit dumb — I was probably in completely the wrong directory the whole time. Really appreciate the help, thanks!

No worries, it’s a common gotcha. Just to recap the root cause for anyone who finds this thread later:

  • The make “no source target” error was happening because make was being invoked from a directory with no Makefile. The PCA9685 servo example and its Makefile live specifically under PCA9685/example/rpi/. Running make from the repo root or any other directory won’t work.
  • On the hardware side, the PTZ board talks I2C, so SDA and SCL must go to GPIO 2 (Pin 3) and GPIO 3 (Pin 5) respectively — not random GPIOs — and I2C needs to be enabled in raspi-config.

Glad you got it sorted!