Jump to: navigation, search

Manga Screen 2

Revision as of 13:16, 8 December 2017 by Elias (talk | contribs) (Screen rotation)

Manga Screen 2 is an LCD screen with a capacitive touch panel and an HDMI input.

It comes in two versions: Big, 5.9", 1080p Small, 4.8", 720p

If you have a Beaglebone black, a Raspberry Pi or (eventually) an Arduino Tre or any other embedded or personal computer with a DVI or HDMI output, you can attach a Manga Screen to it and it will work like a normal screen.

The resolution is high for such a small screen with 1080x1920 (Full HD) and the capacitive touch screen driver used is the fabulous Synaptics S3202.

Here are some tech specs for the big one:

Here is a picture of a prototype in action:

Where to buy

It's currently available for pre-order from thing-printer.com



The HDMI connector on the screen is a type A (regular) https://en.wikipedia.org/wiki/HDMI#Connectors


The USB connector on the screen is of type micro. It can be purchased in just about every Cheap Charley like store.

Getting started

Raspberry Pi

Manga Screen Rev B has been tested on Raspberry pi 1, 2 and 3.

Screen rotation

If you have a Raspberry Pi, you will need to override the settings manually to get the right rotation and resolution. Look at the config page for Raspberry Pi, the section called "custom mode" for HDMI: https://www.raspberrypi.org/documentation/configuration/config-txt.md

Edit the config file:

sudo nano /boot/config.txt

Add this to the end of it:

hdmi_cvt=1080 1920 60 5 0 0 0



You can also set the timings manually on more modern firmwares:

hdmi_timings=1080 1 100 10 60 1920 1 4 2 4 0 0 0 60 0 144000000 3

Touch panel rotation

The touch panel is rotated 180 degrees compared to the LCD, so you need to add a rule to udev to rotate it back:

sudo nano /etc/udev/rules.d/99-manga.rules

Add this:

ACTION=="add", ATTRS{name}=="Intelligent Agent AS Manga Screen 2", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1" #180

BeagleBone Black

Works with resolution 1088 x 1920. Note that the x-resolution needs to be a multiple of 16. The remaining pixels will disappear into the vertical back porch.



Linux users

Typically, the touch input is mapped to the main screen. To map the touch panel to the screen in X, use following command:

xinput map-to-output <device_nr> <output>

To rotate or invert axes in an X based server:

pi@prompt:~ $ DISPLAY=:0 xinput --list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ Intelligent Agent AS Manga Screen 2     	id=6	[slave  pointer  (2)]
pi@prompt:~ $ DISPLAY=:0 xinput set-prop 'Intelligent Agent AS Manga Screen 2' 'Evdev Axes Swap' 1
pi@prompt:~ $ DISPLAY=:0 xinput --set-prop 'Intelligent Agent AS Manga Screen 2' 'Evdev Axis Inversion' 1 0

Testing with tslib

TSlib is a great program for testing the screen and making sure the touch and multi touch is working as expected. Please note that there seems to be a delay in updating the position on the long side. Not sure why this is happening, but its seems to be due to some filtering happening.

Adjusting things

When plugged in the screen should enumerate as a mixed device, both a touch device and a serial device. The touch device will provide the touch screen data and the serial device can be used for controlling stuff on the screen.

To get a list of commands, write



printf "backlight 100\r" > /dev/ttyACM0 

Digitizer rotation

DISPLAY=:0 xinput set-prop "Intelligent Agent AS Manga Screen 2" "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1

Uploading EDID

EDID is bundled with the firmware and can not be updated on MS2.