New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Waveshare 3.2inch rpi lcd for the Raspberry #6

Open
videobuff opened this Issue Sep 13, 2014 · 82 comments

Comments

Projects
None yet
@videobuff

videobuff commented Sep 13, 2014

Is there any support for this display coming up ?
http://www.wvshare.com/product/3.2inch-RPi-LCD-B.htm
I have btw the previous version (without the B).
Erik

@notro

This comment has been minimized.

Show comment
Hide comment
@notro

notro Sep 14, 2014

Owner

It doesn't say which LCD controller the display uses on that page.

I see the display comes with an image. Isn't that good enough?
If they use FBTFT on that image, see if you find a module starting with fb_ in /sys/module

LCD shields for the Pi is popping up all over the place now. Seven months ago it was only a handful: https://github.com/notro/fbtft/wiki/Raspberry-Pi-Display-shield-comparison

Owner

notro commented Sep 14, 2014

It doesn't say which LCD controller the display uses on that page.

I see the display comes with an image. Isn't that good enough?
If they use FBTFT on that image, see if you find a module starting with fb_ in /sys/module

LCD shields for the Pi is popping up all over the place now. Seven months ago it was only a handful: https://github.com/notro/fbtft/wiki/Raspberry-Pi-Display-shield-comparison

@briegel42

This comment has been minimized.

Show comment
Hide comment
@briegel42

briegel42 Sep 19, 2014

I have also the old one, but wasnt succesfull getting it to work - to be honest, havnt spent a lot of time.
Is it a ssd1289, at least the driver is named that way, probably I have used wrong kernel parameters for the module.

BTW, this is what the manufacturer supplied:

PIN NO. SYMBOL DESCRIPTION
1, 17 3.3V Power positive (3.3V power input)
2, 4 5V Power positive (5V power input)
11 TP_IRQ Touch screen interrupt, low level while the touch
screen detects touching
12 KEY1 Key
13 KEY2 Key
15 KEY3 Key
19 LCD_SI/TP_SI SPI data input of LCD/touch screen
21 LCD_SO/TP_SO SPI data output of LCD/touch screen
23 LCD_SCK/TP_SCK SPI clock of LCD/touch screen
24 LCD_CS LCD chip selection, low active
26 TP_CS Touch screen chip selection, low active

Any help whould be appreciated.
Thx,
Florian

briegel42 commented Sep 19, 2014

I have also the old one, but wasnt succesfull getting it to work - to be honest, havnt spent a lot of time.
Is it a ssd1289, at least the driver is named that way, probably I have used wrong kernel parameters for the module.

BTW, this is what the manufacturer supplied:

PIN NO. SYMBOL DESCRIPTION
1, 17 3.3V Power positive (3.3V power input)
2, 4 5V Power positive (5V power input)
11 TP_IRQ Touch screen interrupt, low level while the touch
screen detects touching
12 KEY1 Key
13 KEY2 Key
15 KEY3 Key
19 LCD_SI/TP_SI SPI data input of LCD/touch screen
21 LCD_SO/TP_SO SPI data output of LCD/touch screen
23 LCD_SCK/TP_SCK SPI clock of LCD/touch screen
24 LCD_CS LCD chip selection, low active
26 TP_CS Touch screen chip selection, low active

Any help whould be appreciated.
Thx,
Florian

@notro

This comment has been minimized.

Show comment
Hide comment
@notro

notro Sep 20, 2014

Owner

Since there is no DC/RS pin I assume it's using the 3-wire SPI mode, which on this controller means 9-bit SPI.
From the top of my head:

sudo modprobe fbtft_device custom name=fb_ssd1289 speed=8000000 buswidth=9 width=XX height=XX

If the width/height of your display differs from 240x320, you have to provide your own init= sequence. The default one assumes this.
Panels differ, so you might have to provide one anyway.

https://github.com/notro/fbtft/wiki/fbtft_device

Owner

notro commented Sep 20, 2014

Since there is no DC/RS pin I assume it's using the 3-wire SPI mode, which on this controller means 9-bit SPI.
From the top of my head:

sudo modprobe fbtft_device custom name=fb_ssd1289 speed=8000000 buswidth=9 width=XX height=XX

If the width/height of your display differs from 240x320, you have to provide your own init= sequence. The default one assumes this.
Panels differ, so you might have to provide one anyway.

https://github.com/notro/fbtft/wiki/fbtft_device

@briegel42

This comment has been minimized.

Show comment
Hide comment
@briegel42

briegel42 Sep 20, 2014

Didnt work, but I have done a little more research on these piece of hardware. It is an exact copy of valdodov's circuit and was delivered with the precompiled kernel/modules/configs from his web site.

There was already a ticket in Mai #115 on that matter, is there any chance to get it working ?

Thx,
Florian

briegel42 commented Sep 20, 2014

Didnt work, but I have done a little more research on these piece of hardware. It is an exact copy of valdodov's circuit and was delivered with the precompiled kernel/modules/configs from his web site.

There was already a ticket in Mai #115 on that matter, is there any chance to get it working ?

Thx,
Florian

@balkian

This comment has been minimized.

Show comment
Hide comment
@balkian

balkian Sep 21, 2014

I can't get it to work either. Unfortunately, my display didn't come with an image.

Cheers.

balkian commented Sep 21, 2014

I can't get it to work either. Unfortunately, my display didn't come with an image.

Cheers.

@notro

This comment has been minimized.

Show comment
Hide comment
@notro

notro Sep 21, 2014

Owner

It is an exact copy of valdodov's circuit ...
is there any chance to get it working ?

No plans to support that circuit.

Owner

notro commented Sep 21, 2014

It is an exact copy of valdodov's circuit ...
is there any chance to get it working ?

No plans to support that circuit.

@curiousclinician

This comment has been minimized.

Show comment
Hide comment
@curiousclinician

curiousclinician Sep 23, 2014

I found a custom raspberrian image for this display on a dutch website here:
http://eckstein-shop.de/Plug-and-Play-32-inch-Touch-Screen-TFT-LCD-for-Raspberry-Pi-A-/-B-/-B-_1
NOTE: the archive is password protected (dick move). I've posted on their site to ask for the password.
UPDATE: password for archive is "eckstein", will now see if this is the image we seek.

I also emailed the manufacturer, will post again if either of these leads work.

curiousclinician commented Sep 23, 2014

I found a custom raspberrian image for this display on a dutch website here:
http://eckstein-shop.de/Plug-and-Play-32-inch-Touch-Screen-TFT-LCD-for-Raspberry-Pi-A-/-B-/-B-_1
NOTE: the archive is password protected (dick move). I've posted on their site to ask for the password.
UPDATE: password for archive is "eckstein", will now see if this is the image we seek.

I also emailed the manufacturer, will post again if either of these leads work.

@curiousclinician

This comment has been minimized.

Show comment
Hide comment
@curiousclinician

curiousclinician Sep 24, 2014

Manufacturer refuses to offer any help:

"It seems like the picture is ours.........

If the reseller bought the LCD from us then resell to you, then they must have the CD, as we have CD for each of this LCD screen.
We don't have links for download, all the contents for the LCD are contained in the CD, it should be the resellers problems who did not send the user guide CD to the package.

You can image that if all of the reseller, to whom we have already provided the CD for the products, then they don't send it to customers, then how can we provide the direct services to customers?

Thank you for your understand.
Johanna Liang O(∩_∩)O
Waveshare International Limited
Rm 813, Dynamic World Building, Zhenhua Rd, Futian District, Shenzhen, China
Tel:86-755-83040832
FAX:86-755-83042572
QQ: 2355861372
skype: wvshare
E-mail: sales@wvshare.com
Paypal Account: paypal@wvshare.com
Web:www.wvshare.com"

curiousclinician commented Sep 24, 2014

Manufacturer refuses to offer any help:

"It seems like the picture is ours.........

If the reseller bought the LCD from us then resell to you, then they must have the CD, as we have CD for each of this LCD screen.
We don't have links for download, all the contents for the LCD are contained in the CD, it should be the resellers problems who did not send the user guide CD to the package.

You can image that if all of the reseller, to whom we have already provided the CD for the products, then they don't send it to customers, then how can we provide the direct services to customers?

