[riot-notifications] [RIOT-OS/RIOT] WIP: IL3829 e-Paper/e-Ink display driver (#11078)

Silke Hofstra notifications at github.com
Thu Feb 28 11:05:05 CET 2019


<!--
The RIOT community cares a lot about code quality.
Therefore, before describing what your contribution is about, we would like
you to make sure that your modifications are compliant with the RIOT
coding conventions, see https://github.com/RIOT-OS/RIOT/wiki/Coding-conventions.
-->

### Contribution description

This PR adds a driver for the IL3829 e-Paper display driver.
This driver is commonly used in 1.54 inch black and white e-Paper displays like [this one][1].
The PR is currently WIP because of some things need to be looked up/tested (labelled with TODO in the code).

Highlights:

- A common SPI display driver. This contains parts I believe to be common to most SPI displays, like the one in #9948. Let me know if I should create a separate PR with this (and if it's a good idea at all).

- IL3829 display driver. This still needs some testing, because the module I currently own does not have the busy or reset pin available ([this one][1] is on the way, though).

- Header files containing RIOT logos. These were generated using [png2c][2].
  Some questions:
   - Should I move these to a generally available directory?
   - What should the copyright notice be?

- Tests for the display driver. A video with the full test can be found [here][3].

- The API of this driver is similar to the one from #9948. The major difference is that the `x2`, `y2` arguments are the coordinate of the corner, not the pixel in the corner. See [this discussion][4].

### Testing procedure
A test program is included (`tests/driver_il3829`).
Modify the makefile for a microcontroller/display combination you have and go for it.

This test will probably be updated when I have a display with the busy and reset pins (in a few weeks).

<!--
Details steps to test your contribution:
- which test/example to compile for which board and is there a 'test' command
- how to know that it was not working/available in master
- the expected success test output
-->


### Issues/PRs references
none

<!--
Examples: Fixes #1234. See also #5678. Depends on PR #9876.

Please use keywords (e.g., fixes, resolve) with the links to the issues you
resolved, this way they will be automatically closed when your pull request
is merged. See https://help.github.com/articles/closing-issues-using-keywords/.
-->

[1]: https://www.waveshare.com/product/modules/oleds-lcds/e-paper/1.54inch-e-paper-module.htm
[2]: https://github.com/silkeh/png2c
[3]: https://slxh.nl/files/il3829_demo.webm
[4]: https://github.com/RIOT-OS/RIOT/pull/9948/files#r225003782
You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/11078

-- Commit Summary --

  * spi_display: add generic SPI display driver
  * tests: add il3829 test
  * il3829: add driver for IL3829 E-ink controller

-- File Changes --

    M drivers/Makefile.dep (11)
    M drivers/Makefile.include (4)
    A drivers/il3829/Makefile (1)
    A drivers/il3829/il3829.c (205)
    A drivers/il3829/include/il3829_internal.h (107)
    A drivers/il3829/include/il3829_params.h (75)
    A drivers/il3829/include/il3829_pictures.h (756)
    A drivers/include/il3829.h (254)
    A drivers/include/spi_display.h (100)
    A drivers/spi_display/Makefile (1)
    A drivers/spi_display/spi_display.c (96)
    A tests/driver_il3829/Makefile (13)
    A tests/driver_il3829/main.c (59)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/11078.patch
https://github.com/RIOT-OS/RIOT/pull/11078.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/11078
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20190228/3b2122db/attachment-0001.html>


More information about the notifications mailing list