ben-epaper

Changeset

12:a4f6bb77805c
2013-05-27 Paul Boddie raw files shortlog changelog graph Added some documentation.
README.txt (file)
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/README.txt	Mon May 27 22:41:55 2013 +0000
     1.3 @@ -0,0 +1,183 @@
     1.4 +Introduction
     1.5 +------------
     1.6 +
     1.7 +The ben-epaper distribution provides a program, epaper, that runs on the Ben
     1.8 +NanoNote and controls the EM027AS012 display from Pervasive Displays on an
     1.9 +Embedded Artists' 2.7 inch E-paper Display module. To connect the module to
    1.10 +the Ben, the 8:10 port which is typically employed to access microSD cards is
    1.11 +instead used to hold a suitable breakout board that exposes the 8:10 port's
    1.12 +connectors to other circuits. These connectors are in turn connected to
    1.13 +specific connectors on the E-Paper Display module as follows:
    1.14 +
    1.15 +Sniffer  UBB   EM027AS012
    1.16 +-------  ----  -----------
    1.17 +DAT2     DAT2   4 (MOSI)
    1.18 +CD       DAT3   6 (SSEL)
    1.19 +CMD      CMD   11 (PWM)
    1.20 +VCC      VDD   13 (PANEL)
    1.21 +CLK      CLK    3 (SCK)
    1.22 +GND      GND
    1.23 +DAT0     DAT0  12 (RESET)
    1.24 +DAT1     DAT1  14 (DIS)
    1.25 +
    1.26 +On the E-Paper Display module the socket appears as follows, with the numbered
    1.27 +pins protruding from the board:
    1.28 +
    1.29 +       Socket
    1.30 +--------------------
    1.31 + 2  4  6  8 10 12 14
    1.32 + 1  3  5  7  9 11 13
    1.33 +---------__---------
    1.34 +
    1.35 +However, it is more convenient to use standard male-to-male jumper wires to
    1.36 +connect the Sniffer or UBB breakout board to the end of a suitable cable which
    1.37 +in turn plugs into the socket on the E-Paper Display module board. The jumper
    1.38 +wires plug into the holes in the cable plug. Remember that the pin numbering
    1.39 +is "mirrored" on the end of the cable:
    1.40 +
    1.41 +         __
    1.42 +---------  ---------
    1.43 + 1  3  5  7  9 11 13
    1.44 + 2  4  6  8 10 12 14
    1.45 +--------------------
    1.46 +       Cable
    1.47 +
    1.48 +In addition to the Sniffer or UBB connections, additional connections for 3.3V
    1.49 +power and ground must be connected as follows:
    1.50 +
    1.51 +3.3V Supply    EM027AS012
    1.52 +-----------    ----------
    1.53 +GND             1 (GND)
    1.54 +3V3             2 (3V3)
    1.55 +
    1.56 +Note that the VCC output of the 8:10 port is used as a "power control" signal
    1.57 +and not to power the display board.
    1.58 +
    1.59 +Collecting Images for Display
    1.60 +-----------------------------
    1.61 +
    1.62 +Before building the epaper program, you will first need to collect some images
    1.63 +with the following specific properties:
    1.64 +
    1.65 +Width:  264 pixels
    1.66 +Height: 176 pixels
    1.67 +
    1.68 +An image preparation program then needs to be run on a list of image filenames
    1.69 +to produce suitable source files incorporated into the built program. This is
    1.70 +done as follows:
    1.71 +
    1.72 +python tools/bitmap.py images file1.png file2.png file3.png
    1.73 +
    1.74 +Here, three PNG files are loaded, internally converted (the files are not
    1.75 +changed), and the bitmap data written out to two files:
    1.76 +
    1.77 +images.c
    1.78 +images.h
    1.79 +
    1.80 +Since the Makefile and epaper program references these files, it is
    1.81 +recommended that the "images" basename be retained when running the bitmap.py
    1.82 +program.
    1.83 +
    1.84 +Building the Software
    1.85 +---------------------
    1.86 +
    1.87 +Before building the software, it will probably be necessary to edit the
    1.88 +Makefile to specify the locations of the cross-compilation toolchain and of
    1.89 +libubb. Obtaining a toolchain and libubb is currently beyond the scope of this
    1.90 +document.
    1.91 +
    1.92 +The epaper program is built as follows:
    1.93 +
    1.94 +make
    1.95 +
    1.96 +Running the Software
    1.97 +--------------------
    1.98 +
    1.99 +On the Ben, the epaper program can be deployed together with libubb in a
   1.100 +particular directory and invoked as follows:
   1.101 +
   1.102 +LD_LIBRARY_PATH=. ./epaper
   1.103 +
   1.104 +Alternatively, the library search path can be configured properly and the
   1.105 +epaper program installed in such a way that merely typing the name of the
   1.106 +program is enough to run it.
   1.107 +
   1.108 +The epaper program accepts a list of options:
   1.109 +
   1.110 +<image number>              This indicates which image to display (where 0 is
   1.111 +                            the first image).
   1.112 +
   1.113 +--have <image number>       This indicates that the display is showing the
   1.114 +                            image with the given number (where 0 is the first
   1.115 +                            image) and is used to influence subsequent
   1.116 +                            options.
   1.117 +
   1.118 +--blank                     This blanks the screen, using knowledge of the
   1.119 +                            current screen image if provided either by the
   1.120 +                            --have option or by the display of a preceding
   1.121 +                            image.
   1.122 +
   1.123 +--wait <delay in seconds>   This causes a delay between operations.
   1.124 +
   1.125 +Hardware: Embedded Artists' 2.7 Inch E-paper Display Module
   1.126 +-----------------------------------------------------------
   1.127 +
   1.128 +This board provides an interface to the EM027AS012 display from Pervasive
   1.129 +Displays:
   1.130 +
   1.131 +http://www.embeddedartists.com/products/displays/lcd_27_epaper.php
   1.132 +
   1.133 +This software has only been tested with revision A of the board, and employs
   1.134 +code from Pervasive Displays that may have been superseded upon release of new
   1.135 +revisions of this and related boards (as mentioned below).
   1.136 +
   1.137 +More information and source code licensed under Free Software licences can be
   1.138 +found on the RePaper site:
   1.139 +
   1.140 +http://repaper.org/
   1.141 +
   1.142 +Other boards that provide an interface to the EM027AS012 display and other
   1.143 +displays from the same manufacturer also exist. For example:
   1.144 +
   1.145 +http://www.adafruit.com/products/1316
   1.146 +
   1.147 +This software has not been tested with such boards.
   1.148 +
   1.149 +Hardware: 8:10 Port Breakout Board
   1.150 +----------------------------------
   1.151 +
   1.152 +To connect the Ben NanoNote to the E-Paper Display module, a suitable breakout
   1.153 +board is required to expose the connections inside the 8:10 slot. To achieve
   1.154 +this, the Sparkfun microSD Sniffer has been used:
   1.155 +
   1.156 +https://www.sparkfun.com/products/9419
   1.157 +
   1.158 +This board is apparently intended for eavesdropping on communications between
   1.159 +a "host" device with a microSD slot and a microSD-based device that can be
   1.160 +inserted into a slot mounted on the board (instead of being inserted directly
   1.161 +into the host device). However, the board-mounted slot can be ignored and the
   1.162 +exposed connections routed to the display board instead.
   1.163 +
   1.164 +Another board that achieves the same purpose is the Universal Breakout Board
   1.165 +(UBB):
   1.166 +
   1.167 +http://en.qi-hardware.com/wiki/UBB
   1.168 +
   1.169 +The UBB is somewhat more difficult to work with as its connectors are very
   1.170 +small and, compared to the microSD Sniffer, awkward to attach things to. The
   1.171 +microSD Sniffer employs connectors situated around holes with 0.1 inch
   1.172 +spacing, meaning that commonly available connection headers can be soldered
   1.173 +onto the board.
   1.174 +
   1.175 +Although the labelling of the connections is different between the microSD
   1.176 +Sniffer and UBB (see above), the layout appears to be identical.
   1.177 +
   1.178 +Contact, Copyright and Licence Information
   1.179 +------------------------------------------
   1.180 +
   1.181 +The author can be contacted at the following e-mail address:
   1.182 +
   1.183 +paul@boddie.org.uk
   1.184 +
   1.185 +Copyright and licence information can be found in the docs directory - see
   1.186 +docs/COPYING.txt and docs/gpl-3.0.txt for more information.