Thank you for your understand.
Johanna Liang O(∩_∩)O
Waveshare International Limited
Rm 813, Dynamic World Building, Zhenhua Rd, Futian District, Shenzhen, China
Tel:86-755-83040832
FAX:86-755-83042572
QQ: 2355861372
skype: wvshare
E-mail: sales@wvshare.com
Paypal Account: paypal@wvshare.com
Web:www.wvshare.com"

@ant42

This comment has been minimized.

Show comment
Hide comment
@ant42

ant42 Nov 7, 2014

Any news on this topic? I am currently also using one of those displays with the image supplied by eckstein. Although this seems to work fine so far, I would prefer to switch to a more open solution (for more recent kernels, etc).

ant42 commented Nov 7, 2014

Any news on this topic? I am currently also using one of those displays with the image supplied by eckstein. Although this seems to work fine so far, I would prefer to switch to a more open solution (for more recent kernels, etc).

@balkian

This comment has been minimized.

Show comment
Hide comment
@balkian

balkian Nov 7, 2014

I copied configuration of the module from that image. It should work but I haven't had the time to try it yet:

https://gist.github.com/balkian/33835d7be3075c023aad

balkian commented Nov 7, 2014

I copied configuration of the module from that image. It should work but I haven't had the time to try it yet:

https://gist.github.com/balkian/33835d7be3075c023aad

@imaginal

This comment has been minimized.

Show comment
Hide comment
@imaginal

imaginal Nov 15, 2014

I also have Waveshare 3.2inch RPi LCD (B) V3 connected to Raspberry Pi Model B+
http://www.wvshare.com/product/3.2inch-RPi-LCD-B.htm
http://www.amazon.com/Waveshare-Raspberry-Resistive-Interface-Rapsberry-pi/dp/B00N0SNVQE

I have found that the initialization string is very close to fb_ili9340 driver, so after few days of testing I found this configuration is pretty stable

  1. Use FBTFT drivers built into the kernel
sudo REPO_URI=https://github.com/notro/rpi-firmware BRANCH=builtin rpi-update
sudo reboot
  1. After rebooting, check that SPI was created
# dmesg | grep spi
 Linux version 3.12.25+ (pi@raspi2) (gcc version 4.8.3 20140106 (prerelease) (crosstool-NG linaro-1.13.1-4.8-2014.01 - Linaro GCC 2013.11) ) #1 PREEMPT Sat Aug 2 19:08:33 CEST 2014
 bcm2708_spi bcm2708_spi.0: DMA channel 2 at address 0xf2007200 with irq 77
 bcm2708_spi bcm2708_spi.0: DMA channel 4 at address 0xf2007400 with irq 20
 bcm2708_spi bcm2708_spi.0: SPI Controller at 0x20204000 (irq 80)
 bcm2708_spi bcm2708_spi.0: SPI Controller running in dma mode
  1. Add to /boot/cmdline.txt (in one line)
fbtft_device.custom
fbtft_device.name=fb_ili9340
fbtft_device.gpios=dc:22,reset:27
fbtft_device.bgr=1
fbtft_device.speed=48000000
  1. To enable console on boot add to /boot/cmdline.txt
fbcon=map:10
fbcon=font:ProFont6x11
logo.nologo
  1. Also may be useful to add
dma.dmachans=0x7f35
console=tty1
consoleblank=0
fbtft_device.fps=50
fbtft_device.rotate=270

imaginal commented Nov 15, 2014

I also have Waveshare 3.2inch RPi LCD (B) V3 connected to Raspberry Pi Model B+
http://www.wvshare.com/product/3.2inch-RPi-LCD-B.htm
http://www.amazon.com/Waveshare-Raspberry-Resistive-Interface-Rapsberry-pi/dp/B00N0SNVQE

I have found that the initialization string is very close to fb_ili9340 driver, so after few days of testing I found this configuration is pretty stable

  1. Use FBTFT drivers built into the kernel
sudo REPO_URI=https://github.com/notro/rpi-firmware BRANCH=builtin rpi-update
sudo reboot
  1. After rebooting, check that SPI was created
# dmesg | grep spi
 Linux version 3.12.25+ (pi@raspi2) (gcc version 4.8.3 20140106 (prerelease) (crosstool-NG linaro-1.13.1-4.8-2014.01 - Linaro GCC 2013.11) ) #1 PREEMPT Sat Aug 2 19:08:33 CEST 2014
 bcm2708_spi bcm2708_spi.0: DMA channel 2 at address 0xf2007200 with irq 77
 bcm2708_spi bcm2708_spi.0: DMA channel 4 at address 0xf2007400 with irq 20
 bcm2708_spi bcm2708_spi.0: SPI Controller at 0x20204000 (irq 80)
 bcm2708_spi bcm2708_spi.0: SPI Controller running in dma mode
  1. Add to /boot/cmdline.txt (in one line)
fbtft_device.custom
fbtft_device.name=fb_ili9340
fbtft_device.gpios=dc:22,reset:27
fbtft_device.bgr=1
fbtft_device.speed=48000000
  1. To enable console on boot add to /boot/cmdline.txt
fbcon=map:10
fbcon=font:ProFont6x11
logo.nologo
  1. Also may be useful to add
dma.dmachans=0x7f35
console=tty1
consoleblank=0
fbtft_device.fps=50
fbtft_device.rotate=270
@Talabo

This comment has been minimized.

Show comment
Hide comment
@Talabo

Talabo Nov 22, 2014

I've managed to make this work. But has anyone figured out how to make Waveshare 3.2inch RPi LCD work in GUI (startx)? As long as I have a HDMI connected I can see the GUI from an extra screen.

Talabo commented Nov 22, 2014

I've managed to make this work. But has anyone figured out how to make Waveshare 3.2inch RPi LCD work in GUI (startx)? As long as I have a HDMI connected I can see the GUI from an extra screen.

@imaginal

This comment has been minimized.

Show comment
Hide comment
@imaginal

imaginal Nov 22, 2014

you want to use them separately or simultaneously?
maybe fbcp will help
https://github.com/notro/fbtft-spindle/wiki/FBTFT-image#fbcp---framebuffer-copy

imaginal commented Nov 22, 2014

you want to use them separately or simultaneously?
maybe fbcp will help
https://github.com/notro/fbtft-spindle/wiki/FBTFT-image#fbcp---framebuffer-copy

@Talabo

This comment has been minimized.

Show comment
Hide comment
@Talabo

Talabo Nov 24, 2014

I treid fbcp. It copies the big screen (connected through HDMI) which is hanging, into the Waveshare 3.2inch RPi LCD (B) V3. So both screens seems like they hang.

But this is how it's to me.

Normally after making the Waveshare 3.2inch RPi LCD (B) V3-screen work, raspbian runs fine with the little screen. As I only boot into console/terminal. But if I'm going to GUI (startx) the tiny screen hangs.

While booting with an extra screen connected on the HDMI-plug. The extra screen hangs, and the tiny one works fine and mentioned.

When I do the "startx"-command, the HDMI-plugged screen is the one working good in GUI. While the tiny screen hangs.

I wanted to make it so that the tiny screen is standalone and possible to run into GUI (startx). I see the use of fbcp, but it's not for my use.

What I want to do, is to make the tiny screen run fine in GUI (startx). And I'm wondering if you have managed to do that :)

Than you for your time :)

Talabo commented Nov 24, 2014

I treid fbcp. It copies the big screen (connected through HDMI) which is hanging, into the Waveshare 3.2inch RPi LCD (B) V3. So both screens seems like they hang.

But this is how it's to me.

Normally after making the Waveshare 3.2inch RPi LCD (B) V3-screen work, raspbian runs fine with the little screen. As I only boot into console/terminal. But if I'm going to GUI (startx) the tiny screen hangs.

While booting with an extra screen connected on the HDMI-plug. The extra screen hangs, and the tiny one works fine and mentioned.

When I do the "startx"-command, the HDMI-plugged screen is the one working good in GUI. While the tiny screen hangs.

I wanted to make it so that the tiny screen is standalone and possible to run into GUI (startx). I see the use of fbcp, but it's not for my use.

What I want to do, is to make the tiny screen run fine in GUI (startx). And I'm wondering if you have managed to do that :)

