robweber / omni-epd

An EPD (electronic paper display) class abstraction to simplify communications across multiple display types.
GNU General Public License v3.0
77 stars 16 forks source link

Waveshare 3.7in fixes #49

Closed robweber closed 3 years ago

robweber commented 3 years ago

After some testing on actual hardware the Waveshare 3.7 in requires some different method calls than the other screens due to some quirks in its hardware. The gray1 functions are actually partial updates for the given grayscale color, not a full update in 1 color. This currently results in partial updates when using the default "bw" color mode. This PR does the following:

  1. Moves 3.7in Waveshare to it's own EPD class
  2. Removes "bw" option as gray4 is really the only option
  3. Updates other classes to remove references to this device

This will close #18 when merged.

robweber commented 3 years ago

In commit https://github.com/robweber/omni-epd/commit/601ed7190ba8966086c245199cfec6bf703201a2 it should be noted that the height/width values in the Waveshare source are reversed for this display. Will attempt to fix with Waveshare directly but for now corrected here.