This project will hopefully describe the journey from the non-NDA datasheet of the Pixart PMT9123 to an open breakout board available to anyone interested. The PCB is already done. Arduino library and the actual manufacturing are being worked on.
The sensor can be seen as a professional version of mouse sensors. It can be used as an 2D or 1D optical encoder that delivers accurate data while being very affordable. There is also no need for special code strips which can be hard to hobbyist-friendly quantities (at least when you need/want up to 2000cpi).
I finally got a reply from our distributor. At the price they quoted us, we should be able to sell breakout boards with module for about USD 15/each + shipping. The initial run would be at quantity 200.
Currently, the main issue is the substantial lead time of 12-14 weeks. There is probably no way around this.
So now, I'll have to decide which way to continue with this project:
Teaming up with a Chinese electronics distributor (e.g. TinySine, Elecrow, Seeed, ...) and distribute it through their shop
Kickstarter
GroupGets?
A mixture of 1-3
There is also the option of having everything sent to us and then forwarding the single devices ourselves. However, this would only make the boards a lot more expensive due to shipping, etc.
If you have any recommendations, please let me know.
I wrote a very basic Arduino library for the sensor. It is still missing some parts (e.g. the I2C address), but should be a good starting point. It's available on github: https://github.com/aesora/aesora_PMT9123
At least up to this point, it's a clean room design and only based on information that's publicly available.
The breakout board is done. The newest release can be found at https://github.com/aesora/PMT9123_breakout/releases/latest. It has few different components and combines the example schematic from the datasheet with a LDO and a simple level converter. This way it can be used with both 3.3V and 5V logic. All pins on P1 are documented on the bottom.
While reading through Hackaday (http://hackaday.com/2016/11/21/diy-optical-sensor-breakout-board-makes-diy-optical-mouse/), I noticed that there is some interest in optical tracking sensors. The most common type are the ones found in optical mice. While those sensors can be useful as optical encoders, there are better options. Pixart, leading manufacturer of mouse sensors, recently added some sensors for optical tracking to their line up. One of these is called PMT9123. It can be used as optical encoder with 2000cpi (0.0127mm resolution) in two axes at speeds up to 25ips (635mm/s) and accelerations of up to 8g. Those values should be sufficient for most 3D printers. Data is output using I2C.
The main issues with this chip are:
The chip is most likely not yet in production
It is only available to companies that buy enough of these chips
The datasheet is not complete
There is no breakout board
Since I am currently working with Pixart on a different project, I believe that only the first one is an actual issue. The second one depends on how many of you are interested in this sensor. So let me know here and if there is enough interest, I will get pricing information and start group get.
Great project you got going, i have some PMT9123 that I haven't tried yet and I was wondering if the 20ips was enough to work reliably as a mouse wheel instead of a rotary encoder, what do you think ?
Also, since you already have the sensor: what's the I2C address? I'd like to get started on an Arduino library. (I'd love to get this working without the help of the NDA-datasheet to have completely open code. https://en.wikipedia.org/wiki/Clean_room_design)
Great project you got going, i have some PMT9123 that I haven't tried yet and I was wondering if the 20ips was enough to work reliably as a mouse wheel instead of a rotary encoder, what do you think ?