RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    retropie and waveshare 32b?

    Scheduled Pinned Locked Moved Help and Support
    66 Posts 28 Posters 64.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • glennlakeG
      glennlake @rog585
      last edited by

      @rog585 OK sounds good. I would make sure your RetroPie boots and works fine before I try the Pitft screen. Divide and conquer troubleshooting.

      1 Reply Last reply Reply Quote 0
      • R
        rog585
        last edited by

        Still no luck, I have tried it again and updated the retropie image before i ran the adafruit script. Can any one help?

        glennlakeG 1 Reply Last reply Reply Quote 0
        • glennlakeG
          glennlake @rog585
          last edited by glennlake

          @rog585 I copied this from the Adafruit site. Sometime you can miss something on the webpage. http://pastebin.com/whMCbDAb I had a thought. Could the screen be bad?

          1 Reply Last reply Reply Quote 0
          • R
            rog585
            last edited by

            Will give it another go, the screen is good. It works with the image given from waveshare. Just when i do anything with it without the waveshare image it is just a white screen.

            1 Reply Last reply Reply Quote 0
            • R
              rog585
              last edited by rog585

              If you have a 3.5 inch waveshare screen use the below code, it works and now i have a mini screen working with Retropie

              git clone https://github.com/swkim01/waveshare-dtoverlays.git
              sudo cp waveshare-dtoverlays/waveshare35a-overlay.dtb /boot/overlays/

              Note! If you're running the latest Retropie with linux 4.4 kernel or newer (check in terminal uname -a), use the following instead;
              git clone https://github.com/swkim01/waveshare-dtoverlays.git
              sudo cp waveshare-dtoverlays/waveshare35a-overlay.dtb /boot/overlays/waveshare35a.dtbo

              now edit your config.txt
              sudo nano /boot/config.txt
              and add these two lines to the very bottom;
              dtparam=spi=on
              dtoverlay=waveshare35a
              ctrl+x then y then enter

              sudo reboot

              again quit ES drop to command line, check the existence of your new tft display by typing;
              ls /dev/fb*

              you should see dev/fb0 /dev/fb1
              /dev/fb1 is your tft

              if you don't see /dev/fb1 you've messed up and need to start over
              if all is good, now we get retropie output to your tft;

              sudo apt-get install cmake
              git clone https://github.com/tasanakorn/rpi-fbcp
              cd rpi-fbcp/
              mkdir build
              cd build/
              cmake ..
              make
              sudo install fbcp /usr/local/bin/fbcp

              now to launch fbcp automatically we need to add;
              sudo nano /etc/rc.local
              Before, the final “exit 0” line, add the following:
              /usr/local/bin/fbcp &
              ctrl+x then y then enter

              sudo reboot

              senkunS R 2 Replies Last reply Reply Quote 1
              • R
                rog585 @senkun
                last edited by rog585

                @senkun do you know how to increase the frames per second to make it run smoother?

                glennlakeG senkunS 2 Replies Last reply Reply Quote 0
                • glennlakeG
                  glennlake @rog585
                  last edited by

                  @rog585 Glad to see you got your screen working. I got burned using the Waveshare drivers when I first started to setup my screen and so I didn't recommend that. I don't know about their setup for but for the Adafruit setup you will find in the /boot/config.txt this line " dtoverlay=pitft35r,rotate=90,speed=64000000,fps=30". The "fps" is for the frames per second. I can't say the same is in your setup but it's worth a look. If you change it just be sure to backup your settings first now that it's working.

                  R 1 Reply Last reply Reply Quote 0
                  • R
                    rog585 @glennlake
                    last edited by

                    @glennlake its the same, as you suggested. its sooo jumpy though i have tried different speeds and fps but not great. This i will turn it into a digital photo frame for work. Have sine bought a 3.2 screen as the feedback was better. Thanks for all your help.

                    1 Reply Last reply Reply Quote 0
                    • senkunS
                      senkun @rog585
                      last edited by

                      @rog585

                      lol did you type all that or did you just cut and paste all that from my guide right on top?

                      1 Reply Last reply Reply Quote 0
                      • senkunS
                        senkun @rog585
                        last edited by

                        @rog585 said in retropie and waveshare 32b?:

                        @senkun do you know how to increase the frames per second to make it run smoother?

                        Nope. Limitation of bandwidth on SPI. 3.5" and 4" screens will have tearing and lag, they are 480x320 compared to the 3.2" screen with 320x240. So they're struggling to push double the pixels. If you need a larger screen for gaming, most people just go composite or HDMI. There are a lot of cheap nobrand composite 4.3" screens you can try, or use the 5" or 7" HDMI screens from waveshare.

                        Using the guide I wrote above, second post on this thread, you can get waveshare 3.2", 3.5" and 4" TFT screens working.

                        If you're using their 3.5" or 4" screens, substitute these lines:

                        git clone https://github.com/swkim01/waveshare-dtoverlays.git
                        sudo cp waveshare-dtoverlays/waveshare35a-overlay.dtb /boot/overlays/

                        But if your linux kernel is 4.4 or newer, use this instead:

                        sudo cp waveshare-dtoverlays/waveshare35a-overlay.dtb /boot/overlays/waveshare35a.dtbo

                        suprjamiS B 2 Replies Last reply Reply Quote 0
                        • suprjamiS
                          suprjami @senkun
                          last edited by

                          @senkun said in retropie and waveshare 32b?:

                          Nope. Limitation of bandwidth on SPI. 3.5" and 4" screens will have tearing and lag

                          Can't you increase the speed of SPI bus to (somewhat) work around this?

                          1 Reply Last reply Reply Quote 0
                          • R
                            rugur78tr
                            last edited by

                            hello guys,

                            first of all I wanna thank to all that helped me alot to set up wareshare 3.5 inch LCD to my Rpi for Retropie. senkun's explanation is quite good.
                            but Ive a problem, frame rate is so bad to play games, and really annoying after struggling to set the LCD up.

                            I ve the latest Retropie 4.0.2 and Waveshare 3.5 inch LCD. tried to setup the speed and set it to 20000000, cuz when its more than it, I got invalid colors. (Pls do not set the speed lower than xx million, if yes, you need to wait a lot to boot - I made it 5 and to solve it quickly re installed retropie) and fps=60, its still annoying and have late response.

                            Do you have any solution or suggestions how to work it faster? thanks in advance.

                            1 Reply Last reply Reply Quote 0
                            • R
                              rugur78tr
                              last edited by

                              hello again,

                              after many times research, I couldnt find a way to speed up my 3,5 inch waveshare LCD, instead I bought 3,2 inch same brand. it works awesome, I tried it with Gameboy Advance and Neo Geo roms its just perfect. and the thing that make me feel great is playing Quake 3 on my lit LCD w/o any problems.

                              I dont know if I do the calculation right but, 3,5 has double pixels , and 3,2 is 46~48mhz, 3,5 16~18mhz. so I can say that 3,2 is faster 6 x than 3,5.
                              :):)

                              thanks everyone.

                              1 Reply Last reply Reply Quote 0
                              • B
                                Bikash Nath @senkun
                                last edited by

                                @senkun EVEN I'M FACING WITH A LAGGED GAMEPLAY EVEN ON NES ROMS. I'M USING A WAVESHARE 32B 3.2 LCD SCREEN AND IT HAS BEEN CONFIGURED AS PER THE INSTRUCTIONS SHOWN HERE. BUT I'M AT A LOSS AS TO HOW TO TWEAK THE FPS. INFO ON THAT PART WOULD BE HIGHLY GRATIFIED.

                                1 Reply Last reply Reply Quote 0
                                • R
                                  rugur78tr
                                  last edited by

                                  hi Bikash,

                                  I m using 3.2 waveshare and it works fine, I will share the codes or whole config file with you , once Im at home.

                                  1 Reply Last reply Reply Quote 0
                                  • N
                                    nebraxus
                                    last edited by

                                    All works up until I run the "make" command and then I got a whole load of errors popup.

                                    [100%] Building C object CMakeFiles/fbcp.dir/main.c.o
                                    /home/osmc/rpi-fbcp/main.c:8:22: fatal error: bcm_host.h: No such file or directory
                                    #include <bcm_host.h>
                                    ^
                                    compilation terminated.
                                    CMakeFiles/fbcp.dir/build.make:54: recipe for target 'CMakeFiles/fbcp.dir/main.c.o' failed
                                    make[2]: *** [CMakeFiles/fbcp.dir/main.c.o] Error 1
                                    CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/fbcp.dir/all' failed
                                    make[1]: *** [CMakeFiles/fbcp.dir/all] Error 2
                                    Makefile:76: recipe for target 'all' failed
                                    make: *** [all] Error 2
                                    osmc@osmc:~/rpi-fbcp/build$ sudo nano /boot/config.txt
                                    osmc@osmc:~/rpi-fbcp/build$ make
                                    [100%] Building C object CMakeFiles/fbcp.dir/main.c.o
                                    /home/osmc/rpi-fbcp/main.c:8:22: fatal error: bcm_host.h: No such file or directory
                                    #include <bcm_host.h>
                                    ^
                                    compilation terminated.
                                    CMakeFiles/fbcp.dir/build.make:54: recipe for target 'CMakeFiles/fbcp.dir/main.c.o' failed
                                    make[2]: *** [CMakeFiles/fbcp.dir/main.c.o] Error 1
                                    CMakeFiles/Makefile2:60: recipe for target 'CMakeFiles/fbcp.dir/all' failed
                                    make[1]: *** [CMakeFiles/fbcp.dir/all] Error 2
                                    Makefile:76: recipe for target 'all' failed
                                    make: *** [all] Error 2

                                    Any ideas what is going wrong?

                                    1 Reply Last reply Reply Quote 0
                                    • millertv79M
                                      millertv79 @senkun
                                      last edited by

                                      @senkun Thanks for your post, it was simple and plain worked. For some reason though, retropie has just suddenly stopped outputting to the screen - I haven't updated anything or changed anything, I did scrape some games. Could that have done it??? I tried to redo all the steps but since I already have everything installed and have already edited the config files as directed, I can't figure out what else to do. Any ideas?

                                      For more options and information see

                                      http://www.raspberrypi.org/documentation/configuration/config-txt.md

                                      Some settings may impact device functionality. See link above for details

                                      uncomment if you get no picture on HDMI for a default "safe" mode

                                      #hdmi_safe=1

                                      uncomment this if your display has a black border of unused pixels visible

                                      and your display can output without overscan

                                      disable_overscan=1

                                      uncomment the following to adjust overscan. Use positive numbers if console

                                      goes off screen, and negative if there is too much border

                                      #overscan_left=16
                                      #overscan_right=16
                                      #overscan_top=16
                                      #overscan_bottom=16

                                      uncomment to force a console size. By default it will be display's size minus

                                      overscan.

                                      #framebuffer_width=1280
                                      #framebuffer_height=720

                                      uncomment if hdmi display is not detected and composite is being output

                                      #hdmi_force_hotplug=1

                                      uncomment to force a specific HDMI mode (this will force VGA)

                                      #hdmi_group=1
                                      #hdmi_mode=1

                                      uncomment to force a HDMI mode rather than DVI. This can make audio work in

                                      DMT (computer monitor) modes

                                      #hdmi_drive=2

                                      uncomment to increase signal to HDMI, if you have interference, blanking, or

                                      no display

                                      #config_hdmi_boost=4

                                      #framebuffer_width=1280
                                      #framebuffer_height=720

                                      uncomment if hdmi display is not detected and composite is being output

                                      #hdmi_force_hotplug=1

                                      uncomment to force a specific HDMI mode (this will force VGA)

                                      #hdmi_group=1
                                      #hdmi_mode=1

                                      uncomment to force a HDMI mode rather than DVI. This can make audio work in

                                      DMT (computer monitor) modes

                                      #hdmi_drive=2

                                      uncomment to increase signal to HDMI, if you have interference, blanking, or

                                      no display

                                      #config_hdmi_boost=4

                                      uncomment for composite PAL

                                      #sdtv_mode=2

                                      #uncomment to overclock the arm. 700 MHz is the default.
                                      #arm_freq=800

                                      Uncomment some or all of these to enable the optional hardware interfaces

                                      #dtparam=i2c_arm=on
                                      #dtparam=i2s=on
                                      dtparam=spi=on

                                      Uncomment this to enable the lirc-rpi module

                                      #dtoverlay=lirc-rpi

                                      Additional overlays and parameters are documented /boot/overlays/README

                                      Enable audio (loads snd_bcm2835)

                                      dtparam=audio=on
                                      gpu_mem_256=128
                                      gpu_mem_512=256

                                      uncomment to overclock the arm. 700 MHz is the default.
                                      #arm_freq=800

                                      Uncomment some or all of these to enable the optional hardware interfaces

                                      #dtparam=i2c_arm=on
                                      #dtparam=i2s=on
                                      dtparam=spi=on

                                      Uncomment this to enable the lirc-rpi module

                                      #dtoverlay=lirc-rpi

                                      Additional overlays and parameters are documented /boot/overlays/README

                                      Enable audio (loads snd_bcm2835)

                                      dtparam=audio=on
                                      gpu_mem_256=128
                                      gpu_mem_512=256
                                      gpu_mem_1024=256
                                      #overscan_scale=1

                                      dtparam=spi=on
                                      dtoverlay=waveshare32b
                                      display_rotate=2


                                      pi@retropie:~ $ ls /dev/fb*
                                      /dev/fb0 /dev/fb1


                                      #!/bin/sh -e

                                      rc.local

                                      This script is executed at the end of each multiuser runlevel.

                                      Make sure that the script will "exit 0" on success or any other

                                      value on error.

                                      In order to enable or disable this script just change the execution

                                      bits.

                                      By default this script does nothing.

                                      Print the IP address

                                      _IP=$(hostname -I) || true
                                      if [ "$_IP" ]; then
                                      printf "My IP address is %s\n" "$_IP"
                                      fi
                                      /usr/local/bin/fbcp &
                                      exit 0

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        ramiscomakimaki @rog585
                                        last edited by

                                        @rog585 what was causing that there white screen of yours? I've followed them there instructions multiple times from fresh installs of the RetroPie and I still be getting that there white screen. If you don't mind throwing me a slice of knowledge, I'd sure appreciate it. Thanks kindly.

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          AluLagoa @senkun
                                          last edited by

                                          @senkun
                                          Hi!
                                          Is it possible to get the Waveshare 32b working on a B+?
                                          A seller on amazon said it was possible, but he only sends images to costumers.
                                          Regards

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            RetroManCave
                                            last edited by

                                            I've made a video of the Waveshare 3.5" running with these settings here:

                                            I'll be following this up soon with a 3.2" screen for comparison to see which is most suitable for Retropie.

                                            If you find this useful please take a moment to subscribe to my channel for more similar content.

                                            ShakzS 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.