Than you for your time :)

@flybysky

This comment has been minimized.

Show comment
Hide comment
@flybysky

flybysky Nov 27, 2014

I have a 3.2inch RPi LCD (B) V3 from waveshare. It came with their DVK512 which includes a CD with an SD image that makes X work on the LCD. Image is Linux raspberrypi 3.12.25+ with (I guess) their custom command: LCD32-SYS-SHOW-V3 which reboots with x on LCD.

flybysky commented Nov 27, 2014

I have a 3.2inch RPi LCD (B) V3 from waveshare. It came with their DVK512 which includes a CD with an SD image that makes X work on the LCD. Image is Linux raspberrypi 3.12.25+ with (I guess) their custom command: LCD32-SYS-SHOW-V3 which reboots with x on LCD.

@Talabo

This comment has been minimized.

Show comment
Hide comment
@Talabo

Talabo Nov 27, 2014

You say the Image is Linux raspberrypi 3.12.25+, so not raspbian customized?

Hmm, do you by any chance have the possibility to upload this anywhere?

Talabo commented Nov 27, 2014

You say the Image is Linux raspberrypi 3.12.25+, so not raspbian customized?

Hmm, do you by any chance have the possibility to upload this anywhere?

@flybysky

This comment has been minimized.

Show comment
Hide comment
@flybysky

flybysky Nov 27, 2014

It is too big to upload... It must be available somewhere already. Check this out : http://www.raspberrypi.org/forums/viewtopic.php?f=28&t=89127

flybysky commented Nov 27, 2014

It is too big to upload... It must be available somewhere already. Check this out : http://www.raspberrypi.org/forums/viewtopic.php?f=28&t=89127

@Talabo

This comment has been minimized.

Show comment
Hide comment
@Talabo

Talabo Nov 27, 2014

Thank you!
Found this link which have .pdf and the software. So no need for downloading a whole new image into the rasp. pi. Will try this when I have time.

The link: https://docviewer.yandex.com/?url=ya-disk-public%3A%2F%2F3pNBiwUGtdm6B7DR35RIh3ekGYjNeISzNKSlmqcvGds%3D&name=DVD_DVK512_CN_EN_Without_Image.rar&c=547779a0f2ac

Talabo commented Nov 27, 2014

Thank you!
Found this link which have .pdf and the software. So no need for downloading a whole new image into the rasp. pi. Will try this when I have time.

The link: https://docviewer.yandex.com/?url=ya-disk-public%3A%2F%2F3pNBiwUGtdm6B7DR35RIh3ekGYjNeISzNKSlmqcvGds%3D&name=DVD_DVK512_CN_EN_Without_Image.rar&c=547779a0f2ac

@faithoflifedev

This comment has been minimized.

Show comment
Hide comment
@faithoflifedev

faithoflifedev Dec 2, 2014

I got my Waveshare 3.2inch LCD working great using the instructions above provided by "imaginal". I now want to be able to turn off the backlight. Has anyone been able to do this? Is the functionality supported?

faithoflifedev commented Dec 2, 2014

I got my Waveshare 3.2inch LCD working great using the instructions above provided by "imaginal". I now want to be able to turn off the backlight. Has anyone been able to do this? Is the functionality supported?

@andrealvarez

This comment has been minimized.

Show comment
Hide comment
@andrealvarez

andrealvarez Dec 2, 2014

Does anyone know how can i turn off the backlight? for the Waveshare 3.2inch LCD

I have been googling everywhere and i cant seem to find it...

andrealvarez commented Dec 2, 2014

Does anyone know how can i turn off the backlight? for the Waveshare 3.2inch LCD

I have been googling everywhere and i cant seem to find it...

@andrealvarez

This comment has been minimized.

Show comment
Hide comment
@andrealvarez

andrealvarez Dec 5, 2014

Notro nevermind im going to buy adafruits one and return this chinese one... Thanks :)

andrealvarez commented Dec 5, 2014

Notro nevermind im going to buy adafruits one and return this chinese one... Thanks :)

@lunarcms

This comment has been minimized.

Show comment
Hide comment
@lunarcms

lunarcms Dec 14, 2014

Hiya all.

I have a WaveShare SpotPear V4 LCD with a Raspbian image (unfortunately with loads of excess baggage included, the image is just over 4GB).

I should be able to get it onto the web shortly (give me a few days), I also plan on stripping it back to a very minimal Raspbian with OpenBox and a few utils such as SSH if anybody is interested?

Jim

lunarcms commented Dec 14, 2014

Hiya all.

I have a WaveShare SpotPear V4 LCD with a Raspbian image (unfortunately with loads of excess baggage included, the image is just over 4GB).

I should be able to get it onto the web shortly (give me a few days), I also plan on stripping it back to a very minimal Raspbian with OpenBox and a few utils such as SSH if anybody is interested?

Jim

@ayasystems

This comment has been minimized.

Show comment
Hide comment
@ayasystems

ayasystems Dec 21, 2014

Touch working fine (/etc/modules)

snd-bcm2835
i2c-bcm2708
i2c-dev
ads7846_device cs=1 speed=1000000 model=7846 x_min=200 x_max=3840 y_min=200 y_max=3760 x_plate_ohms=60 pressure_max=255 gpio_pendown=17 keep_vref_on=1 swap_xy=0

ayasystems commented Dec 21, 2014

Touch working fine (/etc/modules)

snd-bcm2835
i2c-bcm2708
i2c-dev
ads7846_device cs=1 speed=1000000 model=7846 x_min=200 x_max=3840 y_min=200 y_max=3760 x_plate_ohms=60 pressure_max=255 gpio_pendown=17 keep_vref_on=1 swap_xy=0

@PathicEnyrgis

This comment has been minimized.

Show comment
Hide comment
@PathicEnyrgis

PathicEnyrgis Dec 24, 2014

@lunarcms
I am very interested, I received my waveshare today and need to use it for first test of my pi b+, I do not have an hdmi monitor.

3.5in rpi LCD (A). Current name of image on the disk: LCD35-14120
So from the instructions on the disc. I believe it is rasbian with display drivers. Now how bad is the bloatware?

I need to format the sd-noob card ( only 4gig card I have) Is it worth losing the noob software and images?

PathicEnyrgis commented Dec 24, 2014

@lunarcms
I am very interested, I received my waveshare today and need to use it for first test of my pi b+, I do not have an hdmi monitor.

3.5in rpi LCD (A). Current name of image on the disk: LCD35-14120
So from the instructions on the disc. I believe it is rasbian with display drivers. Now how bad is the bloatware?

I need to format the sd-noob card ( only 4gig card I have) Is it worth losing the noob software and images?

@alpha-ninja

This comment has been minimized.

Show comment
Hide comment
@alpha-ninja

alpha-ninja Dec 29, 2014

Could someone look into why drivers built into the kernel is the only way that seems to work?

alpha-ninja commented Dec 29, 2014

Could someone look into why drivers built into the kernel is the only way that seems to work?

@gadget9503

This comment has been minimized.

Show comment
Hide comment
@gadget9503

gadget9503 Dec 29, 2014

would love to make Kodi 14.1 work with this display have tried different configs but all give me some kind of error ie-can't find file, can't find dir, debends on xbmc-deb, no make etc, any help would be great.

Mike

gadget9503 commented Dec 29, 2014

would love to make Kodi 14.1 work with this display have tried different configs but all give me some kind of error ie-can't find file, can't find dir, debends on xbmc-deb, no make etc, any help would be great.

Mike

@alpha-ninja

This comment has been minimized.

Show comment
Hide comment
@alpha-ninja

alpha-ninja Dec 29, 2014

Okay, I've fiddled around with this stuff. In /etc/modules I have: fbtft_device custom name=fb_ili9340 speed=48000000 gpios=dc:22,reset:27 bgr=1 rotate=270

I added to /boot/cmdline.txt: fbcon=map:10 fbcon=font:ProFont6x11 logo.nologo

The console on startup works just fine, but for some reason, I can't find out how to launch framebuffer applications on the tft display.

I tried su -l pi -c "env FRAMEBUFFER=/dev/fb1 startx &", but that resulted in the tft display being cleared and X starting on the HDMI display.

