Comments (7)
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.
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.
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.
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.
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.
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.
Going to keep poking at these raw endpoints and see if there's something I'm missing.
from intiface-central.
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)
- App stuck on loading screen HOT 1
- Using "Start Engine on Startup" on Android causes engine during boot to freeze on startup
- Release Android version on F-Droid
- Stroking at level 0 Solace HOT 9
- Feature: "Sync all together" HOT 3
- Dbus error on debian bookworm
- Connecting device removes custom device configs from user device config HOT 3
- Android: Links in about/help are not clickable
- Divide out Client/Message states from EngineControlBloc HOT 1
- Svakom Ella Neo can't set a constant intensity HOT 5
- Update icon no longer shows in Intiface status panel
- Axis Limits for serial TCode v0.3 devices HOT 4
- 2.6.0 Mac download contains v2.5.7 app HOT 1
- Install using Winget
- Error when trying to run in ios device HOT 6
- Cannot change server port in iOS
- Limits Broke On Keon - v2.6.0
- Steam version HOT 1
- Android installations missing bluetooth permissions crash on bluetooth calls HOT 3
- Linux config file setup can fail if ~/.local/share doesn't exist
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from intiface-central.