Giter Site home page Giter Site logo

Comments (7)

qdot avatar qdot commented on August 14, 2024

Raw commands aren't implemented in Dart yet, which is why this isn't in the UI. You're activating functionality that I haven't exposed for a reason, so yeah, shit's gonna break. No ETA on implementation for that right now. If you REALLY want that you could try running the bare Engine executable.

As for what you're wanting to do: Do you have the lovense waveform pattern protocol? We haven't reversed that out and I haven't seen documentation for it.

from intiface-central.

Funwayguy avatar Funwayguy commented on August 14, 2024

Understandable, I'll give the bare executable a go.

As for the protocol, I was intending on figuring the raw equivalent of the sendPatternCommand as detailed here:
https://developer.lovense.com/standard-solutions.html#sendpatterncommand

From there I could sample a waveform at up to 10 times per second and write the result to a lovense pattern command every 1 second.

from intiface-central.

qdot avatar qdot commented on August 14, 2024

Oh, interesting. Definitely curious if this works out for you, please let me know if you make progress or need additional input. Raw commands are rarely used with the system, but hopefully there won't be too much more breakage.

from intiface-central.

qdot avatar qdot commented on August 14, 2024

Ok actually this ended up being a bug in the Dart library. That's fixed, and Intiface Central v2.4.1 will be out tomorrow. It'll also have a toggle for allowing raw messages, and I just tested it and devices connecting no longer fail with raw message exposure.

from intiface-central.

Funwayguy avatar Funwayguy commented on August 14, 2024

Awesome! I hadn't made much headway in getting the raw messaging to work (and fried my server on Friday during unrelated maintenance) so it's great to know I wasn't crazy. Pretty eager to give this a spin when I get the chance.
Thanks again for looking into this 👍

from intiface-central.

Funwayguy avatar Funwayguy commented on August 14, 2024

Took the new 2.4.2 update for a spin and got further this time but ran into a whole new error when sending raw commands. Not much in the logs this time besides what is shown in the interface. May log this one as a new ticket however given it may be two unrelated issues.

image

image

Going to keep poking at these raw endpoints and see if there's something I'm missing.

from intiface-central.

Funwayguy avatar Funwayguy commented on August 14, 2024

Minor update on this ticket. Latest 2.5.x version appears to have fixed this issue and I can now thankfully communicate with the toy using raw messages.

In even more awesome news, with a little Wireshark snooping, I can now in fact run the pattern commands giving me the ability to queue up rapid strength changes up to 100ms apart. All I need to do now is reverse engineer how they're compressing the command.

For example, Lovense compresses this pattern:

{
  "command": "Pattern",
  "rule": "V:1;F:v;S:100#",
  "strength": "20;20;5;20;10",
  "timeSec": 9,
  "toy": "FF3F9977D9FC",
  "apiVer": 2
}

into this string:
AP010000900kk5ka

I may post more information in the Discord once I've had some time picking this apart but I suspect it's not all that complex to decipher. All in all, bug is fixed and hackery can commence. Thanks again for all you do with this library.

EDIT: Letters on the end are up-to 50 characters of base 20 representing the strength pattern. Still figuring out the rule compression as there is some fuckery going on there.

from intiface-central.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.