Time for our weekly roundup of Metafetish Project Development!


New Section! This is where we'll put updates for hardware specific changes companies have made in the last week. I doubt this section show up frequently, but since working on Buttplug means we have to stay up to date on this stuff, it's worth adding.


Last week, we mentioned that Lovense is now shipping their new Domi Magic Wand toy!

It's already supported in Buttplug, but just in case anyone wants that info:

  • Device Name: LVS-Domi37
  • Main Service UUID: 57300001-0023-4bd4-bbd5-a6920e4c5653
  • TX Characteristic: 57300002-0023-4bd4-bbd5-a6920e4c5653
  • RX Characteristic: 57300003-0023-4bd4-bbd5-a6920e4c5653

The Domi adheres to the normal Lovense communications protocol.

Also, we had reports from the community that Lovense Hush Buttplugs that shipped recently now identify differently than old toys. Sure enough, it looks like the Hush plugs are running new firmware. Here's the identifying info:

  • Device Name: LVS-Z36
  • Main Service UUID: 5a300001-0024-4bd4-bbd5-a6920e4c5653
  • TX Characteristic: 5a300002-0024-4bd4-bbd5-a6920e4c5653
  • RX Characteristic: 5a300003-0024-4bd4-bbd5-a6920e4c5653

Fleshlight Launch/Kiiroo

As of 2018/09/05, the Fleshlight Launch Firmware has now been updated to v1.3. A quick binary diff didn't show any huge changes, with the code section growing maybe 50 or so bytes, and no large banks of changes seen. Users who've tested it report that it works with both Buttplug and ScriptPlayer. More info about new features if/when we figure out what they are.

Metafetish Projects

On to our own projects!


We added the new Hush info to buttplug-csharp, and it'll be added to buttplug-js soon. I'll most likely do a new npm push of buttplug-js so that hush/domi support is available, though I'm not sure anyone but me is using buttplug-js yet.

Due to these toy configuration additions/changes, we're looking at moving to a more flexible configuration definition system. Right now, toy info is built into Buttplug servers, meaning if we want to support new toys, we have to recompile everything ourselves. That sucks.

There's now a new project bug filed to change our device configuration definitions to an external config file that we can update without recompiles. This should save us a lot of testing and release time, while also hopefully making life easier on users.

Full list of changes/bug fixes that happened this week:

  • Buttplug C#
    • Devices that disconnect now take the same index when they reconnect. (Commit)
    • Fixed the "Can't load assembly file, no version info available!" error that always shows up in the logs.(Commit, Commit)
    • New Hush ID Support (Commit)
  • Buttplug JS
    • None

We're looking at a v0.1.1 release of Buttplug C# soon. That is waiting on 2 things:

  • Fixes to the websocket UI (better errors, defaulting to SSL on)
  • Update system checks (So we aren't depending on people to constantly check forums/websites for Buttplug C# updates)


Syncydink development has moved to working on a web based encoding solution. This means that, sometime in the future, you'll be able to pull up Syncydink in your favorite modern web browser, load a movie, and start creating haptics files for it.

This is still in the super early stages of development, but should have something to show soon!

Other Development

Funscript Blender Encoder

Did you know you can build haptics files in Blender? Funjack has been putting work into making encoding an easier and better experience. You can now use keypad buttons for encoding commands in the Blender encoder, and there's new hints and output verification.

The Video Encoder is available from the LaunchControl Releases Page.

That's it for this week! Back to the code mines...