#Wireless High Resolution Scrolling is Am...
1 messages · Page 1 of 1 (latest)
Ok. Let's pull this into a thread to make it easier to follow
It looks a bit like the Microsoft Surface Dial
Cool!
Where is your code at so far? Do you have it scrolling at all?
I've got the "normal" scrolling working so far, that's all though
I've seen that, do you know if it can also be used for scrolling?
Yes, scrolling is its main feature
I think it can also zoom and do a couple other things, but no CAD integration
But you were going to make something cool, and who am I to stop you?
The dial doesn't make it easy to adjust the scroll step size
Definitely want to make my own 🙂
https://learn.adafruit.com/custom-hid-devices-in-circuitpython/radial-controller found this article about Radial Controllers
Are you on Windows?
Also tried that but it only seemed to open this dialog
yep
Ok. That's the menu which selects the dial function
You would normally get there by clicking the dial
My wife has a dial but hasn't used it in a while, so bear with me
Seems like it has quite a high resolution
Haven't really played around with that too much because I didn't know it also supported scrolling.
What's your hardware like? The example expects a quadrature encoder and a button
If you don't have the encoder hooked up correctly, it wouldn't detect the rotations
You could print out the position to see
Probably in the if delta !=0 case so it doesn't spam unhelpful info
I've gotten it to work before but it doesn't seem to be working right now
Alright. Did you print out the position every time delta is not zero?
That would be helpful to see where the issue is
Just got a button connected for now
Oh, I see. It's possible to simulate an encoder with two buttons
The button is working but nothing else seems to be happening
Well it's just for testing right now
Ok. You just want to see if it scrolls, before you go buy an encoder?
I'll wire up the encoder once i got the basics down
Alright. set delta = 1 right above the last if
it will work, and probably very quickly
maybe a delay is in order
1 second, perhaps?
while True:
if not btn.value:
if not last_btn:
last_btn = True
radial_controller.press()
print("Button pressed")
else:
if last_btn:
last_btn = False
print("Button released")
radial_controller.release()```
I've got this code right now which should show the menu
also tried radial_controller.rotate() which also doesn't seem to do anything
yeah, radial_controller.rotate() needs an argument of 20 or more
It's not doing anything
so try radial_controller.rotate(100)
Nothing is happening
Well the button is working, it's being logged in the console
It has also been working when i tried it a few days ago
I'll try to restart my pc
Could be, the scrolling the video seemed to Work really well though
It's showing up in the settings atleast
still nothing
Probably just one small thing that i overlooked or something like that ._.
I'll try to get it to work tomorrow
Thanks for your help 
Do you actually have it on the scroll setting?
Maybe it’s doing something that doesn’t affect most apps
Not quite sure, radial_controller.click() should still open the menu though, right?
the press? Yeah
I grabbed an encoder and am trying it too. Unfortunately the rotaryio.IncrementalEncoder isn't picking up my turns
I've completely removed the device from windows and restarted my pc and now it seems to be working 😅
Connected it like this, seems to be working great