DFRobot 2.8 USB TFT Pi 2 Raspbian Setup Guide ( Advanced )


See here for installer and DKMS package: https://github.com/pimoroni/rp_usbdisplay

If the installer doesn’t work you should use the Dynamic Kernel Module Support package which will build and maintain a kernel module on your system: https://github.com/pimoroni/rp_usbdisplay/tree/master/dkms

Raspberry Pi 2- What works and what doesn't!

####XORG Configuration Guide

To start using your display, you should copy the following into a new file located at: /usr/share/X11/xorg.conf.d/10-robopeak.conf

Section "Device"
        Identifier      "RPUSBDispFB"
        Driver          "fbdev"
        Option          "fbdev"         "/dev/fb1"

Section "Screen"
        Identifier      "RPUSBDisp"
        Device          "RPUSBDispFB"
        DefaultFbBpp    16
        SubSection "Display"
                Visual  "TrueColor"

Section "InputClass"
        Identifier      "RPUSBTouch"
        MatchDevicePath "/dev/input/event*"
        Driver          "evdev"

This is a very basic setup that sets the USB display as the default X display. If you startx you should now see, and be able to interact with, your Pi desktop on the display.

I’ve tried some alternate configs, which I’ll post more about when I get home and retrieve them off my Pi.


I’ve followed this tutorial, the usp display works great on raspberry pi2… but, it still has some problem with display O tron 3000 which doesn’t output any text on the display.


That’s strange. Do you get any errors with the Display-o-Tron? Have you tried re-installing the drivers and, particularly, the spidev library which I updated for Pi 2 compatibility? Try:

sudo pip install -I dot3k

( changed that line to say dot3k, since that will reinstall dpidev, sn3218 and st7036 )


I’ve tried reinstalling the Display O Tron drivers but no luck. The display gave no errors and didn’t show the text.


The screen is black and when I plug a HDMI cable in, it just displays a large square rainbow. I followed exactly what you said to do
please help


Oo, I should have mentioned that this is absolutely expected. Changing to the USB display disables HDMI. Although I think you’ll still see something while booting up.

If you rename the 10-robopeak.conf to 10-robopeak.conf.off you should get back to normal.

I’ve got configs that work with both displays in various configurations, but I haven’t had time to write them up yet!


This is odd. Does the joystick work? The display relies on a couple of GPIO pins, so if general GPIO isn’t working then it wont show text. It can also get into a funny state sometimes, so a power-cycle ( total disconnect of power ) can help.


It’s something wrong with my Kernel and RPi.GPIO- they just don’t play nice together. I just ran into this myself, and couldn’t reset my Propeller HAT- spent far too long debugging it before I realized I was running a custom kernel.

Disabled the kernel and… well everything works again. D’oh. I clearly need to go back to the drawing board and find out why this happens.


Thank you for the information. Hoping everything will be resolved soon. :)



could you please provide a recent build for Pi1?

I’ve a Pi2 in the post, but also would like to use 2.8 usb display with recent builds on RPi1




I could certainly give it a try when I have the time- I haven’t figured out how to build a Pi1 compatible kernel yet, though!

( Edit: Probably by taking the /proc/config.gz from a Pi running the Pi 1 kernel I suppose! )


If you have a config that works for USB and HDMI – say, GUI on USB and console on HDMI, that would be fantastic. I’ve been fiddling with getting this working on the B+ and gave up to just use it with the Pi 2 instead.


hi, I am sorry if my question is very basic. Does this post assume that I already have a raspbian installed on the SD card? And then i do this to setup the display?

Thanks :)


Yes; you have to have Raspbian installed and do everything in the first two posts inside the Raspberry Pi.


Hi, I have setup raspbian wheezy on an SD card and then tried these steps to install the display. When I rebooted the pi nothing happened. Because I know HDMI would disable I was looking for the 2.8" display to show something. But it only stayed black :(.

So what can I do now? Rewrite raspbian on the SD Card and then?

If anyone could please suggest. Thanks.


Did you follow the steps to set it as the default X display? Does your Pi “startx” automatically?

If your 2.8" display is staying solid black, after showing the boot up logo, then it should be working. Plug in an HDMI display and follow the final step to test it:

cat /dev/urandom > /dev/fb1

If this works, and you see random rainbow noise on your DFRobot display- then congrats, it’s setup successfully!

To keep everyone’s sanity, I didn’t include steps for disabling HDMI output and switching only to the USB display, since it would be a nightmare to debug such a setup if it didn’t go well.


Hi. Thanks for your reply.

I set up raspbian wheezy in a manner where the automatic boot was set to the gui, not console.

And I see a square rainbow window only on hdmi display and nothing passed that.

And also I see nothing at all on usbdisplay :(

Thanks a lot for your time. But if you could still suggest.


Sounds like something went wrong in the setup and it’s simply not booting at all. This is on a Pi 2?


isn’t the ‘square rainbow’ thingy an indication that something is draining too much power? maybe that is the problem and trying to boot from a more beefy PSU would be required?