Once upon a time, most things were single-purpose, like the pocket watch. Then somebody made a watch with a date function, and next thing you know, we had TV/VCR combos and Swiss army knives. Now, people pull computers out of their pockets just to check the time or the bed temperature of their RepRap.
[Owen]’s antidote for this multi-function madness is PrintEye, a simple interface that queries his printer and displays its vital signs on a pair of OLED peepers. It’s a parts bin special, and you know how much we love those. PrintEye connects to the Duet controller over UART, and does its firmware whispering with an ATMega328P. The ‘Mega sends a single M-command and gets back all the status and temperature data in JSON format. Then it parses the info and displays it on twin OLED screens.
Want to make one? [Owen]’s got all the files you need over on IO, but offers no hand-holding services. If you’ve never spun a board before, this could be your introduction. Have to have an internet connection? Check out the Octoprint monitor that inspired PrintEye.
i built this for octoprint on my m3d garbage cube https://imgur.com/a/ol09Bse
Nice idea, panelising the oled displays. What happens if you want to go beyond two? I guess you need a further i2c port because most displays can only support one of two addresses? Or is there a clever ruse one can use?
There is no need for a full I2C implementation with these displays, simple bit-banging (and ignoring the bus arbitration stuff) will do for write-only access. Multiple displays can share a single clock line and receive data simultaneously.
Project creator here; both the displays sit on independent I2C busses; they are very cheap units with fixes addresses, so I simply create one software I2C interface on one pair of wires for one display, and then repeat for a second interface using two more pins and the second display. Loads more waffle about this in the project repos.
Adding a third would be physically easy; but each display also uses program and data memory. So you could run into issues there unless you delete soem memor hingry stuff like fonts.