Difference between revisions of "2.9inch e-Paper Module"

From Waveshare Wiki
Jump to: navigation, search
(Hardware connection)
 
(4 intermediate revisions by 2 users not shown)
Line 15: Line 15:
 
{{Product List|OLEDs / LCDs/e-Paper}}
 
{{Product List|OLEDs / LCDs/e-Paper}}
 
}}
 
}}
 +
 
== Introduction ==
 
== Introduction ==
 
{{E-Paper Raw Panel}}
 
{{E-Paper Raw Panel}}
Line 22: Line 23:
 
{{Amazon|{{#urlget:amazon|default}}=display
 
{{Amazon|{{#urlget:amazon|default}}=display
 
|More = [http://www.waveshare.com/product/2.9inch-e-paper-module.htm More]}}
 
|More = [http://www.waveshare.com/product/2.9inch-e-paper-module.htm More]}}
 +
===Video===
 +
<youtube height=400px, width=400px>https://youtu.be/OzqH1kWzFZY</youtube>
 +
<!--
 
== Interfaces ==
 
== Interfaces ==
 
{|class="wikitable"
 
{|class="wikitable"
Line 61: Line 65:
 
=== Working with Raspberry Pi ===
 
=== Working with Raspberry Pi ===
 
==== Installing libraries required ====
 
==== Installing libraries required ====
If you want to connect your E-paper screen to Raspberry Pi, you should install some necessary libraries, or else the [[:File:1.54inch_e-Paper_Module_code.7z|Demo (click to download)]] below may work improperly. For more information about how to install the Raspberry Pi libraries, please visit the website: [[Pioneer600#Libraries_Installation_for_RPi|Libraries Installation for RPi]].
+
If you want to connect your E-paper screen to Raspberry Pi, you should install some necessary libraries, or else the [[:File:2.9inch_e-Paper_Module_code.7z|Demo (click to download)]] below may work improperly. For more information about how to install the Raspberry Pi libraries, please visit the website: [[Pioneer600#Libraries_Installation_for_RPi|Libraries Installation for RPi]].
  
 
You can find the detailed presentation about the installations of libraries wiringPi, bcm2835 and python.
 
You can find the detailed presentation about the installations of libraries wiringPi, bcm2835 and python.
Line 118: Line 122:
  
 
==== Expected result ====
 
==== Expected result ====
# Copy the files from the directory arduino/libraries of the demo package to documents/arduino/libraries, where can be specified by Arduino IDE --> File --> Preferences --> Sketchbook location.
+
# Copy the files from the directory arduino/libraries of the demo package to documents/arduino/libraries, where can be specified by Arduino IDE -> File -> Preferences -> Sketchbook location.
 
# Click the button '''Upload''' to compile and upload the program to your Arduino board.
 
# Click the button '''Upload''' to compile and upload the program to your Arduino board.
 
# The screen displays strings and shapes after whole screen refresh.
 
# The screen displays strings and shapes after whole screen refresh.
Line 168: Line 172:
 
# Awaken the module from deep sleep.  
 
# Awaken the module from deep sleep.  
 
# Set the mode to Full update or Partial update.
 
# Set the mode to Full update or Partial update.
Process of initialization: reset --> driver output control --> booster soft start control --> write VCOM register --> set dummy line period --> set gate time --> data entry mode setting --> look-up table setting
+
Process of initialization: reset -> driver output control -> booster soft start control -> write VCOM register -> set dummy line period -> set gate time -> data entry mode setting -> look-up table setting
  
 
=== Configuration of LUT table(SetLut) ===
 
=== Configuration of LUT table(SetLut) ===
Line 175: Line 179:
 
SetFrameMemory is used to write image data to the memory.  
 
SetFrameMemory is used to write image data to the memory.  
 
* Process:  
 
* Process:  
:: Set the area size (see the function SetMemoryArea) --> set the start point (see the function SetMemoryPointer) --> send the command ''Write RAM'' --> start image data transfer.  
+
:: Set the area size (see the function SetMemoryArea) -> set the start point (see the function SetMemoryPointer) -> send the command ''Write RAM'' -> start image data transfer.  
* The module has two memory areas. Once DisplayFrame is invoked, the following action of SetFrameMemory will set the other memory area, e.g. to set all the two memory areas, the process is: SetFrameMemory --> DisplayFrame --> SetFrameMemory --> DisplayFrame, i.e. set and update twice.
+
* The module has two memory areas. Once DisplayFrame is invoked, the following action of SetFrameMemory will set the other memory area, e.g. to set all the two memory areas, the process is: SetFrameMemory -> DisplayFrame -> SetFrameMemory -> DisplayFrame, i.e. set and update twice.
 
* The data from SPI interface is first saved into the memory and then updated if the module received the update command.
 
* The data from SPI interface is first saved into the memory and then updated if the module received the update command.
 
* About the image to be sent: 1 byte = 8 pixels, doesn’t support Gray scale (Can only display black and white). A bit set stands for a white pixel, otherwise a bit reset stands for a black pixel.
 
* About the image to be sent: 1 byte = 8 pixels, doesn’t support Gray scale (Can only display black and white). A bit set stands for a white pixel, otherwise a bit reset stands for a black pixel.
Line 191: Line 195:
  
 
Note:
 
Note:
* The module has two memory areas. Once DisplayFrame is invoked, the following function SetFrameMemory will set the other memory area, e.g. to set all the two memory areas, the process is: SetFrameMemory --> DisplayFrame --> SetFrameMemory --> DisplayFrame, i.e. set and update twice.
+
* The module has two memory areas. Once DisplayFrame is invoked, the following function SetFrameMemory will set the other memory area, e.g. to set all the two memory areas, the process is: SetFrameMemory -> DisplayFrame -> SetFrameMemory -> DisplayFrame, i.e. set and update twice.
 
* The data from SPI interface is first saved into the memory and then updated if the module received the update command.
 
* The data from SPI interface is first saved into the memory and then updated if the module received the update command.
 
* The module will flicker during full update.
 
* The module will flicker during full update.
Line 211: Line 215:
  
 
# Open a picture with drawing tool comes with Windows system, create a new image, and set the pixel to 128x296.
 
# Open a picture with drawing tool comes with Windows system, create a new image, and set the pixel to 128x296.
# Because this module can only display two gray level (Only black and white), we need to convert picture to monochrome bitmap before converting it to array. That is, File --> BMP picture --> Monochrome Bitmap.
+
# Because this module can only display two gray level (Only black and white), we need to convert picture to monochrome bitmap before converting it to array. That is, File -> BMP picture -> Monochrome Bitmap.
 
#: There is a monochrome bitmap on examples pack for demonstration (raspberrypi/python/monocolor.bmp).
 
#: There is a monochrome bitmap on examples pack for demonstration (raspberrypi/python/monocolor.bmp).
 
# Use [[:File:Image2Lcd.7z|Image2Lcd.exe]] software to generate corresponding array for picture (.c file). Open picture with this software, set the parameters:
 
# Use [[:File:Image2Lcd.7z|Image2Lcd.exe]] software to generate corresponding array for picture (.c file). Open picture with this software, set the parameters:
Line 225: Line 229:
  
 
[[File:1.54inch-e-paper-manual-4.png|400px]]
 
[[File:1.54inch-e-paper-manual-4.png|400px]]
 +
-->
  
 
== Resources ==
 
== Resources ==
 
=== Documentation ===
 
=== Documentation ===
 +
*[https://www.waveshare.com/w/upload/9/98/2.9inch-e-paper-module-user-manual-en.pdf User Manual]
 +
{{Commom Instruction of SPI e-paper}}
 
* [[:File:2.9inch_e-Paper_Schematic.pdf|Schematic]]
 
* [[:File:2.9inch_e-Paper_Schematic.pdf|Schematic]]
 +
 
=== Demo code ===
 
=== Demo code ===
 
* [[:File:2.9inch_e-Paper_Module_code.7z|Demo code]]
 
* [[:File:2.9inch_e-Paper_Module_code.7z|Demo code]]
Line 239: Line 247:
 
* [[:File:2.13inch_e-Paper_Datasheet.pdf|2.13inch_e-Paper_Datasheet.pdf]]
 
* [[:File:2.13inch_e-Paper_Datasheet.pdf|2.13inch_e-Paper_Datasheet.pdf]]
 
* [[:File:2.9inch_e-Paper_Datasheet.pdf|2.9inch_e-Paper_Datasheet.pdf]]
 
* [[:File:2.9inch_e-Paper_Datasheet.pdf|2.9inch_e-Paper_Datasheet.pdf]]
 +
 +
== Relate applications ==
 +
*[https://www.instructables.com/id/Waveshare-EPaper-and-a-RaspberryPi/ WAVESHARE EPAPER AND A RASPBERRYPI]
 +
 
== FAQ ==
 
== FAQ ==
 
<!--{{e-Paper FAQ}}-->
 
<!--{{e-Paper FAQ}}-->

Latest revision as of 02:25, 25 December 2018

2.9inch e-Paper
2.9inch-e-Paper-1.jpg

296x128, 2.9inch E-Ink display raw panel
2.9inch e-Paper Module
2.9inch-e-paper-module-4.jpg

296x128, 2.9inch E-Ink display module, SPI interface
{{{name3}}}

{{{name4}}}

{{{name5}}}

Primary Attribute
Category: OLEDs / LCDs, LCD
{{{userDefinedInfo}}}: {{{userdefinedvalue}}}
Brand: Waveshare
Website
English: Waveshare website
Chinese: 官方中文站点
Onboard Interfaces
SPI
Related Products

Introduction

Note: The raw panel require a driver board, If you are the first time use this e-Paper, we recommend you to buy the HAT version or buy more one driver hat for easy use, otherwise you need to make the driver board yourself. And this instruction is based on the version with PCB or driver board.

296x128, 2.9inch E-Ink display module, SPI interface

More

Video

Resources

Documentation

Demo code

Code shared from users

Thanks to Martin, who share his code which was modified for particle photon wifi dev kit

Datasheets

Relate applications

FAQ

Question:
1. Why the e-Paper cant work with Arduino?
Answer:

The I/O level of Arduino is 5V, and the e-Paper should be driven with 3V3. If your Arduino cant drive the e-Paper successfully, please try to convert the level to 3.3V

You can also try to connect the Vcc pin to the 5V of Arduino to see whether the e-Paper works, but we recommend you not to use 5V for a long time.


Question:
2. Why does the color of e-Paper look a little black or grey?
Answer:

You can try to change the value of Vcom on demo codes.


Question:
3. Three-color e-paper looks more red/yellow than the picture on website?
Answer:

Because of different batch, some of them have aberration. Store the e-Paper right side up will reduce it. And if the e-Paper didn't be refreshed for long time, it will become more and more red/yellow. Please use the demo code to refresh the e-paper for several times in this case.


Question:
3. Why my e-paper has ghosting problem after working for some days
Answer:

Please set the e-paper to sleep mode or disconnect it if you needn't refresh the e-paper but need to power on your development board or Raspberry Pi for long time.Otherwise, the voltage of panel keeps high and it will damage the panel



Question:
4. Why the FPC of the e-Paper is broken after using for some times?
Answer:
Please make sure you have used it in correct way.

E-Paper FAQ FPC.jpg



Support

Mail.png Contact your seller (fast response and most recommended)

or send emails to [email protected] (not fast enough but please be patient) for help.

Our working time: 09:00-18:00 (UTC+8 Monday to Saturday)