System Information
ReFlex hardware overview
ReFlex software overview
Tutorials
ReFlex TakkTile
Writing a basic TakkTile script
ReFlex SF
Support
Troubleshooting the ReFlex
Updating Firmware
Replacing a Gear
Replacing a Finger
Threading a Tendon
Beta Hardware Maintenance
Mounting on a robotic arm
Setting up a Raspberry Pi
Code Resources
Calibrate SF fingers
DISCLAIMER: It's not easy to do, but it's possible that driving a hand past where it's supposed to be driven can cause damage. It's recommended that while your hand is uncalibrated and you are moving the fingers you should be ready to pull the plug or flip the switch if the motors drive too far and start jamming.
Initiate calibration
Power the hand and connect the USB cable. Then the code needs to be run and the finger calibration code needs to be run (/calibrate_fingers service)
roslaunch reflex reflex_sf.launch
(in a new terminal)
rosservice call /reflex_sf/calibrate_fingers
After calibration is running, go back to the window where reflex_sf.launch was run. You'll see a series of prompts, which will ask you to tighten (t / tt) or loosen (l / ll) each motor. When you get each motor to the place you want, hit 'q' to move on to the next motor.

What's actually happening
Unlike the Reflex Takktile hand, the SF doesn't have any sensor feedback. Whereas the Takktile hand uses encoders to automatically calibrate the fingers, with the SF we need to position the motors by hand and then tell the code to save that motor position as the "zero" point.
These values are saved in the reflex/yaml/reflex_sf_zero_points.yaml file when you run the /calibrate_fingers service. That means calibration doesn't need to happen often (the values are saved) but should be done if you detach the finger tendons/spools or if the tendons stretch.


The code should be running at this point! The point of these drivers is to catch the USB traffic from the hand and bundle it into a formatted reflex_msgs/Hand message. You can check that the message is publishing by echoing the topic:
rostopic echo /reflex_sf/hand_state
If the topic is not published, then check the basic things - that the hand is plugged in, that the USB cable is well seated, etc. You can also check that the two board indicator LEDs are flickering quickly. Please check the troubleshooting page if the problem is not resolved.
Explore with our tutorials!
Visit our documentation page for a full list of available code, tutorials, and other information. We recommend you run through some of the basic tutorials to check all the parts of your system and get up to speed on the ReFlex hand.
The first tutorial is how to calibrate the SF fingers. Enjoy!
Mounting the hand on a robot
Instructions on how to mount the ReFlex on a robot are provided here.
Troubleshooting
For common problems and the related fixes, visit out troubleshooting page.
If any item of the tutorial took additional debugging beyond what's written, please send us a quick line at support@righthandrobotics.com so we can update the tutorial for the next users!