Any ideas?

edit: ls /dev/ returns:

autofs           input         mem                 ram11   raw        tty12  tty25  tty38  tty50  tty63      vcs3
block            kmsg          mmcblk0             ram12   root       tty13  tty26  tty39  tty51  tty7       vcs4
btrfs-control    log           mmcblk0p1           ram13   shm        tty14  tty27  tty4   tty52  tty8       vcs5
bus              loop0         mmcblk0p2           ram14   snd        tty15  tty28  tty40  tty53  tty9       vcs6
cachefiles       loop1         net                 ram15   sndstat    tty16  tty29  tty41  tty54  ttyAMA0    vcsa
char             loop2         network_latency     ram2    spidev0.1  tty17  tty3   tty42  tty55  ttyprintk  vcsa1
console          loop3         network_throughput  ram3    stderr     tty18  tty30  tty43  tty56  uinput     vcsa2
cpu_dma_latency  loop4         null                ram4    stdin      tty19  tty31  tty44  tty57  urandom    vcsa3
disk             loop5         ppp                 ram5    stdout     tty2   tty32  tty45  tty58  vc-cma     vcsa4
*fb0*              loop6         ptmx                ram6    tty        tty20  tty33  tty46  tty59  vchiq      vcsa5
*fb1*              loop7         pts                 ram7    tty0       tty21  tty34  tty47  tty6   vc-mem     vcsa6
fd               loop-control  ram0                ram8    tty1       tty22  tty35  tty48  tty60  vcs        vcsm
full             MAKEDEV       ram1                ram9    tty10      tty23  tty36  tty49  tty61  vcs1       xconsole
fuse             mapper        ram10               random  tty11      tty24  tty37  tty5   tty62  vcs2       zero

edit: dmesg | grep -i fb returns:

[    0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
[    0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1824 bcm2708_fb.fbheight=984 bcm2708.boardrev=0x10 bcm2708.serial=0x4be84e02 smsc95xx.macaddr=B8:27:EB:E8:4E:02 bcm2708_fb.fbswap=1 bcm2708.disk_led_gpio=47 bcm2708.disk_led_active_low=0 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait fbcon=map:10 fbcon=font:ProFont6x11 logo.nologo
[    1.055686] bcm2708_gpio: bcm2708_gpio_probe c0633fb0
[    1.315312] BCM2708FB: allocated DMA memory 5bc00000
[    1.320487] BCM2708FB: allocated DMA channel 0 @ f2007000
[   12.586432] fbtft_device:  SPI devices registered:
[   12.606322] fbtft_device:      spidev spi0.0 500kHz 8 bits mode=0x00
[   12.621263] fbtft_device:      spidev spi0.1 500kHz 8 bits mode=0x00
[   12.640740] fbtft_device:  'fb' Platform devices registered:
[   12.658823] fbtft_device:      bcm2708_fb id=-1 pdata? no
[   12.671956] fbtft_device: Deleting spi0.0
[   12.686753] fbtft_device:  GPIOS used by 'fb_ili9340':
[   12.717899] fbtft_device:    'dc' = GPIO22
[   12.732129] fbtft_device:    'reset' = GPIO27
[   12.747740] fbtft_device:  SPI devices registered:
[   12.777630] fbtft_device:      spidev spi0.1 500kHz 8 bits mode=0x00
[   12.807621] fbtft_device:      fb_ili9340 spi0.0 48000kHz 8 bits mode=0x00
[   13.444948] graphics fb1: fb_ili9340 frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz

alpha-ninja commented Dec 29, 2014

Okay, I've fiddled around with this stuff. In /etc/modules I have: fbtft_device custom name=fb_ili9340 speed=48000000 gpios=dc:22,reset:27 bgr=1 rotate=270

I added to /boot/cmdline.txt: fbcon=map:10 fbcon=font:ProFont6x11 logo.nologo

The console on startup works just fine, but for some reason, I can't find out how to launch framebuffer applications on the tft display.

I tried su -l pi -c "env FRAMEBUFFER=/dev/fb1 startx &", but that resulted in the tft display being cleared and X starting on the HDMI display.

Any ideas?

edit: ls /dev/ returns:

autofs           input         mem                 ram11   raw        tty12  tty25  tty38  tty50  tty63      vcs3
block            kmsg          mmcblk0             ram12   root       tty13  tty26  tty39  tty51  tty7       vcs4
btrfs-control    log           mmcblk0p1           ram13   shm        tty14  tty27  tty4   tty52  tty8       vcs5
bus              loop0         mmcblk0p2           ram14   snd        tty15  tty28  tty40  tty53  tty9       vcs6
cachefiles       loop1         net                 ram15   sndstat    tty16  tty29  tty41  tty54  ttyAMA0    vcsa
char             loop2         network_latency     ram2    spidev0.1  tty17  tty3   tty42  tty55  ttyprintk  vcsa1
console          loop3         network_throughput  ram3    stderr     tty18  tty30  tty43  tty56  uinput     vcsa2
cpu_dma_latency  loop4         null                ram4    stdin      tty19  tty31  tty44  tty57  urandom    vcsa3
disk             loop5         ppp                 ram5    stdout     tty2   tty32  tty45  tty58  vc-cma     vcsa4
*fb0*              loop6         ptmx                ram6    tty        tty20  tty33  tty46  tty59  vchiq      vcsa5
*fb1*              loop7         pts                 ram7    tty0       tty21  tty34  tty47  tty6   vc-mem     vcsa6
fd               loop-control  ram0                ram8    tty1       tty22  tty35  tty48  tty60  vcs        vcsm
full             MAKEDEV       ram1                ram9    tty10      tty23  tty36  tty49  tty61  vcs1       xconsole
fuse             mapper        ram10               random  tty11      tty24  tty37  tty5   tty62  vcs2       zero

edit: dmesg | grep -i fb returns:

[    0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
[    0.000000] Kernel command line: dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1824 bcm2708_fb.fbheight=984 bcm2708.boardrev=0x10 bcm2708.serial=0x4be84e02 smsc95xx.macaddr=B8:27:EB:E8:4E:02 bcm2708_fb.fbswap=1 bcm2708.disk_led_gpio=47 bcm2708.disk_led_active_low=0 sdhci-bcm2708.emmc_clock_freq=250000000 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait fbcon=map:10 fbcon=font:ProFont6x11 logo.nologo
[    1.055686] bcm2708_gpio: bcm2708_gpio_probe c0633fb0
[    1.315312] BCM2708FB: allocated DMA memory 5bc00000
[    1.320487] BCM2708FB: allocated DMA channel 0 @ f2007000
[   12.586432] fbtft_device:  SPI devices registered:
[   12.606322] fbtft_device:      spidev spi0.0 500kHz 8 bits mode=0x00
[   12.621263] fbtft_device:      spidev spi0.1 500kHz 8 bits mode=0x00
[   12.640740] fbtft_device:  'fb' Platform devices registered:
[   12.658823] fbtft_device:      bcm2708_fb id=-1 pdata? no
[   12.671956] fbtft_device: Deleting spi0.0
[   12.686753] fbtft_device:  GPIOS used by 'fb_ili9340':
[   12.717899] fbtft_device:    'dc' = GPIO22
[   12.732129] fbtft_device:    'reset' = GPIO27
[   12.747740] fbtft_device:  SPI devices registered:
[   12.777630] fbtft_device:      spidev spi0.1 500kHz 8 bits mode=0x00
[   12.807621] fbtft_device:      fb_ili9340 spi0.0 48000kHz 8 bits mode=0x00
[   13.444948] graphics fb1: fb_ili9340 frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz
@notro

This comment has been minimized.

Show comment
Hide comment
@notro

notro Dec 29, 2014

Owner

If Raspian, you need to change fbdev option in /usr/share/X11/xorg.conf.d/99-fbturbo.conf

Owner

notro commented Dec 29, 2014

If Raspian, you need to change fbdev option in /usr/share/X11/xorg.conf.d/99-fbturbo.conf

@starwolf73

This comment has been minimized.

Show comment
Hide comment
@starwolf73

starwolf73 May 29, 2015

Hi,
I also have the same issues but just found out the drivers and manual on the Wiki
http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B)

At work, so I will try to test it on the week-end.

starwolf73 commented May 29, 2015

Hi,
I also have the same issues but just found out the drivers and manual on the Wiki
http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B)

At work, so I will try to test it on the week-end.

@Big111156

This comment has been minimized.

Show comment
Hide comment
@Big111156

Big111156 May 29, 2015

This is was i found too...
but no luck...
the same as described... hanging at booting at:

[ 15.769071] fbtft_device: SPI devices registered:
[ 15.784742] fbtft_device: spidev spi0.0 500kHz 8 bits mode=0x00
[ 15.801762] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.818659] fbtft_device: 'fb' Platform devices registered:
[ 15.834897] fbtft_device: bcm2708_fb id=-1 pdata? no
[ 15.850743] fbtft_device: Deleting spi0.0
[ 15.869037] fbtft_device: GPIOS used by 'flexfb':
[ 15.906714] fbtft_device: 'dc' = GPIO22
[ 15.936008] fbtft_device: 'reset' = GPIO27
[ 15.961411] fbtft_device: SPI devices registered:
[ 15.976767] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.993732] fbtft_device: flexfb spi0.0 48000kHz 8 bits mode=0x00
[ 16.442000] graphics fb1: flexfb frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz

