I have a FunSSR1 on my desk right now, works fine with Intiface Central.
I’ve needed to write a blog post about this for a while so I guess I’ll just throw the content here for now, feel free to point at this post whenever you need to make this point to someone:
Ok, so, let’s clarify what “multi-axis integration in Buttplug” means.
First off, multi-axis integration with Intiface/Buttplug is close to doable. We need to change the way our TCode implementation works to be slightly more robust, but that’s it on the code side.
The more difficult part is exposing a mechanism in Intiface that allows users that have basically no clue what they’re doing with this new complicated DIY device they cobbled together/bought to properly enter the required information that will define what their device can do. Not fun, and providing support is going to s u c k because honestly, while I love what has come from tcode based systems, as you can probably tell from my tone, I’m not super into being unpaid support for a community I’m not really even a part of. Especially with the demands I get from people thinking they’re entitled because they bought or built a device that they’re having to cargo cult info for to make it work anyways.
All that said, this task in terms of building device definitions in a user understandable way is difficult, not impossible.
Now comes the real problem: What exactly do you think “multi-axis integration” in Buttplug is going to DO for you? I’m not sure most people asking this properly understand what they’re going to get when this comes out.
“Multi-axis integration” just means that Buttplug provides developers of apps that use buttplug with ways to access all the possible movement configurations of an OSR-2/SR-6. We can define the translation/rotation axes, valve levels, etc. Those are presented in a fairly raw manner to developers of apps.
But that’s it. It’s just access to the possibility to control these things.
What I think people actually want, Buttplug integration or no, is to be able to use these devices in a way that is meaningful to their capabilities. That doesn’t intrinsically require Buttplug access. T-code works fine on its own, and developers have made interesting things lika Ayva and the Virt-A-Mate plugins. Buttplug exposing more control will not automatically make all of the software with Buttplug “just work” with the OSR-2/SR-6 in a meaningful way. It’s the same as if we integrated with the Syncbot (which almost happened many times but the company was being weird). The Syncbot also does a bunch of stuff that a large portion of the hardware we support does not, and that means that while we could expose controls, they may not match up to what’s expected by software that’s already written.
Multi-axis integration will not make developers care about OSR-2/SR-6 users, because most of our community can barely control vibrators with our library, much less know how to deal with simultaneous generic axis movements. While I’m not going to act like Buttplug is the easiest thing to use in the first place, there is no generic API that’s going to make programming for the OSR-2/SR-6 easy for someone who has no programming or controls knowledge, unless it’s just playing back prebuilt movement patterns (and, tbf, we do have pattern playback in the Buttplug dev pipeline, though it’s a ways out)
This is not just a problem in sex toys, it’s a problem in interactive hardware as a whole. Look up the Novint Falcon (which I wrote the open source drivers for) if you want an example of this going wrong in gaming.
A possible way to solve this is building translation/scripting systems to go “we’ve been told to make a device vibrate at a speed, turn that into another equivalent event of [multi-axis movement, stroking, whatever]”. This was originally part of the vision for Buttplug, to have a scripting layer between received event and output. We’re 7 years into the project right now and that’s been difficult to get to because we went breadth before depth, meaning we now support 500+ devices on 5 platforms of desktop/mobile, but there’s no way to do translation yet. It’s something I’d like to look at in the future, but it takes a lot of time just to manage what we have right now.
If someone wants to beat me to it: more power to you. I’m not the only one that can program, as much as everyone seems to act like it.
We don’t have hard numbers at the moment because I’m still figuring out how to do that telemetry without having my user base come at me with pitchforks. That said, anecdotally, I would probably say the largest amount of our users just have a lovense toy or two, and then the portion after that is buying cheaper vibrators (Joyhub/Satisfyer/etc). Strokers are a tiny fraction, multi-axis even tinier.