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.
    • 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
                              • ShakzS
                                Shakz @RetroManCave
                                last edited by

                                @RetroManCave
                                Just watched your vid and subbed. What are your video settings? Mine still looks terrible. I have the 3.2in screen.

                                RetroPie tips, tricks, and tweaks: https://www.youtube.com/eazyhax

                                1 Reply Last reply Reply Quote 0
                                • wenambaW
                                  wenamba
                                  last edited by wenamba

                                  I just used the guide to setup my waveshare32b display and it worked like a charm! Thanks again for the guide. After the initial happiness, I also saw some flaws which I corrected. Perhaps others can benefit from them.

                                  After getting the display to work there were borders around the screen and there was lagging between input and the screen. Borders are killing on a small screen like this, and can easily be fixed by setting extra parameters in the /boot/config.txt.

                                  So this is what I added to the end of the file:

                                  hdmi_force_hotplug=1
                                  hdmi_cvt=320 240 20 1 0 0 0
                                  hdmi_group=2
                                  hdmi_mode=87
                                  

                                  The hdmi_cvt parameter can be edited if you have another display. Values stand for:

                                  hdmi_cvt=<width> <height> <framerate> <aspect> <margins> <interlace> <rb>
                                  width width in pixels
                                  height height in pixels
                                  framerate framerate in Hz
                                  aspect aspect ratio 1=4:3, 2=14:9, 3=16:9, 4=5:4, 5=16:10, 6=15:9
                                  margins 0=margins disabled, 1=margins enabled
                                  interlace 0=progressive, 1=interlaced
                                  rb 0=normal, 1=reduced blanking

                                  The lag in the screen was because of the SPI speed, which by default is not very high. You can manually set it to an higher rate in the same /boot/config.txt.

                                  Normally you would write this line: dtoverlay=waveshare32b
                                  To add SPI speed, just add parameters to the end of this line. This would lead to the following completed line:
                                  dtoverlay=waveshare32b,speed=42000000,fps=20

                                  Setting the speed to 42000000 is the advised maximum speed, but I've seen people using 60000000. If you use an extender-cable or something like this, perhaps you have to lower this to 16000000 to make it stable. This will influence the speed of the screen and I advise to not use cables between your screen and the raspberry PI for optimal results.

                                  The FPS of 20 is the same as what I set in the hdmi_cvt parameter. This is important to keep the same value.

                                  Happy gaming.

                                  tonaytanT F C 3 Replies Last reply Reply Quote 0
                                  • tonaytanT
                                    tonaytan @wenamba
                                    last edited by tonaytan

                                    so I have a problem with your guide, I want to install tactile switch buttons but guide your disables retrogame from adafruit is there a solution to that?

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      flashmaster @wenamba
                                      last edited by

                                      @wenamba what version of retropie do you use ? i have tried this set up on both 4.1 and 4.3 and with no joy just an expensive white touch for my raspberry pi

                                      i have tried all above for 2 days now and not getting anywhere

                                      ls /dev/fb* sometimes i will get /dev/fb1 or /dev/fb0 but nothing on my screen.

                                      i have tried installing the driver that came with the cd into the pi root with winscp and still no joy.

                                      i have tried installing just the normal setup that comes on the cd to test the screen and it works fine., just finding now impossible to get it working with retropie will try another week and if no joy will sell the screen on ebay to some fool

                                      tonaytanT 1 Reply Last reply Reply Quote 0
                                      • N
                                        nitesuh @senkun
                                        last edited by

                                        @senkun i bought the waveshare 4 inch hdmi display, and the above method isn't working with it.
                                        please help me out!

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          andydubitsky
                                          last edited by

                                          3.5 still works!!!!!! great job!!!!!!

                                          1 Reply Last reply Reply Quote 0
                                          • tonaytanT
                                            tonaytan @flashmaster
                                            last edited by

                                            @flashmaster hey flashmaster i solved it you need to go on https://github.com/mholgatem/GPIOnext follow his instruction install it and when you install it go to bash gpionext then configure and then choose keyboard just select random buttons and go back in with you retropie and go to configure and voila it will be recognised if you need further informations just reply

                                            tonaytanT 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.