using Raspian Image from 05.05.2015..

Big111156 commented May 29, 2015

This is was i found too...
but no luck...
the same as described... hanging at booting at:

[ 15.769071] fbtft_device: SPI devices registered:
[ 15.784742] fbtft_device: spidev spi0.0 500kHz 8 bits mode=0x00
[ 15.801762] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.818659] fbtft_device: 'fb' Platform devices registered:
[ 15.834897] fbtft_device: bcm2708_fb id=-1 pdata? no
[ 15.850743] fbtft_device: Deleting spi0.0
[ 15.869037] fbtft_device: GPIOS used by 'flexfb':
[ 15.906714] fbtft_device: 'dc' = GPIO22
[ 15.936008] fbtft_device: 'reset' = GPIO27
[ 15.961411] fbtft_device: SPI devices registered:
[ 15.976767] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.993732] fbtft_device: flexfb spi0.0 48000kHz 8 bits mode=0x00
[ 16.442000] graphics fb1: flexfb frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz

using Raspian Image from 05.05.2015..

@starwolf73

This comment has been minimized.

Show comment
Hide comment
@starwolf73

starwolf73 May 29, 2015

I little workout around but it WORK fine on Pi 1 & Pi2!

Since I had a few extra MicroSD card, I install a fresh Raspbian from Feb (3.18.5-v7+ ) on one and install the drivers has suggest in http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B). It WORK! Speed is great and touch work very good without any calibration. I will have more time to play with it on Sunday and see if we do a upgrade it break the drivers.

starwolf73 commented May 29, 2015

I little workout around but it WORK fine on Pi 1 & Pi2!

Since I had a few extra MicroSD card, I install a fresh Raspbian from Feb (3.18.5-v7+ ) on one and install the drivers has suggest in http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B). It WORK! Speed is great and touch work very good without any calibration. I will have more time to play with it on Sunday and see if we do a upgrade it break the drivers.

@Vineetsai

This comment has been minimized.

Show comment
Hide comment
@Vineetsai

Vineetsai May 30, 2015

Does new rasbian release in May include fbtft with kernel? Or it still need
to build module and include with kernel manually?

On Friday, May 29, 2015, starwolf73 notifications@github.com wrote:

I little workout around but it WORK fine on Pi 1 & Pi2!

Since I had a few extra MicroSD card, I install a fresh Raspbian from Feb
(3.18.5-v7+ ) on one and install the drivers has suggest in
http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B). It WORK! Speed is
great and touch work very good without any calibration. I will have more
time to play with it on Sunday and see if we do a upgrade it break the
drivers.


Reply to this email directly or view it on GitHub
#6 (comment).

Vineetsai commented May 30, 2015

Does new rasbian release in May include fbtft with kernel? Or it still need
to build module and include with kernel manually?

On Friday, May 29, 2015, starwolf73 notifications@github.com wrote:

I little workout around but it WORK fine on Pi 1 & Pi2!

Since I had a few extra MicroSD card, I install a fresh Raspbian from Feb
(3.18.5-v7+ ) on one and install the drivers has suggest in
http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B). It WORK! Speed is
great and touch work very good without any calibration. I will have more
time to play with it on Sunday and see if we do a upgrade it break the
drivers.


Reply to this email directly or view it on GitHub
#6 (comment).

@starwolf73

This comment has been minimized.

Show comment
Hide comment
@starwolf73

starwolf73 May 31, 2015

I was able to run also the latest Raspbian image (May) and it work well. Just make sure to block the bootloader update before any apt-get upgrade. See the Wiki for more info since I'm away from home for now.

starwolf73 commented May 31, 2015

I was able to run also the latest Raspbian image (May) and it work well. Just make sure to block the bootloader update before any apt-get upgrade. See the Wiki for more info since I'm away from home for now.

@Vineetsai

This comment has been minimized.

Show comment
Hide comment
@Vineetsai

Vineetsai May 31, 2015

So new release still need to follow all steps from wiki including
installing driver? As I thought drive is included with kernel and will be
part of kernel modules, is that not correct?

On Sat, May 30, 2015 at 9:34 PM, starwolf73 notifications@github.com
wrote:

I was able to run also the latest Raspbian image (May) and it work well.
Just make sure to block the bootloader update before any apt-get upgrade.
See the Wiki for more info since I'm away from home for now.


Reply to this email directly or view it on GitHub
#6 (comment).

Vineetsai commented May 31, 2015

So new release still need to follow all steps from wiki including
installing driver? As I thought drive is included with kernel and will be
part of kernel modules, is that not correct?

On Sat, May 30, 2015 at 9:34 PM, starwolf73 notifications@github.com
wrote:

I was able to run also the latest Raspbian image (May) and it work well.
Just make sure to block the bootloader update before any apt-get upgrade.
See the Wiki for more info since I'm away from home for now.


Reply to this email directly or view it on GitHub
#6 (comment).

@starwolf73

This comment has been minimized.

Show comment
Hide comment
@starwolf73

starwolf73 May 31, 2015

Well, I'm still new to raspi. I do know that my LCD work fine for now with a fresh image and drivers installation. If I have the time this week, I'll try to go a little deeper and understand what the script is doing and post my research.

starwolf73 commented May 31, 2015

Well, I'm still new to raspi. I do know that my LCD work fine for now with a fresh image and drivers installation. If I have the time this week, I'll try to go a little deeper and understand what the script is doing and post my research.

@Big111156

This comment has been minimized.

Show comment
Hide comment
@Big111156

Big111156 May 31, 2015

not one of described Solutions worked for me....
so i think either this Display is defective or not compatible with my Raspberry Pi B (no + or 2)

