Lovense Solace is not working with Scriptplayer

I connected Lovense Solace to Scriptplayer with Initface. Scriptplayer says that it is connected, the funscript is fine, the heatmap is also fine, but the device does not move. Am I doing something wrong or is Lovesense Solace support still not working?

I can start Solace with a slider in Initface and stop it in Scriptplayer, but it won’t respond to anything else.

1 Like

Same here. Just got my Solace today, it works in Intifice but not in scriptplayer, faptap, or vamlaunch/sync

1 Like

MultiFunscript is working with Intiface, but you can’t sync the movement only can controll the speed by funscript. It is not the best but not bad.

If the Solace is not stoping you have to set default value to 0%

The solace has no positional control: it only takes speed at which t oscillate at. It’s only supported in Buttplug by the V3 protocol’s ScalarCmd which ScriptPlayer hasn’t adopted yet.

The device does actually have 3 depths at which it changes direction, but there’s no good mapping in Buttplug for this at this time.

Hi just chiming in here to ask a few questions. Where do I read about buttplug’s v3 protocol’s scarlarcmd? What software currently support this protocol?

Is there any documentation on how to send/receive commands from the solace? I have some programming experience and would be curious as to what might could be done to run scripts on the solace more accurately.

Thanks!

Here is the lovense developer site:

But I can’t find any Solace specific thing.

1 Like

You can’t. You straight up cannot.

You get no feedback from the solace. There is no positional information. You get to send a speed and the stroke depth (which only has 3 settings) and that is it.

There is no way to tell the solace to arrive at a position at a specific time, nor is the actuation hardware in the device capable of doing that in a way that is mechanically functional.

I was thinking you could maybe chop the stroke depth of the funscript into 3 distinct depths to send to the solace. Then as the script moves between the different depths these 3 different depth send the command to the solace to change depth. But if I understand what you’re saying mechanically, the solace can’t change depths quickly enough?

My take on it: it’s more that it only changes depths per stroke, and depending on the stroke speed and the video you’re encoding, you may changes depths multiple times before a stroke ends. You have zero feedback.

You could still certainly try this, happy to be proved wrong. Though as said, we still don’t have a good way to control stroke depth in the library yet, so going with the lovense API may be best there.

So I’ve taken a look at the definitions for commands in the windows lovense sdk. It appears to have the ability to set depth from 1-20 as well as speed. This is different from the API, android, and iOS sdks which only allow for 3 depth settings. What makes me think that there really are a greater range of depth for the solace is that the lovense remote app allows you to change depth on a graph that you drag up and down while strokes are occurring. This appears to actually correspond to a greater range of depth.

image

What I’m thinking is that using this you could calculate wavelength and amplitude from each stroke in a funscript and send changes in speed and depth, respectively to the solace.

Except that you still don’t know your packet latency or current stroke position on the device, so your timing is still completely random in relation to command sending.

Y’all sure gonna try to make fetch happen here, huh.