Rotary Decoder IC

Hi,
in my last project I used a rotary encoder and... it was no fun. Debouncing was tedious and my code had a lot of overhead.
Now I have found this great little decoder IC:

Has someone experience with this IC? Are there alternatives? Because I can't find it to buy in Germany. Are there rotary encoders with this already built in or break out boards?

Also, I have just bought this litlle DAC and headphone amp:

I would like to replace the volume buttons with a rotary encoder. I think using this IC and a few transistors is a lot more elegant than putting an Arduino in between. :smiley:

Seems like you'd have to really hate doing software debouncing to buy something like this at $8/each.

Do you have rotary encoder filtering as shown on bottom right of page 2 here?

Why the need to debounce a quadrature signal? All transistions are valid.

MarkT:
Why the need to debounce a quadrature signal? All transistions are valid.

I mean the hand cranked kind and not and optical one.^^

Well, I got it all working perfectly in the end. But the path there was no joy. I should say, it was for a university project and it had to work quickly. So, problem solving wasn't as fun as it normaly is. Also I had a whole batch of very cheap and broken encoders and figuring that out took me a while.^^

Soo... for me it would be worth it to pay 8$ to save the hassle. If I could find them. Also, with the headphone amp project it would be cheaper than fixing an Arduino to it, just to read the encoder.

MooJuice:
I mean the hand cranked kind and not and optical one.^^

Doesn't matter, still all transitions are valid. And if you have a good state machine it doesn't matter if it bounces a bit between 2 states..

But why didn't you just grab one of the many libraries? Granted, all the interrupt pin versions are a bit crap (bazooka on a mosquito) but there are some decent ones. Alright, granted again, I'm still looking for the ultimate library for it which just uses the PC interrupts.

A couple of years ago I came across https://www.circuitsathome.com/mcu/reading-rotary-encoder-on-arduino/ . I now use a template class based on this approach.

MooJuice:
Hi,
in my last project I used a rotary encoder and... it was no fun. Debouncing was tedious and my code had a lot of overhead.
Now I have found this great little decoder IC:
https://www.elmelectronics.com/wp-content/uploads/2016/07/ELM402DS.pdf

Well i wouldn't call it a "decoder IC" - It's just a PIC12F508 - $8 for the chip + software is kind of expensive. If you want to button "debouncing" but not use processor time on your Arduino - get a handful of Attiny-chips, write some code and let them do the exact same thing.

Zapro:
Well i wouldn't call it a "decoder IC" - It's just a PIC12F508 - $8 for the chip + software is kind of expensive. If you want to button "debouncing" but not use processor time on your Arduino - get a handful of Attiny-chips, write some code and let them do the exact same thing.

That's a great idea. I Will do that and learning how to program smaller ICs could definitely become useful. :sweat_smile:

If you still want to go with that chip:

Potentially the only retailer is the manufacturer ELM itself in Canada (found another source in HongKong, but no prices, so you have to ask for a quote).
ELM / Canada is selling the piece in quantities down to "1" for C$8.50 plus C$8.00 for worldwide shipping.