Skip to content

ValentinDebon/xf86-video-epaper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xf86-video-epaper

A third-party Xorg video driver for Epaper panels.

It was primarily made as an exercise, but the code is modular enough to accept new models. Sadly, Xorg is missing lots of documentations, so this driver may have unidentified bugs.

The design tries its best to be non-blocking, so feel free to read the existing code to understand how deferred operations can be performed.

Dependencies

The source code currently uses an old version of gpiod, which was the only available one in my old raspbian development rig. So the gpiod code might not build properly on a more recent Linux distribution. The SPI uses the raw Linux character device interface.

Configure, build and install

The build sequence expects the pkg-config package xorg-server to be installed.

sudo apt install xserver-xorg-dev # Debian

Download and extract a release tarball.

./configure
make
make install

Then, you can take inspiration from the example xorg.conf in the repository to configure your server.

Contributions

The driver is licensed under the MIT license, see COPYING for more informations.

Contributions are welcomed as long as the patch is of quality. Coding-style is roughly CamelCase. For the rest, as long as it fits in, it's ok.

There is a lot of room for improvements, a few ideas where to begin:

  • Support asynchronous SPI transfers.
  • Abstract the GPIO and SPI interfaces, maybe even in external modules.
  • Using the configuration file to find out the GPIO pins, and SPI mode/speed.
  • Use the bconf system to make some chipsets optional at build-time.
  • Support for Xorg forks (compatibility with Xlibre?).
  • Split the source code in several files.
  • More panel models.

Supported panels

About

Xorg video driver for epaper displays

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors