The Venus for Men by Sybian is one of the most expensive sex toys on the market.
This project allows you to control the Venus via the buttplug.io protocol without changing, hacking or breaking the toy's electronics.
It is geared towards the Lustbound game in particular.
lustbound_venus.mp4
Compile the code in the controller director and flash it on a microcontroller of your choice. I had a Raspberry Pi Pico at hand, but you can probably use any microcontroller. The provided code makes use of platformio and uses the Arduino framework, that should be the de-facto common ground. Wire the servo to whatever output pin you chose (I chose pin 34 for GP28 because that is close to GND and VBUS).
I had a MG996R at hand, so I used that.
You need a 3D printer to print the controller frame (base and brackets) as well as the gears.
Screw the gear onto the servo. Turn the control knob into the "off" position and carefully turn the servo into the opposite direction (because of the gears). Now stick the other gear over the control knom. This is what the end result should look like:
Disconnect the servo from the microcontroller (some models allegedly back-feed). Check mobility by carefully turning the servo all the way in both directions. If the servo blocks, but the knob still has some wriggle room in both directions, you did it right. Now connect the servo to the controller again.
These models have been prepared for a Bambulab X1C with PLA-CF. Adjustments might be necessary (especially fitting the control knob and the M4 screw holes). You can use FreeCAD to adjust the provided files. It is free.
Have websockets 13.1 and pyserial 3.5 installed in your python environment (via pip I presume).
Execute lustbound.py. The servo will turn the knob in the "off" position. If this breaks the gear, the knob or the servo, you installed it the wrong way around and must admit defeat.
Start Lustbound.
Lustbound uses the deprecated version 2 of the protocol, making use of the old VibrateCmd instead of the current ScalarCmd.