:-(

Big111156 commented May 31, 2015

not one of described Solutions worked for me....
so i think either this Display is defective or not compatible with my Raspberry Pi B (no + or 2)

:-(

@starwolf73

This comment has been minimized.

Show comment
Hide comment
@starwolf73

starwolf73 May 31, 2015

@Big111156 Did you try with a fresh Raspbian image (3.18)? And did you install the driver with the command LCD32-show? Also you may want to check to turn on DEVICE-TREE and SPI option in RASPI-CONFIG?

starwolf73 commented May 31, 2015

@Big111156 Did you try with a fresh Raspbian image (3.18)? And did you install the driver with the command LCD32-show? Also you may want to check to turn on DEVICE-TREE and SPI option in RASPI-CONFIG?

@Big111156

This comment has been minimized.

Show comment
Hide comment
@Big111156

Big111156 Jun 1, 2015

as my Image is:
Linux raspberrypi 3.18.5+ #1 PREEMPT Fri Feb 6 23:35:59 CET 2015 armv6l

changed to your decided Options, but it hangs...

[ 10.686952] bcm2708_i2c 20205000.i2c: BSC0 Controller at 0x20205000 (irq 79) (baudrate 100000)
[ 13.745997] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 14.249378] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 15.442994] i2c /dev entries driver
[ 15.608391] fbtft_device: SPI devices registered:
[ 15.646462] fbtft_device: spidev spi0.0 500kHz 8 bits mode=0x00
[ 15.664860] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.681841] fbtft_device: 'fb' Platform devices registered:
[ 15.698083] fbtft_device: bcm2708_fb id=-1 pdata? no
[ 15.714000] fbtft_device: Deleting spi0.0
[ 15.732038] fbtft_device: GPIOS used by 'flexfb':
[ 15.766545] fbtft_device: 'dc' = GPIO22
[ 15.787180] fbtft_device: 'reset' = GPIO27
[ 15.802012] fbtft_device: SPI devices registered:
[ 15.817260] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.834016] fbtft_device: flexfb spi0.0 48000kHz 8 bits mode=0x00
[ 16.303381] graphics fb1: flexfb frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz
[ 16.431106] ads7846_device: Deleting spi0.1
[ 16.508067] ads7846 spi0.1: touchscreen, irq 411
[ 16.522860] input: ADS7846 Touchscreen as /devices/soc/20204000.spi/spi_master/spi0/spi0.1/input/input2
[ 27.755037] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 29.312097] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
[ 38.001814] Adding 102396k swap on /var/swap. Priority:-1 extents:2 across:2134012k SSFS
[ 60.434326] w1_master_driver w1_bus_master1: Family 0 for 00.800000000000.8c is not registered.
[ 119.795427] w1_master_driver w1_bus_master1: Family 0 for 00.400000000000.46 is not registered.

Big111156 commented Jun 1, 2015

as my Image is:
Linux raspberrypi 3.18.5+ #1 PREEMPT Fri Feb 6 23:35:59 CET 2015 armv6l

changed to your decided Options, but it hangs...

[ 10.686952] bcm2708_i2c 20205000.i2c: BSC0 Controller at 0x20205000 (irq 79) (baudrate 100000)
[ 13.745997] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 14.249378] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 15.442994] i2c /dev entries driver
[ 15.608391] fbtft_device: SPI devices registered:
[ 15.646462] fbtft_device: spidev spi0.0 500kHz 8 bits mode=0x00
[ 15.664860] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.681841] fbtft_device: 'fb' Platform devices registered:
[ 15.698083] fbtft_device: bcm2708_fb id=-1 pdata? no
[ 15.714000] fbtft_device: Deleting spi0.0
[ 15.732038] fbtft_device: GPIOS used by 'flexfb':
[ 15.766545] fbtft_device: 'dc' = GPIO22
[ 15.787180] fbtft_device: 'reset' = GPIO27
[ 15.802012] fbtft_device: SPI devices registered:
[ 15.817260] fbtft_device: spidev spi0.1 500kHz 8 bits mode=0x00
[ 15.834016] fbtft_device: flexfb spi0.0 48000kHz 8 bits mode=0x00
[ 16.303381] graphics fb1: flexfb frame buffer, 320x240, 150 KiB video memory, 4 KiB DMA buffer memory, fps=20, spi0.0 at 48 MHz
[ 16.431106] ads7846_device: Deleting spi0.1
[ 16.508067] ads7846 spi0.1: touchscreen, irq 411
[ 16.522860] input: ADS7846 Touchscreen as /devices/soc/20204000.spi/spi_master/spi0/spi0.1/input/input2
[ 27.755037] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 29.312097] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
[ 38.001814] Adding 102396k swap on /var/swap. Priority:-1 extents:2 across:2134012k SSFS
[ 60.434326] w1_master_driver w1_bus_master1: Family 0 for 00.800000000000.8c is not registered.
[ 119.795427] w1_master_driver w1_bus_master1: Family 0 for 00.400000000000.46 is not registered.

@xstrex

This comment has been minimized.

Show comment
Hide comment
@xstrex

xstrex Jun 11, 2015

Hi everyone, so I've been fighting with my new screen for a few days now and after reading all the posts I could find, and banging my head on the keyboard I finally tried this: http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B) (posted by starwolf73 above)
I followed the instruction on the site and it just works perfectly.. no calibration, no problems.
Also when I tried to download the package from the above site it was taking a year (20k/s), so I found this as a mirror, and it seems to be much faster: https://ecksteinimg.de/Datasheet/LCD-show.tar.gz

Hope this helps some of you, cheers..

xstrex commented Jun 11, 2015

Hi everyone, so I've been fighting with my new screen for a few days now and after reading all the posts I could find, and banging my head on the keyboard I finally tried this: http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B) (posted by starwolf73 above)
I followed the instruction on the site and it just works perfectly.. no calibration, no problems.
Also when I tried to download the package from the above site it was taking a year (20k/s), so I found this as a mirror, and it seems to be much faster: https://ecksteinimg.de/Datasheet/LCD-show.tar.gz

Hope this helps some of you, cheers..

@ieidsath

This comment has been minimized.

Show comment
Hide comment
@ieidsath

ieidsath Aug 30, 2015

Hello, just wanted to share the setup I have for running the Waveshare 3.2" V4 display on a Raspberry Pi model B rev. 1 using Arch Linux.

Took me a couple of days to figure it out, but after piecing together information from various posts (many thanks to notro, Hexxeh, Imaginal, the tutorial at http://www.circuitbasics.com/setup-lcd-touchscreen-raspberry-pi, and the Waveshare wiki), I hacked together a working setup.

Step 1) Install rpi-update and firmware

With root permissions:

pacman -S wget
wget https://raw.githubusercontent.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update
chmod +x /usr/bin/rpi-update

Then I install the builtin branch for notro's rpi-firmware:†

REPO_URI=https://github.com/notro/rpi-firmware BRANCH=builtin rpi-update

Step 2) Configuring modules

I would recommend doing the following by SSHing into the device. You'll be copying large amounts of text and if nothing is displayed on bootup you can recover easily.

With root permissions:

Insert the following line in /boot/config.txt to enable SPI:

dtparam=spi=on

Edit /etc/modules-load.d/raspberrypi.conf and insert the following modules for SPI, display, and touchscreen drivers:†

spi_bcm2708
fbtft_device
ads7846_device

Create the file /etc/modprobe.d/fbtft.conf. Copy the line in, but pay close attention to the gpio pins:‡

options fbtft_device name=waveshare32b width=320 height=240 gpios=dc:22,reset:21 bgr=1 speed=48000000 buswidth=8 rotate=270 init=-1,0xCB,0x39,0x2C,0x00,0x34,0x02,-1,0xCF,0x00,0XC1,0X30,-1,0xE8,0x85,0x00,0x78,-1,0xEA,0x00,0x00,-1,0xED,0x64,0x03,0X12,0X81,-1,0xF7,0x20,-1,0xC0,0x23,-1,0xC1,0x10,-1,0xC5,0x3e,0x28,-1,0xC7,0x86,-1,0x36,0x28,-1,0x3A,0x55,-1,0xB1,0x00,0x18,-1,0xB6,0x08,0x82,0x27,-1,0xF2,0x00,-1,0x26,0x01,-1,0xE0,0x0F,0x31,0x2B,0x0C,0x0E,0x08,0x4E,0xF1,0x37,0x07,0x10,0x03,0x0E,0x09,0x00,-1,0XE1,0x00,0x0E,0x14,0x03,0x11,0x07,0x31,0xC1,0x48,0x08,0x0F,0x0C,0x31,0x36,0x0F,-1,0x11,-2,120,-1,0x29,-1,0x2c,-3

Step 3) Bootup commands

Back up /boot/cmdline.txt to your home folder if you need to restore it later.

cp /boot/cmdline.txt ~/cmdline.txt.bak

Erase everything in /boot/cmdline.txt and copy this line:

root=/dev/mmcblk0p2 rw rootwait selinux=0 plymouth.enable=0 smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 kgdboc=ttyAMA0,115200 elevator=noop fbtft_device.custom fbtft_device.name=waveshare32b fbtft_device.gpios=dc:22,reset:21 fbtft_device.bgr=1 fbtft_device.speed=48000000 fbtft_device.fps=50 fbtft_device.rotate=270 dma.dmachans=0x7f35 console=ttyAMA0,115200 fbcon=map:10 fbcon=font:VGA8x8 console=tty1 consoleblank=0

