The SlothCam is a motorized camera platform that moves up and down a fixed climbing rope and allows for smooth, uncut footage of sport climbing. This device features a spot for a DJI Osmo 2 and can be controlled wirelessly with a simple potentiometer. Development for this took a long time and there were a lot of issues that I ran into which I’ll go over below. Before reading through the rest of this project, check out the demo video below to see it in action.
I built this device with the idea of filming sport climbing. Sport climbing is climbing on a rope and often routes are 50-100 feet tall. This makes it challenging to film interesting videos because shooting from the ground is not an appealing angle and shooting on a fixed line (a rope that is attached to the anchors at the top of the wall and doesn’t move) is hard because you need to put down the camera to move upwards and keep up with your climber. The idea with a device like the SlothCam was to allow climbers to get smooth uncut footage of their climbs.
The motors were arguably the most important part of this project. I needed something that could move slowly and allow for precise movements. Stepper motors were the obvious choice then. I also liked the position holding ability that stepper motors have. Often times with sport climbing, the climber will be in one position resting so it’s important that the device could stay in one spot on the rope. I used these stepper motors from Sparkfun Electronics because they had an advertised holding torque of 125oz. in so it seemed like enough to lift the device on a rope. I bought two of them because I felt like the extra power from a second motor would be nice and they would balance out on either side of the platform.
The wheels were plastic rounded pulley wheels from McMaster-Carr. This device had 4 of them and guided the rope in a zig zag path to increase tension and keep the device from falling. The two wheels attached to the motors were coated in rubber using Plastidip liquid rubber coating.
Gearing was what allowed the motors to move the wheels with the proper amount of torque needed. Small, 18 tooth gears with set screws were attached to the shaft of the motor. Larger 48 tooth gears drove the wheels. These gears also had set screws and a 1/4” set screw hub was bolted to the wheel. Both the gear and the wheel were then attached to a 3” long 1/4” diameter metal shaft.
The stepper motors are controlled by a standard Arduino Uno. Programming the stepper motors is very easy using Sparkfun’s Big Easy Driver. Wiring for this was very simple. The stepper motors had 4 wires (blue, red, green, black). On the Big Easy Driver, the black wire went into A+, green into A-, Red into B+, and blue into B-. Rather than soldering the wires, I chose to use 3.5mm screw terminals so I could easily disconnect it. GND and M+ connected to this 24V power supply. On the other side of the board, the only pins needed were GND, STEP, and DIR. GND went to GND on the Arduino Uno, STEP went to pin 9, and DIR went to either pin 5 or 6. This pin is set to either HIGH or LOW and determines the direction of the motor’s rotation. STEP alternated between HIGH and LOW at varying intervals and controlled the motors steps. Low delays between HIGH and LOW meant higher motor speeds.
The wireless controller was originally supposed to be based off an Arduino Nano but after working with it for a bit, the port wouldn’t show up in my computer so I wasn’t able to upload code to it. I ended up just using another Arduino Uno. The arduinos communicated to each other via NRF24L01 transmitters. A lot of wires are required to connect the transmitter to the Arduino in this order below.
NRF24L01 – Arduino Uno
GND – GND
VCC – 3.3V
CS – 7
CE – 8
MOSI – 11
MISO – 12
SCK – 13
The platform was laser cut out of MDF. It includes spots for the Arduino Uno, both big easy drivers and motors and each of the wheels. The platform was designed to allow the user to thread the middle of the rope through the device onto the wheels so that you wouldn’t have to feed one end in and pull it all the way through. It worked in theory but I forgot to account for bolts that held both sides together and so it didn’t work quite how I wanted. A honeycomb pattern was added to part of it to decrease weight as much as possible and the placement of the gimbal allows a little extra support and keeps it centered side to side on the device.
The original plan was to build a device that could carry a DJI Ronin S and a Sony A7iii but that was too bulky and the motors couldn’t handle that much weight so I opted for a DJI Osmo 2 which would allow me to use my iPhone Xs as the camera. The DJI Go app also allows for active tracking which makes sure the camera is pointed towards whatever you choose. This got rid of the need to be able to control the gimbal from the controller and made it much simpler to build and operate.