rooDial a Wireless Volume Knob for Roon with Microsoft Surface Dial

Will come with the planned big upgrade :+1:

1 Like

Hi, Rather frustratingly i have spent several hours this afternoon trying to sort the RooExtend but i repeatedly get a ‘flash failed’ error. I have tried it on two different computers, using two different sd cards. One computer and one sd card are the original ones used to install my current version of Roo Extend that has been working fine for over a year. I also downloaded the 3.1.4 version several times incase there was a problem with the file download.

Every time i get a failure on validation at 93%.

I have moved house since the original RooExtend set up, so different internet, but otherwise everything is the same and as mentioned , i have had the surface dial working perfectly at this new address for months.

Any ideas ?

What computer did you use to flash the SD. Mac, PC?
You use Balena Etcher?

It’s definitely not the image but the flash process in combination with your card. Got no reports that there is an issue :roll_eyes:

Will this update be abailable for the pi zero w?

If it nicely works there is a small chance that I port it back to v2.x.x. But the main math will be 64Bit AMRv8.

Best DrCWO

1 Like

Hi, All tested and working 100% this morning.

Balena Etcher was still ‘failing’ at 93% on the validation phase (happened every time , tried it 8 times, downloading Balena Etcher twice to PC windows 10 and a Laptop windows 11). However i went ahead and kept trying to use the ‘failed’ sd cards and in the end one has worked !

Thanks for your help.

1 Like

I have had the same issues and only with balena-etcher running on windows 10/11. Repeat attempts eventually worked but on occasions repairing the memory card was the only answer.

1 Like

What’s the issue when the dial registers push but suddenly not the turns? A reboot of the controller solves it though… and also it would be nice if the controller web page had a reboot function.

Sorry, but no idea :face_with_raised_eyebrow:
By default volume changes only take place if the selected zone is playing. Maybe this was the reason why…

I will soon post here to discuss my plans regarding the re-implementation of rooDial coming up…


I have had this problem, intermittently, for some time. I find that press to pause/play responds instantly but rotation for control of volume takes up to 8 secs (and a few rotations) to respond.

Dear rooDial users,
I plan to start working on rooDial v2.0.0 beginning next week. Here I want to publish what I plan to do but I am still open for further proposals. I will be out for a quick trip to Berlin this weekend so please be patient if my answers will be a bit delayed :wink:

  • First and most important I will work on the delay after the dial disconnects. A bit of this delay you get in v2.x.x of rooExtend and in the new v3.x.x it is even worse. There are many software layers in Linux that have to be reactivated if the dial comes back and this steels the time. My plan is to skip them all and directly communicate with the D-bus and the information the Bluz daemon will give me there skipping all other stuff. Cross fingers I will be successful there. This is unknown terrain for me too :thinking:
  • Next I will introduce additional gestures to allow all the functionality for example starting radio stations or playlist that the Nuimo offers. My plan is to first add a new selection „Layer Two“ to the dropdown of the long press gesture.
    If the Dial is setup like this and you long press it you get a double haptic feedback from the buzzer and get to the second layer. After that the gestures for press, double press, tripple press and rotate will have different functionality. So for example press will start a radio station in layer two. A second long press will give you a single haptic feedback and you are back in normal operation.
    The actions for this second layer can be specified in the settings dialog of rooDial.

So far my first ideas. Please let me know what you think about it and I hope for further ideas that will improve rooDial.

Best DrCWO



I’m very pleased to hear that you’re going to start on a fix for the latency issue. I have four dials running on old firmware - I sincerely look forward to being able update them.

I hope it turns out to be less challenging than you fear. It might. It also might not :slight_smile:

You asked for input and ideas. My request is that you focus on the latency issue and nothing else until that is complete and released. Some of us have been waiting for what feels like a very long time for this issue to be addressed. It seems deserving of a release cycle on its own to simplify and expedite it. I suppose one way to say this is that if the fundamentals of simple transport control and volume don’t work, then nothing else matters.

Thanks for sharing your plans and asking for input. I personally appreciate it.


Great news. Please make the two layer configuration sets fully customable if possible.

It is possible to add a „press and rotate“ command?

Maybe one can add more than one Surface Dial for different sets of commands like an expanded common preamplifier.

I understand that and this is really a good idea. I will keep the GUI and fix the latency first :+1:


Good point, will see if it is possible and put it on my list :smiley:


Hey Doc – since you asked… :wink:

Not surprisingly, I agree with what @gTunes phrased so eloquently. It must be said though that my Dials are used every day and never fail me – I am very happy with them.

Not too sure about the proposed second layer actions (I use long press to turn off my speakers ATM, but hey – I can adapt… ;-)). As I have lots of automations serverside, I would personally love to map knob actions to firing off shell scripts (ssh into server, run script). I realise this may be a bit of an edge case though, so feel free to ignore. :smiley:

1 Like

My wish for extended capability would be the ability to control volume on non-Roon ready devices with the Surface Dial. So… the ability within the code to translate the BT signal to IR. This would require some sort of remote learning functionality or the ability within the rooExtend box.

This is a good point also put this on my list :+1:
I already have MQTT on it so this might be another useful add on.

1 Like

Get a Harmony Hub and you’l be fine :smiley:
But I also thought about adapting the FLIRC IR USB dongle. Might be an interesting project in future…


1 Like