(This will boot into the command line on the Waveshare display. If you want the command line on your primary display with HDMI or NTSC, remove "fbcon=map:10 fbcon=font:VGA8x8". Booting fbcon this way is deprecated in future releases.)

Step 4) Reboot

That's it! The display should work and you should see the command line on it now.

† The builtin branch is deprecated, but I got a square display with unused white bars on the side when I set it up with the newer kernel. I haven't figured out a solution yet. Keep in mind that fbtft_device, ads7846_device, and fbcon might not work the same way in newer releases.
‡ The Raspberry Pi Rev. 1 models A and B have a slightly different pinout for GPIO. GPIO21 was changed to GPIO27 in all future revisions, so change the reset pin accordingly.

ieidsath commented Aug 30, 2015

Hello, just wanted to share the setup I have for running the Waveshare 3.2" V4 display on a Raspberry Pi model B rev. 1 using Arch Linux.

Took me a couple of days to figure it out, but after piecing together information from various posts (many thanks to notro, Hexxeh, Imaginal, the tutorial at http://www.circuitbasics.com/setup-lcd-touchscreen-raspberry-pi, and the Waveshare wiki), I hacked together a working setup.

Step 1) Install rpi-update and firmware

With root permissions:

pacman -S wget
wget https://raw.githubusercontent.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update
chmod +x /usr/bin/rpi-update

Then I install the builtin branch for notro's rpi-firmware:†

REPO_URI=https://github.com/notro/rpi-firmware BRANCH=builtin rpi-update

Step 2) Configuring modules

I would recommend doing the following by SSHing into the device. You'll be copying large amounts of text and if nothing is displayed on bootup you can recover easily.

With root permissions:

Insert the following line in /boot/config.txt to enable SPI:

dtparam=spi=on

Edit /etc/modules-load.d/raspberrypi.conf and insert the following modules for SPI, display, and touchscreen drivers:†

spi_bcm2708
fbtft_device
ads7846_device

Create the file /etc/modprobe.d/fbtft.conf. Copy the line in, but pay close attention to the gpio pins:‡

options fbtft_device name=waveshare32b width=320 height=240 gpios=dc:22,reset:21 bgr=1 speed=48000000 buswidth=8 rotate=270 init=-1,0xCB,0x39,0x2C,0x00,0x34,0x02,-1,0xCF,0x00,0XC1,0X30,-1,0xE8,0x85,0x00,0x78,-1,0xEA,0x00,0x00,-1,0xED,0x64,0x03,0X12,0X81,-1,0xF7,0x20,-1,0xC0,0x23,-1,0xC1,0x10,-1,0xC5,0x3e,0x28,-1,0xC7,0x86,-1,0x36,0x28,-1,0x3A,0x55,-1,0xB1,0x00,0x18,-1,0xB6,0x08,0x82,0x27,-1,0xF2,0x00,-1,0x26,0x01,-1,0xE0,0x0F,0x31,0x2B,0x0C,0x0E,0x08,0x4E,0xF1,0x37,0x07,0x10,0x03,0x0E,0x09,0x00,-1,0XE1,0x00,0x0E,0x14,0x03,0x11,0x07,0x31,0xC1,0x48,0x08,0x0F,0x0C,0x31,0x36,0x0F,-1,0x11,-2,120,-1,0x29,-1,0x2c,-3

Step 3) Bootup commands

Back up /boot/cmdline.txt to your home folder if you need to restore it later.

cp /boot/cmdline.txt ~/cmdline.txt.bak

Erase everything in /boot/cmdline.txt and copy this line:

root=/dev/mmcblk0p2 rw rootwait selinux=0 plymouth.enable=0 smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 kgdboc=ttyAMA0,115200 elevator=noop fbtft_device.custom fbtft_device.name=waveshare32b fbtft_device.gpios=dc:22,reset:21 fbtft_device.bgr=1 fbtft_device.speed=48000000 fbtft_device.fps=50 fbtft_device.rotate=270 dma.dmachans=0x7f35 console=ttyAMA0,115200 fbcon=map:10 fbcon=font:VGA8x8 console=tty1 consoleblank=0

(This will boot into the command line on the Waveshare display. If you want the command line on your primary display with HDMI or NTSC, remove "fbcon=map:10 fbcon=font:VGA8x8". Booting fbcon this way is deprecated in future releases.)

Step 4) Reboot

That's it! The display should work and you should see the command line on it now.

† The builtin branch is deprecated, but I got a square display with unused white bars on the side when I set it up with the newer kernel. I haven't figured out a solution yet. Keep in mind that fbtft_device, ads7846_device, and fbcon might not work the same way in newer releases.
‡ The Raspberry Pi Rev. 1 models A and B have a slightly different pinout for GPIO. GPIO21 was changed to GPIO27 in all future revisions, so change the reset pin accordingly.

@joelstitch

This comment has been minimized.

Show comment
Hide comment
@joelstitch

joelstitch Sep 14, 2015

