Twiddle web flasher

Unofficial project, provided as is, with no warranty or guarantee of any kind. Not made, endorsed or supported by Autoblow, Lovense, Kiiroo, Research & Desire, or any product or company named Twiddle, and not affiliated with them. Names are used only to describe compatibility.

  • No warranty or guarantee of any kind. Use at your own risk.
  • For adults only, and only with the consent of everyone involved.
  • Not a medical device. Any heart-rate or edging feature is not a monitoring or medical function; do not rely on it for health.
  • Software and wireless links can fail. Always keep a way to stop the device that you can reach by hand.
  • Flashing a board is at your own risk: it can fail, brick the board or void the maker's warranty.

Twiddle is device software for a touchscreen remote that controls adult toys. It runs on ESP32 display boards. It is free, source-available and for non-commercial use. This page installs it onto a board connected to your computer by USB. You must be 18 or older.

Source code · Licences and notices

1. Check your browser

Checking your browser…

Tested images only

A version is listed here only after the maintainer has installed that exact image on a real board of that model and ticked a test checklist. Boards and board revisions that have not been tested are shown as unavailable or marked untested. Flashing replaces the software on your board. You do this at your own risk, and you should not use it on a board you cannot afford to lose.

2. Choose your board

Pick the model written on the back of your board. If you are not sure, read the identification help inside each card before you flash.

    Troubleshooting

    Honest notes from the tests so far. Only one board model has been tried, so a fix below may not match every board.

    The port is busy, or another program cannot open it
    Chrome holds the serial port while this page is open, also after the flash is done. Close the flasher tab, or unplug the board and plug it back in. If it is still busy, close the other tab or program that has the port open (a serial monitor, esptool, a second browser window).
    The board is not found, or the installer cannot connect
    Use a USB data cable (many cables only charge) in the USB-C port named for your board. Then put the board in download mode: open "If the board is not found" in step 3 and follow it (hold BOOT, tap RESET, release BOOT). Unplug other serial devices so you pick the right port in the list.
    Guition ESP32-S3: no serial port is listed, or the installer cannot connect
    This board talks to the computer through a CH340 USB-serial chip. On some Windows versions that needs the WCH CH340 driver; install it and re-plug the board. Use a USB data cable and close other programs that use the port. We have not verified which Windows versions install the driver on their own, and the BOOT/RESET button positions shown for this board are not verified yet.
    The installer says "All done" but nothing starts; the board stays in download mode
    This happens on the ESP32-P4 board. Press RESET, or unplug the USB cable and plug it back in. The board then starts the new firmware.
    The screen stays black after the flash
    First wait about a minute and power-cycle the board once. If the backlight is on but the picture is black or wrong, join the Twiddle-Setup Wi-Fi network (password twiddle-setup), open http://192.168.4.1/setup and use "My screen looks wrong" to pick the display type (Guition ESP32-S3: change "Display pixel clock"). If the screen is black and the board does not even offer Twiddle-Setup, flash again with New install. We do not yet know every cause of a black screen on boards that were not tested.
    My settings (Wi-Fi, device token) are gone after an Update
    An Update keeps them only if "Erase device" stays unticked in the installer window. If you ticked it, the whole flash was erased, including your settings. They cannot be recovered. An Update does not rewrite the boot files, so after an erase the board stays black until you run New install (Erase ticked); then set Wi-Fi up again on its screen. A New install always asks about erasing as well: tick it only if you accept losing everything on the board.
    The board does not boot at all after a flash or an interrupted flash
    Put the board in download mode (see above) and run New install with "Erase device" ticked. That rewrites every part and normally brings the board back. If the flash is interrupted by a cable or browser problem, simply repeat it.
    How do I restore my previous software?
    A web flash replaces what was on the board and this page cannot bring it back. If the board ran other software, only your own backup (for example from esptool read_flash) can restore it, so make one before you flash. To go back to an older Twiddle version, pick it in the Version list and use New install.

    Supported and unsupported variants

    Only the models shown above are covered. Other versions of these boards (a different panel, a resistive or non-touch version, a newer chip revision) may not work. Nothing here has been tested on them.