Browse over 10,000 Electronics Projects

E-Ink Table Clock and indoor ,Outdoor Temperatur Monitor With PIC32MX

E-Ink Table Clock and indoor ,Outdoor Temperatur Monitor With PIC32MX

This is an follow up For the previous post in which i demonstrated how you can drive kindle E-ink display with a microcontroller.

previously i was using a MSP430FR5739 , which is really low power mcu but has very little RAM and bit low speed to do anything related to graphics. E-ink has 800×600 pixel resolution so it required minimum 60Kbyte of RAM to store Frame Buffer. although you can easily getaway without frame buffer by directly doing incremental drawing on to screen but there are few issue in that because of the way E-ink display works. one more issue with there with MSP430 , it has very low program memory so we need some sort of external memory to store font data and icons.

so i have decided to use PIC32 microcontroller , PIC32MX795F512H to be exact. which has enough of ram and flash can go up to 80Mhz. which is more than enough for our purposes.

Schematic E-ink Driver

Figuring out schematic was very easy as there are may service manual available of e-readers . one of them is Sony PRS-505 , i have ordered one old bad battery one from ebay took it apart and good thing about this e-reader there are test points available for every single point we need. Schematic available from my github account with link

Schematic from service manual describe ever test point , so i just soldered few wires to


My schematic has basically no change since FPGA driver board , except VCOM voltage Opamp Circuit.

Wave form Reverse Engineering
Image give blow , show a complete screen change. it consist of 38 individual frames .



One Full Screen change




one frame (First) from 38 Frames Required for screen change



Start Of one frame



Start of One frame Zoomed


one line writeof 800 pixel


End of Line Write


Schematic MCU Board

Processor board schematic is From my old project , download pdf from my github accout


Outdoor Temprature Sensor ,

as you can see on screen there are two Temperatur readouts . one of them on the top comes from local Temperatur sensor another one comes from a Wireless temperature sensor. which i build in previous project.

Time Setting

as there is no user interface , i have serial port running at baud 115200 available to configure time.
time setting application is written in C++ with qt 5 . source is available in the github repo


Firmware Source available on my github account. i am using xc32 compiler free version with optimization enabled to O1 level , this is maximum allowed with Free compiler.

Read Original Article