How to align servo arms?

He everyone. I have an Osr2 that somehow got uncalibrated, and the zero posistion leaves the “head” titled.

How do I correct this, to re-align the arms so it is flat?

I tried Haptics Connect, where I can connect to the device, but I see nothing when I press “send configuration”.

any tips? (This is on the original firmware from tempestmax).

from Build Insturctions with HAPTIC CONNECT
(OSR2 Fleshlight Stroker Robot with Haptics Connect by TempestMAx - Thingiverse)

  1. Connect up your USB-C power supply to the USB-C power port on your OSR2 and make sure that the power switch, if you have one, is set so that the Servo PDB has power. You will see a little LED light up on the Servo PDB showing that the servos are powered.

  2. Now it’s time to configure the OSR2 firmware. To do this click the “Configurator” tab at the top of the page.
    (…)
    Click “Send Configuration”. You will see scrolling green text below that confirms that the new configuration has been uploaded to the ESP32. You will need to re-boot the ESP32 for these changes to take effect. To do this press the “EN” button on the base of the device again.

  3. Now it’s time to align the OSR2’s arms. With the power on and the servos in their commanded positions place the two servo horns onto the servos in a position as close to vertical as possible. It will be impossible to get them aligned perfectly vertical because there are only 25 teeth on the splines that interface them to the servo.
    (…)

The standard way is to remove the servo horns, power the servos with software installed so they move to their zero positions, then install the servo horns perpendicular to the OSR2 base.

Cheap servo horns aren’t consistent with the teeth, so lining them up perfectly won’t be possible. I’ve been using Axial servo horns, which are made consistently and line up properly. They’re also thicker in the shoulder, making them more durable. I’ve had several cheap servo horns break in the past. The downside to Axial horns is they are not the same shape, so you have to reprint the arms with a modified shape.

After you’ve lined the horns up as best you can, you need to use software to account for any differences that remain. You might be able to do it in the player software you’re using. You can also do it by modifying the firmware code and reloading it into the board. The variables to look for are LowerLeftServo_ZERO (ESP32 firmware) or LeftServo_ZERO (Romeo BLE firmware), and the same with “Right” instead of “Left”. I don’t know off the top of my head how much you’d want to change the default of 1500 by to make a particular change. I’d say it’s best to use trial and error, updating the firmware with a change, then observing the arms to see how it changed.

All that said, if you’ve been using the OSR2 and the arms are only suddenly not aligned, that suggests stripping of the servo horn teeth, which means you’d want to get new ones. You should be able to tell if that’s the case by removing the arms and the servo horns in preparation to align them. It’s also conceivable that the teeth on the servo have stripped, but that’s far less likely, unless it’s a really, really cheap servo.