12864 LCD controller for RRF
-
Due to the limitations of the LPC port of RRF, I wrote some software that runs on an Arduino (Mini Pro and Nano tested) to drive a RepRap Discount full graphics LCD in a similar in a similar manner as PanelDue. This allows me to have an LCD and WiFi. I'm not sure of all Duet boards already contain the functionality to drive an LCD like this one but I decided to post the project here in case it would be useful for others.
PCR was nice enough to make a PCB adapter for the Arduino Nano https://www.tindie.com/stores/pcr/items/ (it doesn't look like he has posted it yet).
Anyway, the code is here https://github.com/airbrett/DisplayRRF and below are some pictures.
-
Nice!
A hint for anyone else doing this. Almost all 12864 displays are designed to work with 5V signal levels, so the Arduino should be powered from 5V. This means you must use a potential divider to reduce the voltage on the Arduino Tx pin to 3.3v to feed into Duet URXD. However, a 5V Arduino Nano needs at least a 3.5V signal level on its Rx pin to be within spec, so the Duet's 3.3V is not sufficient. You could use a level shifter to shift it to 5V; however a simpler solution is to use an Arduino Pro Micro instead (as I did for the CNC Pendant). The Pro Micro uses a different MCU (atmega32u4) which has reduced input voltage thresholds. Additionally, it has another 0.5Kb RAM, which may be useful.
-
@dc42 said in 12864 LCD controller for RRF:
Additionally, it has another 0.5Kb RAM, which may be useful.
Delicious! This was my first project using a microcontroller, 2Kb ram came as a shock. Now 2.5Kb sounds like infinite resources.
-
If somebody wants a PCB give me a PM. Have some spare!
-
Interesting related developments by the Voron Design folks:
https://github.com/VoronDesign/Voron-Hardware/tree/master/Nano_Display
https://github.com/VoronDesign/Voron-Hardware/tree/master/V0_Display
-
@oliof Looks like a nice design. Seems like my software might work with their adapter. I'd love to see their interface in action, I feel like there is room for improvement for mine but I don't know how to lay it out better. Thanks for sharing
-
I believe they are using klipper on the board so it will run the klipper 12864 UI ...