# Sharp Memory LCD Kernel Driver **Note**: I did not write this driver. I only modified it to clean up compiler warnings/errors. The original can be found here: (http://www.librecalc.com/en/wp-content/uploads/sites/4/2014/10/sharp.c) More information can be found here: (http://www.librecalc.com/en/downloads/) This driver is for the LS027B7DH01. It *should* work with other Sharp Mem LCD displays by modifying all 400/240 references with the correct dimensions for your screen. ## Hookup Guide Connect the following pins: Display | RasPi ------- | --------- VIN | 3.3V 3V3 | N/C GND | GND SCLK | 11 (SCLK) MOSI | 10 (MOSI) CS | 23 EXTMD | 3.3V DISP | 24 EXTIN | 25 ## Compile/Install the driver Verify that you have the linux kernel headers for your platform. For the RasPi these can be obtained by: ``` sudo apt-get install raspberrypi-kernel-headers ``` or more generally: ``` sudo apt-get install linux-headers-$(uname -r) ``` To compile the driver, run: ``` make ``` To install the driver, run: ``` sudo make modules_install ``` If you want the module to load at boot you'll need to add it to the /etc/modules file, like: ``` ... # This file contains... # at boot time... sharp ``` ## Compile/Install the Device Tree Overlay The included sharp.dts file is for the Raspberry Pi Zero W. To compile it, run: ``` dtc -@ -I dts -O dtb -o sharp.dtbo sharp.dts ``` To load it at runtime, copy it to /boot/overlays: ``` sudo cp sharp.dtbo /boot/overlays ``` And then add the following line to /boot/config.txt: ``` dtoverlay=sharp ``` ## Console on Display If you want the boot console to show up on the display, you'll need to append `fbcon=map:10` to /boot/cmdline.txt after *rootwait*, like: ``` ... rootwait ... fbcon=map:10 ``` To make sure the console fits on screen, uncomment the following lines in /boot/config.txt and set the resolution appropriately: ``` framebuffer_width=400 framebuffer_height=240 ```