tontec 7 inch lcd touch screen driver free sample
approx. ...6 hours total print time/ top piece or bezel screen holder with ribbon cable passage bottom hold 2 pcb boards Case to contain the 7" touch screen and 2 circuit boards Print Settings Printer: Prusa I2 Rafts: No Supports: No Resolution: 300
Este es un remix del case builttospec , en mi caso tengo la raspberry pi 3 b y tengo una pantalla tontec 3.5 , y no habia en ningun lado el case para ambos, hice una pequeña modificacion para que la pantalla que tiene muescas en los cuatro lados se...
A version 1.0 of a screen case for a 7" screen. It is intended to be mounted onto a printer frame and connected to a Raspberry Pi 3 for use as an "on-printer" computer. The screen will require: 4 M3/M4 5mm screws and nuts for the screen mounting. 4...
This is a 7" LCD display enclosure for this screen: http://www.waveshare.com/7inch-HDMI-LCD-C.htm At the moment, all I"ve got is the top panel, though I added the sides in the OpenSCAD project file. It needs pillars in the corners, so I can put a...
This is a screen case for the "7inch HDMI Display-B" with USB capacitive touch, Model number MPI7001. The screen is available on amazon at the following link:...
There was a set that were made for the screen without a case and those were too small and the back of the case went below the feet. Because there were no design files I could not remix it so I created my own from scratch. These were made to fit the...
This enclosure will host the official 7" touch screen from the Raspberry Pi fundation, plus a regular size Raspberry Pi. The screen snap fits nicelly, but can be removed very easily. It must be printed with the front side (the one where the screen...
Cover for Monitor 7" Touch Screen - SainSmart Link for Buy: http://amzn.to/2qbmRNm SainSmart 7 pollici TFT LCD Touch Screen Monitor per Raspberry Pi + driver scheda HDMI VGA 2AV...
This enclosure will host the official 7" touch screen from the Raspberry Pi fundation, plus a regular size Raspberry Pi. The screen snap fits nicelly, but can be removed very easily. It must be printed with the front side (the one where the screen...
The [original](https://www.thingiverse.com/thing:2315736) from [MiguelBi](https://www.thingiverse.com/MiguelBi) had hexagon grids both in the back layer and in the middle layer, making it...
Found this frame for the 7" Touch Screen Display and it fits the screen like a glove and still allows for menu buttons to be used, great design. Only thing that would make this frame perfect for me would be having a bracket to hang it on Skadis...
Post a make! I had to flip my screen as it was up-side down: In Terminal: sudo nano /boot/config.txt Add line: lcd_rotate=2 To exit: Ctrl + X Y Enter sudo reboot Links: Raspberry Pi 7" Touch Screen Display on Amazon GeeekPi 4010 Blue LED fan on...
I needed a touch screen to be used by a Raspberry Pi via HDMI and decided to test this one : https://www.aliexpress.com/item/32832814420.html?spm=a2g0s.9042311.0.0.547d4c4dOFYiZL I also designed a case to the specific dimensions of this screen with...
I needed a touch screen to be used by a Raspberry Pi via HDMI and decided to test this one : https://www.aliexpress.com/item/32832814420.html?spm=a2g0s.9042311.0.0.547d4c4dOFYiZLI also designed a case to the specific dimensions of this screen with an...
3d .stl files for creating an enclosure for the official 7" touch screen for the Raspberry Pi. There is a separate file for for enclosing the RasPi B module.(or RasPi 2) It is attached with 4 slide on interlocking clips for easy removal for...
This is a supporting mount for the official 7" IPS-Display and the 7" Capacitive-Touchpanel-Overlay of the LattePanda single board computer. The mount stands above the LattePanda board, you may need extra M3 screws to get it installed.
In these videos, the SPI (GPIO) bus is referred to being the bottleneck. SPI based displays update over a serial data bus, transmitting one bit per clock cycle on the bus. A 320x240x16bpp display hence requires a SPI bus clock rate of 73.728MHz to achieve a full 60fps refresh frequency. Not many SPI LCD controllers can communicate this fast in practice, but are constrained to e.g. a 16-50MHz SPI bus clock speed, capping the maximum update rate significantly. Can we do anything about this?
The fbcp-ili9341 project started out as a display driver for the Adafruit 2.8" 320x240 TFT w/ Touch screen for Raspberry Pi display that utilizes the ILI9341 controller. On that display, fbcp-ili9341 can achieve a 60fps update rate, depending on the content that is being displayed. Check out these videos for examples of the driver in action:
Given that the SPI bus can be so constrained on bandwidth, how come fbcp-ili9341 seems to be able to update at up to 60fps? The way this is achieved is by what could be called adaptive display stream updates. Instead of uploading each pixel at each display refresh cycle, only the actually changed pixels on screen are submitted to the display. This is doable because the ILI9341 controller, as many other popular controllers, have communication interface functions that allow specifying partial screen updates, down to subrectangles or even individual pixel levels. This allows beating the bandwidth limit: for example in Quake, even though it is a fast pacing game, on average only about 46% of all pixels on screen change each rendered frame. Some parts, such as the UI stay practically constant across multiple frames.
Good old interlacing is added into the mix: if the amount of pixels that needs updating is detected to be too much that the SPI bus cannot handle it, the driver adaptively resorts to doing an interlaced update, uploading even and odd scanlines at subsequent frames. Once the number of pending pixels to write returns to manageable amounts, progressive updating is resumed. This effectively doubles the maximum display update rate. (If you do not like the visual appearance that interlacing causes, it is easy to disable this by uncommenting the line #define NO_INTERLACING in file config.h)
The result is that the SPI bus can be kept close to 100% saturation, ~94-97% usual, to maximize the utilization rate of the bus, while only transmitting practically the minimum number of bytes needed to describe each new frame.
This driver does not utilize the notro/fbtft framebuffer driver, so that needs to be disabled if active. That is, if your /boot/config.txt file has lines that look something like dtoverlay=pitft28r, ..., dtoverlay=waveshare32b, ... or dtoverlay=flexfb, ..., those should be removed.
This program neither utilizes the default SPI driver, so a line such as dtparam=spi=on in /boot/config.txt should also be removed so that it will not cause conflicts.
Likewise, if you have any touch controller related dtoverlays active, such as dtoverlay=ads7846,... or anything that has a penirq= directive, those should be removed as well to avoid conflicts. It would be possible to add touch support to fbcp-ili9341 if someone wants to take a stab at it.
If you have been running existing fbcp driver, make sure to remove that e.g. via a sudo pkill fbcp first (while running in SSH prompt or connected to a HDMI display), these two cannot run at the same time. If /etc/rc.local or /etc/init.d contains an entry to start up fbcp at boot, that directive should be deleted.
-DPIRATE_AUDIO_ST7789_HAT=ON: If specified, targets a Pirate Audio 240x240, 1.3inch IPS LCD display HAT for Raspberry Pi with ST7789 display controller
-DKEDEI_V63_MPI3501=ON: If specified, targets a KeDei 3.5 inch SPI TFTLCD 480*320 16bit/18bit version 6.3 2018/4/9 display with MPI3501 display controller.
-DBACKLIGHT_CONTROL=ON: If set, enables fbcp-ili9341 to control the display backlight in the given backlight pin. The display will go to sleep after a period of inactivity on the screen. If not, backlight is not touched.
-DSTATISTICS=number: Specifies the level of overlay statistics to show on screen. 0: disabled, 1: enabled, 2: enabled, and show frame rate interval graph as well. Default value is 1 (enabled).
Here is a full example of what to type to build and run, if you have the Adafruit 2.8" 320x240 TFT w/ Touch screen for Raspberry Pi with ILI9341 controller:
Perhaps a bit counterintuitively, underclock the core. Setting a smaller core frequency than the default turbo 400MHz can enable using a smaller clock divider to get a higher resulting SPI bus speed. For example, if with default core_freq=400 SPI CDIV=8 works (resulting in SPI bus speed 400MHz/8=50MHz), but CDIV=6 does not (400MHz/6=66.67MHz was too much), you can try lowering core_freq=360 and set CDIV=6 to get an effective SPI bus speed of 360MHz/6=60MHz, a middle ground between the two that might perhaps work. Balancing core_freq= and CDIV options allows one to find the maximum SPI bus speed up to the last few kHz that the display controller can tolerate. One can also try the opposite direction and overclock, but that does then of course have all the issues that come along when overclocking. Underclocking does have the drawback that it makes the Pi run slower overall, so this is certainly a tradeoff.
On the other hand, it is desirable to control how much CPU time fbcp-ili9341 is allowed to use. The default build settings are tuned to maximize the display refresh rate at the expense of power consumption on Pi 3B. On Pi Zero, the opposite is done, i.e. by default the driver optimizes for battery saving instead of maximal display update speed. The following options can be controlled to balance between these two:
The main option to control CPU usage vs performance aspect is the option #define ALL_TASKS_SHOULD_DMA in config.h. Enabling this option will greatly reduce CPU usage. If this option is disabled, SPI bus utilization is maximized but CPU usage can be up to 80%-120%. When this option is enabled, CPU usage is generally up to around 15%-30%. Maximal CPU usage occurs when watching a video, or playing a fast moving game. If nothing is changing on the screen, CPU consumption of the driver should go down very close to 0-5%. By default #define ALL_TASKS_SHOULD_DMA is enabled for Pi Zero, but disabled for Pi 3B.
The CMake option -DUSE_DMA_TRANSFERS=ON should always be enabled for good low CPU usage. If DMA transfers are disabled, the driver will run in Polled SPI mode, which generally utilizes a full dedicated single core of CPU time. If DMA transfers are causing issues, try adjusting the DMA send and receive channels to use for SPI communication with -DDMA_TX_CHANNEL=
If your SPI display bus is able to run really fast in comparison to the size of the display and the amount of content changing on the screen, you can try enabling #define UPDATE_FRAMES_IN_SINGLE_RECTANGULAR_DIFF option in config.h to reduce CPU usage at the expense of increasing the number of bytes sent over the bus. This has been observed to have a big effect on Pi Zero, so is worth checking out especially there.
The option #define RUN_WITH_REALTIME_THREAD_PRIORITY can be enabled to make the driver run at realtime process priority. This can lock up the system however, but still made available for advanced experimentation.
A pleasing aspect of fbcp-ili9341 is that it introduces very little latency overhead: on a 119Hz refreshing ILI9341 display, fbcp-ili9341 gets pixels as response from GPIO input to screen in well less than 16.66 msecs time. I only have a 120fps recording camera, so can"t easily measure delays shorter than that, but rough statistical estimate of slow motion video footage suggests this delay could be as low as 2-3 msecs, dominated by the ~8.4msecs panel refresh rate of the ILI9341.
Unfortunately a limitation of SPI connected displays is that the VSYNC line signal is not available on the display controllers when they are running in SPI mode, so it is not possible to do vsync locked updates even if the SPI bus bandwidth on the display was fast enough. For example, the 4 ILI9341 displays I have can all be run faster than 75MHz so SPI bus bandwidth-wise all of them would be able to update a full frame in less than a vsync interval, but it is not possible to synchronize the updates to vsync since the display controllers do not report it. (If you do know of a display that does actually expose a vsync clock signal even in SPI mode, you can try implementing support to locking on to it)
The codebase captures screen framebuffers by snapshotting via the VideoCore vc_dispmanx_snapshot() API, and the obtained pixels are then routed on to the SPI-based display. This kind of polling is performed, since there does not exist an event-based mechanism to get new frames from the GPU as they are produced. The result is inefficient and can easily cause stuttering, since different applications produce frames at different paces. Ideally the code would ask the VideoCore API to receive finished frames in callback notifications immediately after they are rendered, but this kind of functionality does not exist in the current GPU driver stack. In the absence of such event delivery mechanism, the code has to resort to polling snapshots of the display framebuffer using carefully timed heuristics to balance between keeping latency and stuttering low, while not causing excessive power consumption. These heuristics keep continuously guessing the update rate of the animation on screen, and they have been tuned to ensure that CPU usage goes down to 0% when there is no detected activity on screen, but it is certainly not perfect. This GPU limitation is discussed at raspberrypi/userland#440. If you"d like to see fbcp-ili9341 operation reduce latency, stuttering and power consumption, please throw a (kind!) comment or a thumbs up emoji in that bug thread to share that you care about this, and perhaps Raspberry Pi engineers might pick the improvement up on the development roadmap. If this issue is resolved, all of the #define USE_GPU_VSYNC, #define SAVE_BATTERY_BY_PREDICTING_FRAME_ARRIVAL_TIMES and #define SELF_SYNCHRONIZE_TO_GPU_VSYNC_PRODUCED_NEW_FRAMES hacks from the previous section could be deleted from the driver, hopefully leading to a best of all worlds scenario without drawbacks.
Currently if one resizes the video frame size at runtime, this causes DispmanX API to go sideways. See raspberrypi/userland#461 for more information. Best workaround is to set the desired screen resolution in /boot/config.txt and configure all applications to never change that at runtime.
At the moment fbcp-ili9341 is only likely to work on 32-bit OSes, on Raspbian/Ubuntu/Debian family of distributions, where Broadcom and DispmanX libraries are available. 64-bit operating systems do not currently work (see issue #43). It should be possible to port the driver to 64-bit and other OSes, though the amount of work has not been explored.
By default fbcp-ili9341 builds with a statistics overlay enabled. See the video fbcp-ili9341 ported to ILI9486 WaveShare 3.5" (B) SpotPear 320x480 SPI display to find details on what each field means. Build with CMake option -DSTATISTICS=0 to disable displaying the statistics. You can also try building with CMake option -DSTATISTICS=2 to show a more detailed frame delivery timings histogram view, see screenshot and video above.
The fbcp part in the name means framebuffer copy; specifically for the ILI9341 controller. fbcp-ili9341 is not actually a framebuffer copying driver, it does not create a secondary framebuffer that it would copy bytes across to from the primary framebuffer. It is also no longer a driver only for the ILI9341 controller. A more appropriate name might be userland-raspi-spi-display-driver or something like that, but the original name stuck.
I don"t know, I don"t currently have any to test. Perhaps the code does need some model specific configuration, or perhaps it might work out of the box. I only have Pi 3B, Pi 3B+, Pi Zero W and a Pi 3 Compute Module based systems to experiment on. Pi 2 B has been reported to work by users (#17).
If fbcp-ili9341 does not support your display controller, you will have to write support for it. fbcp-ili9341 does not have a "generic SPI TFT driver routine" that might work across multiple devices, but needs specific code for each. If you have the spec sheet available, you can ask for advice, but please do not request to add support to a display controller "blind", that is not possible.
Displays that have a 16-bit wide command word, such as ILI9486, do not currently work in 3-wire ("17-bit") mode. (But ILI9486L has 8-bit command word, so that does work)
No. Those are completely different technologies altogether. It should be possible to port the driver algorithm to work on I2C however, if someone is interested.
At the moment one cannot utilize the XPT2046/ADS7846 touch controllers while running fbcp-ili9341, so touch is mutually incompatible with this driver. In order for fbcp-ili9341 to function, you will need to remove all dtoverlays in /boot/config.txt related to touch.
Yes, fbcp-ili9341 shows the output of the HDMI display on the SPI screen, and both can be attached at the same time. A HDMI display does not have to be connected however, although fbcp-ili9341 operation will still be affected by whatever HDMI display mode is configured. Check out tvservice -s on the command line to check what the current DispmanX HDMI output mode is.
At the moment fbcp-ili9341 has been developed to only display the contents of the main DispmanX GPU framebuffer over to the SPI display. That is, the SPI display will show the same picture as the HDMI output does. There is no technical restriction that requires this though, so if you know C/C++ well, it should be a manageable project to turn fbcp-ili9341 to operate as an offscreen display library to show a completely separate (non-GPU-accelerated) image than what the main HDMI display outputs. For example you could have two different outputs, e.g. a HUD overlay, a dashboard for network statistics, weather, temps, etc. showing on the SPI while having the main Raspberry Pi desktop on the HDMI.
double check that the display controller is really what you expected. Trying to drive with the display with wrong initialization code usually results in the display not reacting, and the screen stays white,
This suggests that the power line or the backlight line might not be properly connected. Or if the backlight connects to a GPIO pin on the Pi (and not a voltage pin), then it may be that the pin is not in correct state for the backlight to turn on. Most of the LCD TFT displays I have immediately light up their backlight when they receive power. The Tontec one has a backlight GPIO pin that boots up high but must be pulled low to activate the backlight. OLED displays on the other hand seem to stay all black even after they do get power, while waiting for their initialization to be performed, so for OLEDs it may be normal for nothing to show up on the screen immediately after boot.
fbcp-ili9341 runs a clear screen command at low speed as first thing after init, so if that goes through, it is a good sign. Try increasing -DSPI_BUS_CLOCK_DIVISOR= CMake option to a higher number to see if the display driving rate was too fast. Or try disabling DMA with -DUSE_DMA_TRANSFERS=OFF to see if this might be a DMA conflict.
This suggests same as above, increase SPI bus divisor or troubleshoot disabling DMA. If DMA is detected to be the culprit, try changing up the DMA channels. Double check that /boot/config.txt does not have any dtoverlays regarding other SPI display drivers or touch screen controllers, and that it does NOT have a dtparam=spi=on line in it - fbcp-ili9341 does not use the Linux kernel SPI driver.
Double check the Data/Command (D/C) GPIO pin physically, and in CMake command line. Whenever fbcp-ili9341 refers to pin numbers, they are always specified in BCM pin numbers. Try setting a higher -DSPI_BUS_CLOCK_DIVISOR= value to CMake. Make sure no other fbcp programs or SPI drivers or dtoverlays are enabled.
The Frame Rate column shows the worst case frame rate when full screen updates are being performed. This occurs for example when watching fullscreen video (that is not a flat colored cartoon). Because fbcp-ili9341 only sends over the pixels that have changed, displays such as HX8357D and ILI9486 can still be used to play many games at 60fps. Retro games work especially well.
All the ILI9341 displays work nice and super fast at ~70-80MHz. My WaveShare 3.5" 320x480 ILI9486 display runs really slow compared to its pixel resolution, ~32MHz only. See fbcp-ili9341 ported to ILI9486 WaveShare 3.5" (B) SpotPear 320x480 SPI display for a video of this display in action. Adafruit"s 320x480 3.5" HX8357D PiTFTs is ~64% faster in comparison.
The ILI9486L controller based maithoga display runs a bit faster than ILI9486 WaveShare, 50MHz versus 31.88MHz, i.e. +56.8% bandwidth increase. However fps-wise maithoga reaches only 13.56 vs WaveShare 12.97 fps, because the bandwidth advantage is fully lost in pixel format differences: ILI9486L requires transmitting 24 bits per each pixel (R6G6B6 mode), whereas ILI9486 supports 16 bits per pixel R5G6B5 mode. This is reflected in the above chart refresh rate for the maithoga display (marked with a star).
The KeDei v6.3 display with MPI3501 controller takes the crown of being horrible, in all aspects imaginable. It is able to run at 33.33 MHz, but due to technical design limitations of the display (see #40), effective bus speed is halved, and only about 72% utilization of the remaining bus rate is achieved. DMA cannot be used, so CPU usage will be off the charts. Even though fbcp-ili9341 supports this display, level of support is expected to be poor, because the hardware design is a closed secret without open documentation publicly available from the manufacturer. Stay clear of KeDei or MPI3501 displays.
The Tontec MZ61581 controller based 320x480 3.5" display on the other hand can be driven insanely fast at up to 140MHz! These seem to be quite hard to come by though and they are expensive. Tontec seems to have gone out of business and for example the domain itontec.com from which the supplied instructions sheet asks to download original drivers from is no longer registered. I was able to find one from eBay for testing.
Improve support for 3-wire displays, e.g. for 1) "17-bit" 3-wire communication, 2) fix up SPI_3WIRE_PROTOCOL + ALL_TASKS_SHOULD_DMA to work together, or 3) fix up SPI_3WIRE_PROTOCOL + OFFLOAD_PIXEL_COPY_TO_DMA_CPP to work together.
This driver is licensed under the MIT License. See LICENSE.txt. In nonlegal terms, it"s yours for both free and commercial projects, DIY packages, kickstarters, Etsys and Ebays, and you don"t owe back a dime. Feel free to apply and derive as you wish.
I recently got a Tontec 2.4-inch TFT LCD 240x320 RGB Pixels Touch Screen Display Monitor For Raspberry Pi from Amazon, and I have no idea how to get it set up. There were no directions included with the touchscreen when it arrived, and the directions given online at Amazon only tell you how to run the software (I think) and give no mention of hooking the display up itself. Any ideas? Should I just plug it in on top of the Pi"s GPIO pins and plug in a power cable in, or do I need to do something else? And can I just run the program, or do I have to do something else? I am fairly new to the Raspberry Pi. Thanks!
Sorry I haven"t replied- I"ve been very busy. I have managed to get this working- I used an external power supply. The first time I looked, I couldn"t find one. I think the reason it didn"t work being powered via USB was because I haven"t been able to find a 2 amp USB power supply, and so I am using a 1 amp power supply, not enough to power the Pi and the touchscreen at the same time. The person on Amazon probably had a 2 amp USB power supply. However, the power supply I found for the touchscreen was 2 amps.
The next problem I have is how to get the touchscreen part working. It just doesn"t do anything when I touch it. And is there any way to add real-time clock capability to it?
Hitechcomputergeek wrote:Sorry I haven"t replied- I"ve been very busy. I have managed to get this working- I used an external power supply. The first time I looked, I couldn"t find one. I think the reason it didn"t work being powered via USB was because I haven"t been able to find a 2 amp USB power supply, and so I am using a 1 amp power supply, not enough to power the Pi and the touchscreen at the same time. The person on Amazon probably had a 2 amp USB power supply. However, the power supply I found for the touchscreen was 2 amps.
The next problem I have is how to get the touchscreen part working. It just doesn"t do anything when I touch it. And is there any way to add real-time clock capability to it?
The manual.txt in the zip file says that the TSC2003 driver (TSC2007) should be in the kernel. It is on the/an i2c bus. (http://www.ti.com/lit/ds/symlink/tsc2003.pdf is the chip handling the touch functionality)
It"s said the touchscreen using a tsc2003 chip could make use of this driver. However, when starting "make" it takes a whole day and night for the RPi for compiling all the modules. But at the end there"s no tsc2007.ko and no tsc_raspi.ko where it should be.
...unfortunately, I got some errors (after around 7 hours of compilation) ;vchi_
It"s said the touchscreen using a tsc2003 chip could make use of this driver. However, when starting "make" it takes a whole day and night for the RPi for compiling all the modules. But at the end there"s no tsc2007.ko and no tsc_raspi.ko where it should be.
...unfortunately, I got some errors (after around 7 hours of compilation) ;vchi_
I just (checked "Misc devices" and) added "videocore VCHIQ" (BCM2708-VCHIQ) as hardlink (but maybe module is enough (?)) in the config (still using "make xconfig") and compilation went further (with no undefined symbols this time). I got a zImage and .ko files (including a tsc2007.ko).
(This post just to say that it is probably not necessary to use a bleeding edge kernel with some special pixie dust to have tsc2007/tsc2003 support. The "normal way" (if there is one) should do : get some sources->configure->build->install)
((In case tsc2007.ko doesn"t work (who knows?) http://osdir.com/ml/linux-kernel/2009-06/msg07628.html was trying to make a tsc2003 driver but it didn"t make its way to the kernel))
( http://kernelnewbies.org/Linux_3.10 -some-release is post jun 2013; the kernel running on 2014-01-07-wheezy-raspbian.zip is more recent; you can "git clone" the latest one if you dare)
(it will copy the .ko files in /lib/modules/
( http://kernelnewbies.org/Linux_3.10 -some-release is post jun 2013; the kernel running on 2014-01-07-wheezy-raspbian.zip is more recent; you can "git clone" the latest one if you dare)
(it will copy the .ko files in /lib/modules/
On 2014-01-07-wheezy-raspbian, apt-cache search linux-source offers 3.2, 3.6, 3.10 (...) kernel sources (but I did not find the running one... (?) - as I remember, linux-source is 3.2)
The building process takes around 7 hours on my machine (and not 10 as I wrote; it is a good idea to check it is still running from time to time; as I power my DHCP server down and the DHCP-lease is not long enough, sometimes, it takes time to recover the ssh link (ssh pi@pi); only the Raspberry Pi and my Ethernet switch/hub stays up, it is silent and low power; curiously I cannot power the switch/hub off without reseting the Raspberry Pi (?) - I don"t know the reason of this)
In order to meet the increasing need of compact HDMI displays, especially for some popular single-board computers like the Raspberry Pi, the UCTRONICS team now releases a 7-inch HDMI LCD display with capacitive multi-touch touchscreen.
and connect the other end of the USB cable to the USB port of the LCD; then supply power to Raspberry Pi; after that if the display and touch both are OK,
today I want to show you how I set up my Tontec 3.5″ Screen on my Raspberry Pi B. I thought I should write about this in my blog since it took quite some research to get this screen up and running. Ok. Let´s start