I have a WaveShare 3.5 RPI LCD (A) (http://www.wvshare.com/product/3.5inch-RPi-LCD-A.htm) and cannot get it to work following this guide. I have Kali Linux installed with TFT made specifically for the Raspberry Pi (including A). I followed ieidsath guide and first /boot/config.txt and /boot/cmdline.txt did not exist (don't know if that has anything to do with it not working). Besides that I followed the instructions and it still shows the display on the HDMI and none on the LCD screen.

joelstitch commented Sep 14, 2015

I have a WaveShare 3.5 RPI LCD (A) (http://www.wvshare.com/product/3.5inch-RPi-LCD-A.htm) and cannot get it to work following this guide. I have Kali Linux installed with TFT made specifically for the Raspberry Pi (including A). I followed ieidsath guide and first /boot/config.txt and /boot/cmdline.txt did not exist (don't know if that has anything to do with it not working). Besides that I followed the instructions and it still shows the display on the HDMI and none on the LCD screen.

@Sergehog101

This comment has been minimized.

Show comment
Hide comment
@Sergehog101

Sergehog101 Jan 28, 2016

Hi All,

I have purchased one of these Spotpear V4 boards to run on a Pi2 B. After contacting the supplier here is the link for a image configured for the display.
http://www.spotpear.com/download/image/RPi-2.4inch_3.2inch-LCD-150602.7z
Or http://www.spotpear.com/download/image/ for alternate displays.
installing this image on a sd card I can confirm all works correctly including the touch screen on my Pi2.
Hope this helps.

Sergehog101 commented Jan 28, 2016

Hi All,

I have purchased one of these Spotpear V4 boards to run on a Pi2 B. After contacting the supplier here is the link for a image configured for the display.
http://www.spotpear.com/download/image/RPi-2.4inch_3.2inch-LCD-150602.7z
Or http://www.spotpear.com/download/image/ for alternate displays.
installing this image on a sd card I can confirm all works correctly including the touch screen on my Pi2.
Hope this helps.

@zheli

This comment has been minimized.

Show comment
Hide comment
@zheli

zheli Feb 18, 2016

@ieidsath thx for the info on rev 1! Finally figure out why it didn't work on my board 😃

zheli commented Feb 18, 2016

@ieidsath thx for the info on rev 1! Finally figure out why it didn't work on my board 😃

@AaronPelzer

This comment has been minimized.

Show comment
Hide comment
@AaronPelzer

AaronPelzer Jul 2, 2016

@Sergehog101 you are the insanity saver!! Been figuring this for days -

AaronPelzer commented Jul 2, 2016

@Sergehog101 you are the insanity saver!! Been figuring this for days -

@ayasystems

This comment has been minimized.

Show comment
Hide comment
@ayasystems

ayasystems Jul 2, 2016

Could you talk as more about this image??

What is the SO based? Debian? Version kernel?

Did you try to make a dist-upgrade ? Is it working after upgrade ?

Regards
El 28 ene. 2016 11:41, "Sergehog101" notifications@github.com escribió:

Hi All,

I have purchased one of these Spotpear V4 boards to run on a Pi2 B. After
contacting the supplier here is the link for a image configured for the
display.
http://www.spotpear.com/download/image/RPi-2.4inch_3.2inch-LCD-150602.7z
After installing this image on a sd card I can confirm all works correctly
including the touch screen on my Pi2.
Hope this helps.


Reply to this email directly or view it on GitHub
#6 (comment).

ayasystems commented Jul 2, 2016

Could you talk as more about this image??

What is the SO based? Debian? Version kernel?

Did you try to make a dist-upgrade ? Is it working after upgrade ?

Regards
El 28 ene. 2016 11:41, "Sergehog101" notifications@github.com escribió:

Hi All,

I have purchased one of these Spotpear V4 boards to run on a Pi2 B. After
contacting the supplier here is the link for a image configured for the
display.
http://www.spotpear.com/download/image/RPi-2.4inch_3.2inch-LCD-150602.7z
After installing this image on a sd card I can confirm all works correctly
including the touch screen on my Pi2.
Hope this helps.


Reply to this email directly or view it on GitHub
#6 (comment).

@mrwolf81

This comment has been minimized.

Show comment
Hide comment
@mrwolf81

mrwolf81 Aug 11, 2016

for all of you trying to get the following screen to work on pi B rev1
http://www.waveshare.com/3.2inch-rpi-lcd-b.htm
you need to download the image from the website, install/write to SD card,
then
sudo nano /etc/modules
and change this bit: gpios=dc:22,reset:27
to gpios=dc:22,reset:21
and your screen will work ...and work in startx
i don't think anyone has been paying any attention to the pin-outs of their screens and the pin-outs of the gpio's on their versions of the raspi! if it doesn't match the code... it ain't gonna work!

mrwolf81 commented Aug 11, 2016

for all of you trying to get the following screen to work on pi B rev1
http://www.waveshare.com/3.2inch-rpi-lcd-b.htm
you need to download the image from the website, install/write to SD card,
then
sudo nano /etc/modules
and change this bit: gpios=dc:22,reset:27
to gpios=dc:22,reset:21
and your screen will work ...and work in startx
i don't think anyone has been paying any attention to the pin-outs of their screens and the pin-outs of the gpio's on their versions of the raspi! if it doesn't match the code... it ain't gonna work!

@dhineshc

This comment has been minimized.

Show comment
Hide comment
@dhineshc

dhineshc Sep 8, 2016

Hi notro,
I am using chromium OS in raspberry pi 3 board with waveshare 3.2 inch TFT display. Chromium OS has Linux kernel 4.4, FBTFT drivers are built part of kernel. I followed the overlay procedure with the waveshare dtb, but on boot up, it gets stuck with the following kernel messages. Any solution ??
20160907_170704

dhineshc commented Sep 8, 2016

Hi notro,
I am using chromium OS in raspberry pi 3 board with waveshare 3.2 inch TFT display. Chromium OS has Linux kernel 4.4, FBTFT drivers are built part of kernel. I followed the overlay procedure with the waveshare dtb, but on boot up, it gets stuck with the following kernel messages. Any solution ??
20160907_170704

@notro

This comment has been minimized.

Show comment
Hide comment
@notro

notro Sep 10, 2016

Owner

Use a HDMI monitor to see if there are more messages. FBTFT won't display panic messages.

Owner

notro commented Sep 10, 2016

Use a HDMI monitor to see if there are more messages. FBTFT won't display panic messages.

@fbettag

This comment has been minimized.

Show comment
Hide comment
@fbettag

fbettag Dec 18, 2016

Allright, the only thing y'all need to do is follow the dts/dtb instructions here: https://github.com/swkim01/waveshare-dtoverlays

Basically copy the dtb file to your /boot/overlay/, add dtoverlay=waveshare35a to config.txt, reboot. Done :)

fbettag commented Dec 18, 2016

Allright, the only thing y'all need to do is follow the dts/dtb instructions here: https://github.com/swkim01/waveshare-dtoverlays

Basically copy the dtb file to your /boot/overlay/, add dtoverlay=waveshare35a to config.txt, reboot. Done :)

@jlozadad

This comment has been minimized.

Show comment
Hide comment
@jlozadad

jlozadad Feb 8, 2017

@fbettag does that include the raspberry 3? I just got this LCD and tried to do what is on waveshare page http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B) but, I get a kernel panic when It reboots.

jlozadad commented Feb 8, 2017

@fbettag does that include the raspberry 3? I just got this LCD and tried to do what is on waveshare page http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B) but, I get a kernel panic when It reboots.

@fbettag

This comment has been minimized.

Show comment
Hide comment
@fbettag

fbettag Feb 8, 2017

yes should work for rpi1-3. I had it plugged on my 2 and 3, dunno where my 1 is

fbettag commented Feb 8, 2017

yes should work for rpi1-3. I had it plugged on my 2 and 3, dunno where my 1 is

@jlozadad

This comment has been minimized.

Show comment
Hide comment
@jlozadad

jlozadad Feb 10, 2017

just tried it and all I get is a block screen during boot. It shows a bit of the booting process then goes blank.

jlozadad commented Feb 10, 2017

just tried it and all I get is a block screen during boot. It shows a bit of the booting process then goes blank.

@fbettag

This comment has been minimized.

Show comment
Hide comment
@fbettag

fbettag Feb 10, 2017

well if it shows your cli during boot then it works, you're just suffering some misconfiguration. Xorg and fbcp setup properly?

fbettag commented Feb 10, 2017

well if it shows your cli during boot then it works, you're just suffering some misconfiguration. Xorg and fbcp setup properly?

@jlozadad

This comment has been minimized.

Show comment
Hide comment
@jlozadad

jlozadad Feb 10, 2017

where can I find how to configure those? I appreciate the help.

jlozadad commented Feb 10, 2017

where can I find how to configure those? I appreciate the help.

@fbettag

This comment has been minimized.

Show comment
Hide comment

fbettag commented Feb 10, 2017

@mrwolf81

This comment has been minimized.

Show comment
Hide comment
@mrwolf81

mrwolf81 Feb 12, 2017

dhineshc

Change your pinouts references
Dc = 22
Reset = 25 on pi3 i think
And make sure you've checked the information others have posted on this. Send more screen shots of all the info during boot

mrwolf81 commented Feb 12, 2017

dhineshc

Change your pinouts references
Dc = 22
Reset = 25 on pi3 i think
And make sure you've checked the information others have posted on this. Send more screen shots of all the info during boot

@mrwolf81

This comment has been minimized.

Show comment
Hide comment
@mrwolf81

mrwolf81 Feb 12, 2017

Sorry correction
DC = 22 (GPIO 25)
RESET = 21 (GPIO 9)
Do not use 27 as reset, that is the I²C id for the eeprom

Sudo nano /etc/modules
Change
fbtft_device name=waveshare32b gpios=dc:22,reset:27 speed=48000000

To this
fbtft_device name=waveshare32b gpios=dc:22,reset:21 speed=48000000

The below is how i set mine up, just changed the gpios to match pinouts of the screen & pi
Www.circuitbasics.com/setup-lcd-touchscreen-raspberry-pi/

mrwolf81 commented Feb 12, 2017

Sorry correction
DC = 22 (GPIO 25)
RESET = 21 (GPIO 9)
Do not use 27 as reset, that is the I²C id for the eeprom

Sudo nano /etc/modules
Change
fbtft_device name=waveshare32b gpios=dc:22,reset:27 speed=48000000

To this
fbtft_device name=waveshare32b gpios=dc:22,reset:21 speed=48000000

The below is how i set mine up, just changed the gpios to match pinouts of the screen & pi
Www.circuitbasics.com/setup-lcd-touchscreen-raspberry-pi/

@elBoz73

This comment has been minimized.

Show comment
Hide comment
@elBoz73

elBoz73 Mar 26, 2017

Hi,
I try to replace my squeeezeboxplayer using raspeberry pi 3, picore player (tinycore linux) and my waveshare 3.5.
I tried all procedure I known but I still have a white screen (the HDMI is working correctly). do you have a procedure for tiny core ( kernel 4.4.39) that I could use without having X11 installed?
thanks for your help

elBoz73 commented Mar 26, 2017

Hi,
I try to replace my squeeezeboxplayer using raspeberry pi 3, picore player (tinycore linux) and my waveshare 3.5.
I tried all procedure I known but I still have a white screen (the HDMI is working correctly). do you have a procedure for tiny core ( kernel 4.4.39) that I could use without having X11 installed?
thanks for your help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment