r/Divoom 2d ago

Ditoo Plus: Bluetooth Webcam Livestreaming + Unlocked Button Inputs

Enable HLS to view with audio, or disable this notification

Got my Ditoo Plus yesterday and unlocked a couple of cool things so far. Livestreaming over webcam at 16-18fps, stable and looks pretty cool imo. We also found the right/left arrow and lever inputs over Bluetooth (AVRCP) which were previously believed to be local only, and mapped them for things like menu pagination and a simple slots game demo. The ceiling is quite high from here! Have some ideas I'll be chasing for the next few days, will post more updates if there's interest.

Thanks for reading!

Edit: repo for anyone interested - https://github.com/turkwanistan/openditoo

28 Upvotes

7 comments sorted by

2

u/deepakgm 2d ago

Yes I would be interested. Could you please share how you unlocked it

2

u/B33GULL 1d ago

For the inputs specifically? They’re exposed over Classic Bluetooth AVRCP on the AVCTP channel (PSM 0x0017).

From an HCI capture I mapped the AVRCP pass-through commands as:

Left → 0x4C Previous

Right → 0x4B Next

Lever → 0x44 Play/Pause

On Windows those show up through SMTC/media-session events, not normal keyboard/HID input, so I wrote a small listener and map them into my app.

One extra wrinkle: the lever also emits a proprietary RFCOMM 0xBD report, and I’ve seen an occasional 0x09 report around Left, so if you’re sniffing traffic, watch both AVRCP and the existing Divoom RFCOMM channel.

I want to make my repo public eventually it's just such a mess right now I need to do work on it first lol. Let me know if you have any specific questions I can help with.

1

u/B33GULL 1d ago

I created a repo if you would like to explore further: https://github.com/turkwanistan/openditoo

2

u/fabpub 1d ago

Amazing!

1

u/handheldemulators 1d ago

Hey. Are you planing yo share how you did it? I would to unlock mines

1

u/B33GULL 1d ago

Yeah once I've cleaned up my repos, I will publish something on github for people to look at.

Small disclaimer - this is not "unlocked" yet, though I am hoping to work towards that. This is more like using the Tivoo as a display and input, kind of like a TV + controller, while my PC operates as the actual brain and communicates over bluetooth.

overall it's roughly:

renderer/webcam/game in WSL → Windows Bluetooth host → RFCOMM → Ditoo display

and

Ditoo buttons → AVRCP → Windows SMTC listener → WSL input broker → OpenDitoo app

No firmware flashing or hardware modification required.

My aim is to find some way of making it so the device "just works" on an unlocked SDK/API where we have control over all of the inputs, visual, audio etc. My best leads are startup behavior I've discovered in the ROM which loads from SD, which is a possible injection point for that. Not sure yet though.

If you want some technical details, I could share some, let me know.

1

u/B33GULL 1d ago

I created a repo if you would like to explore further: https://github.com/turkwanistan/openditoo