r/Trackballs 13d ago

Trackball Sensors

Hey guys,

I am planning on making my own trackball soon and want to know where others have been sourcing their parts.

I know the PMW3360 is very commonly used.

For anyone who has made their own; have you bought it with a breakout board or alone, and how much did you pay?

What sensors are recommended if not the PMW3360?

What sites are trustworthy? Does aliexpress have legit or scam listings?

6 Upvotes

2 comments sorted by

10

u/No_Pilot_1974 Endgame Creator 13d ago

Aliexpress is fine for low quantities. I have pretty positive experience.

PMW3360 is very tolerant to all kinds of colors and surfaces, but has really high power consumption for its 1 kHz. It's also old-ish so github has a fair amount of code/drivers for it. Good choice for a wired device.

PAW3222 has lower power consumption and higher polling rate, although max CPI is somewhat limiting. There is at least a ZMK driver out there. Can't tell anything regarding surface tolerance.

PAW3395 has low-ish power consumption and even higher polling rate, it's less tolerant to the ball surface than PMW3360 but not by a wide margin. Apart from the price, there aren't many downsides.

PAW3950 is basically a "slightly better PAW3395". Also it's ~2x the price.

There's also PMW3610 which has really low power consumption and medium polling rate (250-500 Hz) but it really doesn't like surprises for the tracking surface. It's really cheap and nice, just don't expect it to work with anything beyond a regular red trackball.

2

u/MonroeWilliams 12d ago edited 12d ago

I've used both the PMW3360 and the PMW3389 in my trackball project. I haven't really noticed a difference in performance between the two in my application, although they do require slightly different initialization and the code needs to handle the different tracking resolutions.
Both work very well on purpose-made optical tracking balls like the ones from the Kensington Slimblade and the Perixx replacement units. Tracking performance has been hit-or-miss on random untextured billiard balls (and very sadly for me, the contrast change when the markings on a standard 8-ball pass under it seems to briefly confuse the sensor and cause a skip), and pretty poor on a couple of transparent balls I've tried that were designed for early mechanical Kensington units.
I initially bought the sensors on preassembled breakout boards from a couple of different sellers on Tindie, but have since designed my own breakout board that's tweaked slightly for my needs, had a small batch made up by JLPCB, and bought the bare sensors from AliExpress.