Added support for Coyote V3. First post is updated.
Why does it prompt ‘ERROR: root: Error: The address is protected’ when I create a WebSocket server? No matter how I change the port, it doesn’t work. ![]()
That sounds like you already have a websocket open in another program possibly. I only had that issue when I had both the old/new GUI open simultaneously.
Did you try a system reboot just to make sure nothing else was holding the socket address?
Hey, could you add an option to not send any pulses unless there is active data coming in? Basically set power to 0 temporarily? Instead of the default wave that it runs?
I tried restarting but still couldn’t create a websocket. In the end, I used a virtual port to connect to MultiFunPlayer, which ran very well. It’s worth mentioning that it performed very well on Fapap. This is really an amazing software, I love it so much.
![]()
1st of all thanks for your effort! I managed two connect my V3 to faptap and also to MFP with your discription.
But as mentioned before one Problem is, when there is no “communication” to the the GUI it still sends a steady signal to the coyote which depending on the strength settings can feel uncomfortable!
And the other thing is: It seems I cant manage to get the settings right. When i transform funscripts with https://xqueezeme.github.io/ (settings smooth) the funscripts are pretty good to use with xtoys.app in addition the xtoys.app has a script that adaptively changes the frequenzy (its named: Update Frequency when intensity changes). What it does is it returns low frequenzy for low funscript curve position and high frequenzy for high curve positions.
Is there a way to achieve the same with this GUI? Or is the frequenzy always as selected in the 1st slider?
Compared to the xtoys.app settings above theGUI feels way more “stinging” on the same funscripts. (tested with MFP and faptap)
This leads me to the sliders. I am not sure to if I really understand them so i am asking for a example settings: So if i want for example increase the lows of a wavefrom but smooth the highs: what would be an example for each slider position to achieve the desired result?
If you’ve got some kind of Android thing, have a look at Howl. It works like you want with higher positions using higher frequencies, and also tries to do some clever panning between electrodes stuff. Been messing with it and it’s pretty impressive in showing what the Coyote 3 can do.
Doesn’t have sync like this though, and you’ve just gotta play .funscript files manually, which is a ballache (and not in a good way). But it is open source so maybe Cardot could try a similar algorithm if they want?
No idea if you are still developing this or not, but I would like to say its very good so far. I have some suggestions:
- the coyote outputs even when paused, or the script pos is at 0. it would be ideal if it would not output at all in these scenarios
- add some kind of intensity ramp up over script length to combat de-sensitivity and so you are are not getting the full blast from the start.
- this may already be part of the app (i see no way of configuring), but allow different scripts for each channel
Thanks for making this. As a fun side project I recreated this using Tauri. The whole thing is only 4MB now.
You can grab it here (MEGA 2MB zip)
Additional Features:
- Customizable hotkeys to increase/decrease all values
- Settings are remembered between sessions
- Ability to bind any option (frequency, intensity, etc) to a TCode channel (L/R0-2) with a custom curve
- Upgraded Link A to B system to an Interplay system with several options
- Upgraded the input processing engine and added 3 new options (v2 Smooth is a nice and noticeable upgrade)
- Fixed the inverted processing (0 now means 0 instead of 100)
If there’s interest in the source, let me know and I can get it uploaded to GitHub
“Its UI is great and the experience is excellent, but it cannot connect to my device. I am using Coyote V2 — can it support connecting to Coyote V2?”
Unfortunately I don’t have a V2 device to test it out with. I could try and implement it according to the docs, but I wouldn’t know if it actually worked or not.
orry to trouble you. Once you’ve finished, I can help you test it.
Oh my god, you made it possible to Link any channel to frequency or power o.O
That alone might make this the best Coyote interface yet!
You should open your own topic for better visibility, this is amazing!
Oh, could you maybe implement a way to connect to EDI and Funscript Player to make it possible to play interactive games? For EDI maybe a direct Serial connection? For FP maybe a Buttplug/Intiface integration?
For safety, a pause button & hotkey to instantly stop/mute all shocks would be great! And a timer that stops play after a set amount of time.
New Version
Additions:
- Presets: Save your favorite settings
- Initial ButtPlug support: still a work in progress, but it connects, I’m just not sure how well it’s handling the position commands. TCode support is just better still.
- Output waveform visualizers: See what’s getting sent to your device
- New Engine: v3 Predictive - It looks at what’s coming up and adjusts to ensure it hits peaks at the right time
- Pause Button: Pause all output to the device at any time by pressing the button or the corresponding hotkey (defaults to space).
Hi great work. I connect to fap tap and worked great. Can you add serial COM input so I can play games. It worked with above above gui and interface but that GUI send constant signal when nothing happens so its uncomfortable to play games yours cannot connect to websocket to buttplug I dont know how to edit to make it work.
You should definitely make your own thread of this, would be lovely to follow the progress (if possible if it’s open source I could even help contribute towards it)
I found the author’s GitHub page and, with the help of AI, adapted and added support for the Coyote 2.0.
Here is the link to the author’s GitHub: GitHub - maps524/coyote-socket: A modern desktop application for controlling DG-LAB Coyote e-stim devices with T-Code or Buttplug input.
The author did a fantastic job on this software, and everyone is welcome to join in the development.
Download link: 4.32 MB file on MEGA
Please also share any configuration tips or favorite settings
What specific configuration tips or settings are you looking for? The visualization of this software is quite well-done, so I think you can just set it up according to your own preferences.
Websocket is not working
I need a serial port :)

