From Waveshare Wiki
Jump to: navigation, search
 
(33 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Infobox item
+
{{#tweekihide:firstHeading|sidebar-left|sidebar-right}}__NOTOC__
|img=<div class="tabber"><div class="tabbertab" title="2.9inch e-Paper">[[File:2.9inch-e-Paper-1.jpg|300px|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|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
 
|{{#urlget:amazon|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__
 
==About the versions==
 
<font backgound=white; color=#DD1223>
 
The 2.9inch e-Paper raw panel was updated to the V2 version. 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 the V2 version. 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>
 
 
 
== Introduction ==
 
{{E-Paper Raw Panel}}
 
 
 
296x128, 2.9inch E-Ink display module, SPI interface
 
 
 
{{Amazon|{{#urlget:amazon|default}}=display
 
|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 =
 
{|class="wikitable"
 
|-
 
| VCC || 3.3V
 
|-
 
| GND || GND
 
|-
 
| DIN || SPI MOSI
 
|-
 
| CLK || SPI SCK
 
|-
 
| CS || SPI chip select (Low active)
 
|-
 
| DC || Data/Command control pin (High for data, and low for command)
 
|-
 
| RST || External reset pin (Low for reset)
 
|-
 
| BUSY || Busy state output pin (High for busy)
 
|}
 
 
 
== Working principle ==
 
;Introduction
 
----
 
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 suspending 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. ('''Note that the e-Paper cannot support updating directly under sunlight''')
 
;Communication protocol
 
----
 
[[File:1.54inch-e-paper-manual-1.png]]
 
 
 
Note: Different from the traditional SPI protocol, the data line from the slave to the master is hidden since the device only has display requirement.
 
* CS is slave chip select, when CS is low, the chip is enabled.
 
* DC is data/command control pin, when DC = 0, write command, when DC = 1, write data.
 
* SCLK is the SPI communication clock.
 
* SDIN is the data line from the master to the slave in SPI communication.
 
SPI communication has data transfer timing, which is combined by CPHA and CPOL.
 
# CPOL determines the level of the serial synchronous clock at idle state. When CPOL = 0, the level is Low. However, CPOL has little effect to the transmission.
 
# CPHA determines whether data is collected at the first clock edge or at the second clock edge of serial synchronous clock; when CPHL = 0, data is collected at the first clock edge.
 
* There are 4 SPI communication modes. SPI0 is commonly used, in which CPHL = 0, CPOL = 0.
 
As you can see from the figure above, data transmission starts at the first falling edge of SCLK, and 8 bits of data are transferred in one clock cycle. In here, SPI0 is in used, and data is transferred by bits, MSB first.
 
</div>
 
<div class="tabbertab" title="User Guides of Pi">
 
 
 
We provide several examples for testing, you first test the e-Paper by following the guides. If your developing board is different, you need to write your codes yourself by following the resources.
 
{{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 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 STM32">
+
<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}}
  
{{STM32 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 Arduino">
+
|content = User guides for the development demo of C language, Python}}
  
{{Arduino 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
<div class="tabbertab" title="User Guides of ESP32">
+
|content = User guides for the development demo based on Arduino UNO R3}}
  
{{ESP32 Guides for SPI e-Paper}}
+
{{StudyCard|img=[[File:Jetson Arduino00.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Jetson_Nano]]
</div>
+
|heading = Working with the Jetson Nano
<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:Sunrise X3 Pi.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_Sunrise_X3_Pi]]
</div>
+
|heading = Working with Sunrise X3 Pi
<!--
+
|content = User guides for the development demo based on Python}}
=== 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">
 
  
== Documentation ==
+
{{StudyCard|img=[[File:STM321.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Working_With_STM32]]
*[https://www.waveshare.com/w/upload/9/98/2.9inch-e-paper-module-user-manual-en.pdf User Manual]
+
|heading = Working with the STM32
{{Commom Instruction of SPI e-paper}}
+
|content = User guides for the development demo based on STM32CubeMX}}
* [[:File:2.9inch_e-Paper_Schematic.pdf|Schematic]]
 
  
== Demo code ==
+
{{StudyCard|img=[[File:E-Paper_ESP32.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#ESP32.2F8266]]
*[https://github.com/waveshare/e-Paper Github]
+
|heading = Working with ESP32/8266
 +
|content = User guides for ESP32/8266}}
  
== Code shared from users ==
+
{{StudyCard|img=[[File:Resource0.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Resources]]
Thanks to Martin, who share his code which was modified for particle photon wifi dev kit
+
|heading = Resources
*[[:File:2.9inch_e-Paper_Module_code_particle.7z|2.9inch_e-Paper_Module_code_particle]]
+
|content = Documentation, procedures and data sheets, etc}}
  
== Datasheets ==
+
{{StudyCard|img=[[File:FAQ01.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#FAQ]]
* [[:File:1.54inch_e-Paper_Datasheet.pdf|1.54inch_e-Paper_Datasheet.pdf]]
+
|heading = FAQ
* [[:File:2.13inch_e-Paper_Datasheet.pdf|2.13inch_e-Paper_Datasheet.pdf]]
+
|content = e-Paper frequently asked questions}}
* [[:File:2.9inch_e-Paper_Datasheet.pdf|2.9inch_e-Paper_Datasheet.pdf]]
 
* [https://www.waveshare.com/w/upload/7/79/2.9inch-e-paper-v2-specification.pdf 2.9inch e-Paper V2 Specification]
 
  
==Related Resources==
+
{{StudyCard|img=[[File:support00.jpg|110px|link=https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Support]]
This is a post in Arduino Form about our SPI e-Paper thanks to ZinggJM, maybe you want to refer to.
+
|heading = Support
*[https://forum.arduino.cc/index.php?topic=487007.0 Waveshare e-Paper display with SPI]
+
|content = Technical support
 
+
}}
= Relate applications =
+
}}
*[https://www.instructables.com/id/Waveshare-EPaper-and-a-RaspberryPi/ WAVESHARE EPAPER AND A RASPBERRYPI]
 
</div>
 
<div class="tabbertab" title="FAQ">
 
 
 
== FAQ ==
 
<!--{{e-Paper FAQ}}-->
 
{{e-Paper FAQ}}
 
</div>
 
</div>
 
==Support==
 
{{Service00}}
 

Latest revision as of 06:15, 24 March 2023


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
E-Paper ESP32.jpg

Working with ESP32/8266

User guides for ESP32/8266
Resource0.jpg

Resources

Documentation, procedures and data sheets, etc
FAQ01.jpg

FAQ

e-Paper frequently asked questions
Support00.jpg

Support

Technical support