From Waveshare Wiki
Jump to: navigation, search
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<div class="wiki-pages jet-green-color">
+
{{#tweekihide:firstHeading|sidebar-left|sidebar-right}}__NOTOC__
{{Infobox item
 
|img=<div class="tabber"><div class="tabbertab" title="2.9inch e-Paper">[[File:2.9inch-e-Paper-1.jpg|300px|{{Amazon_nolink|default={{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}|url=link=https://www.waveshare.com/2.9inch-e-Paper.htm}}]]</div><div class="tabbertab" title="2.9inch e-Paper Module">[[File:2.9inch-e-paper-module-4.jpg|300px|{{Amazon_nolink|default={{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}|url=link=http://www.waveshare.com/2.9inch-e-paper-module.htm}}]]</div>
 
|caption=296x128, 2.9inch EPD panel
 
|caption2=296x128, 2.9inch EPD module, SPI interface
 
|category=[[:Category:OLEDs / LCDs|OLEDs / LCDs]], [[:Category:LCD|LCD]]
 
|brand=Waveshare
 
|{{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}=display
 
|website_cn=[http://www.waveshare.net/shop/2.9inch-e-paper-module.htm 官方中文站点]
 
|website_en=[http://www.waveshare.com/product/2.9inch-e-paper-module.htm Waveshare website]
 
|interface1=SPI
 
|related=
 
{{Product List|OLEDs / LCDs/e-Paper}}
 
}}
 
<div class="tabber">
 
<div class="tabbertab" title="Introduction">
 
__TOC__
 
=Overview=
 
==Versions==
 
<font backgound=white; color=#DD1223>
 
*As 2.9inch e-Paper raw panel was updated the V2. the controller and the driver codes are different and the codes of the two versions are not compatible with each other. Except for the software, the outline of the two versions is the same. If you are the regulars of this display, please note that you need to update your driver codes with the new version refer to our new examples for V2. if your the first time buy and use this display, just need to download and use the new V2 examples. The V2 version has a "V2" sticker on the backside of the display panel. Please confirm the version by the sticker.
 
</font>
 
*If you feel that the partial Refreshing of the V3 is slow, you can modify the refreshing speed by the waveform in EPD_2in13_V3.c. If the value is reduced, the refreshing speed will be accelerated.
 
[[File:e-paper screen.png]]<br/>
 
 
 
==Driver Board==
 
The version of the driver board and the screen are independent. The current version of the driver board is Rev2.1, with power-off function and level shifting function. The driver to use is mainly selected according to the screen version.
 
{{Amazon|{{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}=display
 
|More = [http://www.waveshare.com/product/2.9inch-e-paper-module.htm More]}}
 
 
 
==Feature==
 
*Dimension: 2.9inch
 
*Outline dimension (only screen): 79.0mm x 36.7mm x 1.05mm
 
*Outline dimension (driver board): 89.5mm x 38mm
 
* Display dimension: 66.89mm x 29.05mm
 
*Working voltage: 3.3V/5V
 
*Communication interfaces: SPI
 
*Pixel pitch: 0.227 x 0.226
 
*Resolution: 296*128
 
*Display color: Black, White
 
*Gray level: 2
 
*Partial refresh: 0.3s
 
*Full refresh: 2s
 
*Refresh Power Consumption: 26.4mW(typ.)
 
*Sleep current: <0.01uA(close to 0)
 
*【Note】
 
**Refresh time: The refresh time is the experimental results, the actual refresh time will have errors, and the actual effect shall prevail. There will be a flickering effect during the global refresh process, this is a normal phenomenon
 
**Power consumption: The power consumption data is the experimental results. The actual power consumption will have a certain error due to the existence of the driver board and the actual use situation. The actual effect shall prevail.
 
 
 
==SPI Communication Timing==
 
[[File:1.54inch-e-paper-manual-1.png|400px]]
 
 
 
Since the ink screen only needs to be displayed, the data cable (MISO) sent from the machine and received by the host is hidden here.
 
*CS: Slave chip select, when CS is low, the chip is enabled
 
*DC: data/command control pin, write command when DC=0; write data when DC=1
 
*SCLK: SPI communication clock
 
*SDIN: SPI communication master sends, slave receives
 
*Timing: CPHL=0, CPOL=0 (SPI0)
 
【Remarks】For specific information about SPI, you can search for information online.<big>
 
 
 
==Working principle==
 
This product is an E-paper device adopting the image display technology of Microencapsulated Electrophoretic Display, MED. The initial approach is to create tiny spheres, in which the charged color pigments are suspended in the transparent oil and would move depending on the electronic charge. The E-paper screen display patterns by reflecting the ambient light, so it has no background light requirement. Under ambient light, the E-paper screen still has high visibility with a wide viewing angle of 180 degrees. It is the ideal choice for E-reading. ('''Note that the e-Paper cannot support updating directly under sunlight''')
 
===Pixel & Byte===
 
We define the pixels in a monochrome picture, 0 is black and 1 is white.<br />
 
White:□: Bit 1<br />
 
Black:■: Bit 0<br />
 
*The dot in the figure is called a pixel. As we know, 1 and 0 are used to define the color, therefore we can use one bit to define the color of one pixel, and 1 byte = 8pixels<br />
 
*For example, If we set the first 8 pixels to black and the last 8 pixels to white, we show it by codes, they will be 16 bit as below:<br />
 
[[file:e-paper_hardware_work_1.png]]<br />
 
For computer, the data is saved in MSB format:<br />
 
[[file:e-paper_hardware_work_2.png]]<br />
 
So we can use two bytes for 16 pixels.<br />
 
 
 
==Precautions==
 
#For the screen that supports partial update, please note that you cannot refresh the screen with the partial mode all the time. After several partial updating, you need to fully refresh the screen once. Otherwise, the screen display effect will be abnormal, which cannot be repaired!<br/>
 
#Because of the different batches, some of them have aberrations. Store the e-Paper right side up will reduce it. And if the e-Paper didn't be refreshed for a long time, it will become more and more reddish/yellowish. Please use the demo code to refresh the e-paper several times in this case.<br/>
 
#Note that the screen cannot be powered on for a long time. When the screen is not refreshed, please set the screen to sleep mode, or power off the e-Paper. Otherwise, the screen will remain in a high voltage state for a long time, which will damage the e-Paper and cannot be repaired!<br/>
 
#When using the e-Paper, it is recommended that the refresh interval be at least 180s, and refresh at least once every 24 hours. If the e-Paper is not used for a long time, the ink screen should be brushed and stored. (Refer to the datasheet for specific storage environment requirements)<br/>
 
#After the screen enters sleep mode, the sent image data will be ignored, and it can be refreshed normally only after initializing again.<br/>
 
#Control the 0x3C or 0x50 (refer to the datasheet for details) register to adjust the border color. In the routine, you can adjust the Border Waveform Control register or VCOM AND DATA INTERVAL SETTING to set the border.<br/>
 
#If you find that the created image data is displayed incorrectly on the screen, it is recommended to check whether the image size setting is correct, change the width and height settings of the image and try again.<br/>
 
#The working voltage of the e-Paper is 3.3V. If you buy the raw panel and you need to add a level convert circuit for compatibility with 5V voltage. The new version of the driver board (V2.1 and subsequent versions) has added a level processing circuit, which can support both 3.3V and 5V working environments. The old version can only support a 3.3V working environment. You can confirm the version before using it. (The one with the 20-pin chip on the PCB is generally the new version)<br/>
 
#The FPC cable of the screen is relatively fragile, pay attention to bending the cable along the horizontal direction of the screen when using it, and do not bend the cable along the vertical direction of the screen<br/>
 
#The screen of e-Paper is relatively fragile, please try to avoid dropping, bumping, and pressing hard.<br/>
 
#We recommend that customers use the sample program provided by us to test with the corresponding development board after they get the screen.<br/>
 
 
 
{{Raspberry Pi Guides for SPI e-Paper}}
 
</div>
 
<div class="tabbertab" title="User Guides of Jetson Nano">
 
 
 
{{Jetson Nano Guides for SPI e-Paper}}
 
</div>
 
<div class="tabbertab" title="User Guides of STM32">
 
 
 
{{STM32 Guides for SPI e-Paper}}
 
</div>
 
<div class="tabbertab" title="User Guides of Arduino">
 
  
{{Arduino Guides for SPI e-Paper}}
+
<div style="background-color: #343434;text-align: center;color: white;padding: 20px;margin: 8px;">
 +
=2.9inch e-Paper Module Manual=
 
</div>
 
</div>
<div class="tabbertab" title="User Guides of ESP32">
+
<p></p>
 +
{{ContentGrid|grid-gap=25px
 +
|content =
 +
{{StudyCard
 +
|img=[[File:E-Paper_Introduction_4.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Overview]]
 +
|heading = Introduction
 +
|content = Parameters, principles and precautions}}
  
{{ESP32 Guides for SPI e-Paper}}
+
{{StudyCard|img=[[File:Rapberry Pi.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Raspberry_Pi]]
</div>
+
|heading = Working with Raspberry Pi
<div class="tabbertab" title="User Guides of ESP8266">
+
|content = User guides for the development demo of C language, Python}}
  
{{ESP8266 Guides for SPI e-Paper}}
+
{{StudyCard|img=[[File:Arduino00.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Arduino]]
</div>
+
|heading = Working with the Arduino
<!--
+
|content = User guides for the development demo based on Arduino UNO R3}}
=== Set the frame memory (SetFrameMemory) ===
 
SetFrameMemory is used to write image data to the memory.
 
* 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.  
 
* 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.
 
* 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.
 
For example:
 
<pre>
 
0xC3:8 pixels □□■■■■□□
 
0x00:8 pixels ■■■■■■■■
 
0xFF:8 pixels □□□□□□□□
 
0x66:8 pixels ■□□■■□□■
 
</pre>
 
-->
 
<div class="tabbertab" title="Resources">
 
  
=Resources=
+
{{StudyCard|img=[[File:Jetson Arduino00.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Jetson_Nano]]
== Documentation ==
+
|heading = Working with the Jetson Nano
*[https://www.waveshare.com/w/upload/9/98/2.9inch-e-paper-module-user-manual-en.pdf User Manual]
+
|content = User guides for the development demo of C language, Python}}
{{Commom Instruction of SPI e-paper}}
 
* [[:File:2.9inch_e-Paper_Schematic.pdf|Schematic]]
 
  
== Demo code ==
+
{{StudyCard|img=[[File:Sunrise X3 Pi.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Sunrise_X3_Pi]]
*[https://github.com/waveshare/e-Paper Github]
+
|heading = Working with Sunrise X3 Pi
 +
|content = User guides for the development demo based on Python}}
  
== Code shared from users ==
+
{{StudyCard|img=[[File:STM321.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_STM32]]
Thanks to Martin, who share his code which was modified for particle photon wifi dev kit
+
|heading = Working with the STM32
*[[:File:2.9inch_e-Paper_Module_code_particle.7z|2.9inch_e-Paper_Module_code_particle]]
+
|content = User guides for the development demo based on STM32CubeMX}}
  
== Datasheets ==
+
{{StudyCard|img=[[File:Resource0.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Resources]]
* [[:File:2.9inch_e-Paper_Datasheet.pdf|2.9inch_e-Paper_Datasheet.pdf]]
+
|heading = Resources
* [https://www.waveshare.com/w/upload/7/79/2.9inch-e-paper-v2-specification.pdf 2.9inch e-Paper V2 Specification]
+
|content = Documentation, procedures and data sheets, etc}}
  
==Related Resources==
+
{{StudyCard|img=[[File:FAQ01.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#FAQ]]
This is a post in Arduino Form about our SPI e-Paper thanks to ZinggJM, maybe you want to refer to.
+
|heading = FAQ
*[https://forum.arduino.cc/index.php?topic=487007.0 Waveshare e-Paper display with SPI]
+
|content = e-Paper frequently asked questions}}
  
==Relate applications==
+
{{StudyCard|img=[[File:support00.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Support]]
*[https://www.instructables.com/id/Waveshare-EPaper-and-a-RaspberryPi/ WAVESHARE EPAPER AND A RASPBERRYPI]
+
|heading = Support
</div>
+
|content = Technical support
<div class="tabbertab" title="FAQ">
+
}}
 
+
}}
=FAQ=
 
{{e-paper Hat FAQ}}
 
 
 
 
 
{{Service00}}
 
</div>
 

Latest revision as of 07:02, 17 November 2022


2.9inch e-Paper Module Manual

E-Paper Introduction 4.jpg

Introduction

Parameters, principles and precautions
Rapberry Pi.jpg

Working with Raspberry Pi

User guides for the development demo of C language, Python
Arduino00.jpg

Working with the Arduino

User guides for the development demo based on Arduino UNO R3
Jetson Arduino00.jpg

Working with the Jetson Nano

User guides for the development demo of C language, Python
Sunrise X3 Pi.jpg

Working with Sunrise X3 Pi

User guides for the development demo based on Python
STM321.jpg

Working with the STM32

User guides for the development demo based on STM32CubeMX
Resource0.jpg

Resources

Documentation, procedures and data sheets, etc
FAQ01.jpg

FAQ

e-Paper frequently asked questions
Support00.jpg

Support

Technical support