Customize your IX4-300D’s LCD Screen

This guide will show you how to Customize the LCD screen of your IX4-300d, this is just a starting guide to show some extra useful information on your LCD, but anyone can build custom scripts and images to change the LCD with more useful information!! We will need to use BMP images here as I didn’t find a way to print strings directly on the display.

Requirements

– IX4-300d with SSH Access: SSH Guide
– Custom startup script: Guide Here
– Some suitable images to test: Download Here

Try this guide on your own risk, i am not responsible for any damage/bricks… nor is Lenovo.

Disable current LCD Service

When your NAS starts, a service is started that will control the LCD, by default it will show your IP,Time, Disk usage… and some very annoying warnings (device 95% full, SSH access enabled…). We need to disable this service to take over control of the LCD.

SSH into your NAS :

ssh root@192.168.1.2

Then navigate to /opt ;

cd /opt/

There should be a edit-config.sh script we used in my previous tutorials.

Run the script :

sh edit-config.sh

A nano editor should open the services file of your NAS, find the “displayd” service:

ix4-300d_lcdimgprocess1

Remove the “Restart=”-1″” parameter :

ix4-300d_lcdimgprocess2

Double check you ONLY removed the Restart parameter. Only continue if you double checked your edit!

To save, click CTRL+O and Enter, exit by CTRL+X and now reboot your NAS by typing reboot

Limitations: The default LCD driver will only allow you setting a .bmp image on the LCD screen, This is just a simple/limited solution for customizing the LCD screen without having to rewrite a new driver.

Creating custom LCD Images

I created an image collection for my own NAS, you can download & edit these images to your settings. I recommend using paint since these images MUST be Monochrome Bitmap(.bmp) files with a resolution of 128×64. the size will always be 1.1kb (1086bytes)…The colors should always be a black background with white text.

Open the “black_default.bmp” file in the paint (found in images zip):

ix4customlcdimage

Now select the text tool, make your text readable size & white, type your text, when done creating your image, hit save… Make sure you save your image as a “Monochrome Bitmap”, other options won’t work :

ix4customlcdimage2

Your image is now done, create as many images as you want…. Now copy the images to your NAS, I keep it simple by creating a new folder on my “Downloads” share called “.lcdimages”. Since the folder starts with a ., it’s invisible for browsers, if the folder is still visible.. rightclick and make the folder invisible. Then…

Navigate to your Downloads share

cd mnt/pools/A/A0/Downloads

Create new folder:

mkdir .lcdimages

Also change the permissions on this folder :

chmod 777 .lcdimages

paste all your images in this folder using your windows explorer or mac’s finder:

ix4customlcdimage3

Create new custom LCD script

Navigate to /opt/ and create a new service script :

nano lcdservice.sha

Paste following code in your script file:

#! /bin/sh
while :
do

lcd_pid=$(pidof displayd)
kill $lcd_pid
lcdimg /mnt/pools/A/A0/Downloads/.lcdimages/lenovoix.bmp
sleep 5;
cd_pid=$(pidof displayd)
kill $lcd_pid
lcdimg /mnt/pools/A/A0/Downloads/.lcdimages/transmission.bmp
sleep 5;
cd_pid=$(pidof displayd)
kill $lcd_pid
lcdimg /mnt/pools/A/A0/Downloads/.lcdimages/nzbget.bmp
sleep 5;
cd_pid=$(pidof displayd)
kill $lcd_pid
lcdimg /mnt/pools/A/A0/Downloads/.lcdimages/couchpotato.bmp
sleep 5;
cd_pid=$(pidof displayd)
kill $lcd_pid
lcdimg /mnt/pools/A/A0/Downloads/.lcdimages/sickbeard.bmp
sleep 5;

done

Make sure you modify the links to your images. This is the script i’ve got currently running on my personal NAS. You can add as many images as you want to the script, make sure the path is correct or the default LCD service may take over again, also you may notice I kill the LCD service every image change to make sure the default service doesn’t take over the LCD screen again.

(This is not the cleanest/best way to control the LCD  however it’s the easiest and fastest way without having to write a completely new LCD driver.)

Leave a Reply