RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Pi in a Dreamcast VMU Build - WIP

    Scheduled Pinned Locked Moved Projects and Themes
    buildprojecthandheldvmudreamcast
    157 Posts 7 Posters 91.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.
    • mooseprM
      moosepr @obsidianspider
      last edited by

      @obsidianspider thats the easy bit

      raspi-config - enable spi

      sudo nano /etc/modules - add in

      spi-bcm2835
      fbtft_device

      sudo nano /etc/modprobe.d/fbtft.conf - add in

      options fbtft_device name=fb_ili9163 gpios=reset:25,dc:24 speed=40000000 bgr=1 rotate=0 custom=1 fps=60

      reboot

      want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

      obsidianspiderO 1 Reply Last reply Reply Quote 0
      • obsidianspiderO
        obsidianspider @moosepr
        last edited by

        @moosepr I'm workin on it! I'm workin on it!

        📷 @obsidianspider

        1 Reply Last reply Reply Quote 0
        • obsidianspiderO
          obsidianspider
          last edited by

          So, it works, kind of. Both screens are showing garbage data on the pixels on the right, one is showing them on the bottom as well. I haven't tried adjusting resolution yet, but the screen is mirroring what's going to HDMI correctly, aside from the garbage pixels.

          I do have overscan disabled in /boot/config.txt

          0_1491856951163_bad-pixels-1.jpg
          0_1491856966147_bad-pixels-2.jpg

          📷 @obsidianspider

          mooseprM 1 Reply Last reply Reply Quote 0
          • lilbudL
            lilbud
            last edited by

            @obsidianspider do the dead pixels show up under the VMU bezel?

            Creator of the Radiocade: https://retropie.org.uk/forum/topic/6077/radiocade

            Backlog: http://backloggery.com/lilbud

            1 Reply Last reply Reply Quote 0
            • mooseprM
              moosepr @obsidianspider
              last edited by

              @obsidianspider hmmm are those the 128x128 screens, or the 128x160?

              want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

              obsidianspiderO 1 Reply Last reply Reply Quote 0
              • obsidianspiderO
                obsidianspider @moosepr
                last edited by

                @moosepr they're the "red board" screens.

                0_1491858478837_red-board.jpg

                Setting the HDMI resolution to 128 x 128 in /boot/config.txt didn't help.

                0_1491857792320_garbage-pixel-smb.jpg

                Great refresh rate though. Very smooth.

                @lilbud The whole screen shows. I'm going to actually end up coloring in the white surround black to hide it a bit. This is just "set in" but you get the idea.

                0_1491858223586_sonic-mockup.jpg

                📷 @obsidianspider

                mooseprM 1 Reply Last reply Reply Quote 0
                • mooseprM
                  moosepr @obsidianspider
                  last edited by

                  @obsidianspider just for shits and giggles, try running it with the other driver

                  options fbtft_device name=fb_st7735r gpios=reset:25,dc:24 speed=40000000 bgr=1 rotate=0 custom=1 fps=60

                  then if that works, try adding some size in there

                  options fbtft_device name=fb_st7735r gpios=reset:25,dc:24 speed=40000000 height=128 bgr=1 rotate=0 custom=1 fps=60

                  all in sudo nano /etc/modprobe.d/fbtft.conf of course

                  want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                  obsidianspiderO 1 Reply Last reply Reply Quote 0
                  • obsidianspiderO
                    obsidianspider @moosepr
                    last edited by

                    @moosepr That gave me a different kind of garbage. The bad pixels moved to the other side, things are upside down, and the bottom output is garbled.

                    0_1491859412621_other-garbage.jpg

                    0_1491859426922_other-garbage-2.jpg

                    📷 @obsidianspider

                    mooseprM 2 Replies Last reply Reply Quote 0
                    • mooseprM
                      moosepr @obsidianspider
                      last edited by

                      @obsidianspider odd!! it behaves differently to the one i have got. Although mine is probably wired differently (you may also have a totally different screen on the board)

                      notro did point me in the direction of using the flex driver, where you can basically set the full init commands. I did start looking, but decided to wait till my boards arrived (they have literally just been marked as shipped!!)

                      here is all i know so far https://github.com/notro/fbtft/issues/453

                      want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                      1 Reply Last reply Reply Quote 1
                      • mooseprM
                        moosepr @obsidianspider
                        last edited by

                        @obsidianspider Mine have H144TC215A-V0 on the ribbon

                        want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                        obsidianspiderO 1 Reply Last reply Reply Quote 0
                        • obsidianspiderO
                          obsidianspider
                          last edited by obsidianspider

                          I went back to the ILI9163 driver and then tried messing with some overscan settings, which didn't seem to help once EmulationStation loaded, but I do see that the garbled text appears to be from the console, so that may be an insight into what's going on.

                          0_1491859974333_more-test-with-console.jpg

                          I'm going to have to mess with it. Like I said, I want to make this stuff works before I go removing things from the board. ;)

                          📷 @obsidianspider

                          1 Reply Last reply Reply Quote 0
                          • obsidianspiderO
                            obsidianspider @moosepr
                            last edited by

                            @moosepr Mine say TXDT144CF-47 on the ribbon

                            📷 @obsidianspider

                            mooseprM 1 Reply Last reply Reply Quote 0
                            • mooseprM
                              moosepr @obsidianspider
                              last edited by

                              @obsidianspider yours seems to have a few more pins than mine internally i think (although the search is a bit of a minefield)

                              i think the garbage is generally just leftovers from stuff that has been on the screen on other boots. from a cold boot it will be rainbowsnow, from a setings change and a reboot it will be whatever was there last time

                              want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                              obsidianspiderO 1 Reply Last reply Reply Quote 1
                              • obsidianspiderO
                                obsidianspider @moosepr
                                last edited by

                                @moosepr I can confirm the rainbow snow from a cold boot. I can also confirm that the other screen behaves the same way. Initially it only had garbage on the right, but now it has garbage on the bottom and right, so it's consistent. I need to shift things down and to the right. Weird.

                                📷 @obsidianspider

                                1 Reply Last reply Reply Quote 0
                                • obsidianspiderO
                                  obsidianspider
                                  last edited by

                                  @moosepr Ideally I'd like to be able to set overscan like on the 3.2" TFT I'm using so I can keep the image from displaying at the top of the screen where it's covered by the VMU plastic. Though, in looking through it, I have that one set up differently.

                                  @obsidianspider said in Pi in a Gameboy Advance Build - WIP:

                                  My SainSmart 3.2" TFT showed up today and getting it to work wasn't as straightforward as I initially read, but it was totally doable and the speed seems very good when connected to my test mule Raspberry Pi 2 with a fresh image of RetroPie updated to 4.0.6.

                                  0_1477951499856_3_2_inch_sainsmart_rpi2.jpg
                                  (I still have the protective film in place)

                                  OK, so here's how I got the screen working on a freshly installed image of RetroPie 4.0.6 on a Raspberry Pi 2. Steps are a combination of a few posts here and on GitHub

                                  First I added the following to the bottom of the /boot/config.txt

                                  #Waveshare 3.2 TFT Screen
                                  #same resolution for hdmi and tft
                                  hdmi_force_hotplug=1
                                  hdmi_cvt=320 240 60 1 0 0 0
                                  hdmi_group=2
                                  hdmi_mode=1
                                  hdmi_mode=87
                                  
                                  dtparam=spi=on
                                  dtoverlay=waveshare32b:rotate=270,speed=82000000,fps=60
                                  

                                  Then I rebooted and wondered why nothing had happened. It turned out I needed to install the device tree overlay (that's what dtoverlay means, you learn something every day). Since RetroPie is

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

                                  📷 @obsidianspider

                                  mooseprM 1 Reply Last reply Reply Quote 0
                                  • mooseprM
                                    moosepr @obsidianspider
                                    last edited by

                                    @obsidianspider yeah I think the overscan basically just shrinks the image within the screen area, so we need to remove the rainbowsnow before the overscan can be used properly.

                                    I think the init sequence needs tweaks to get the image starting in the correct place. I was going to start off using the link notro sent to me, and compare that against the init sequence within the driver code itself. Then once that was working, get the data sheet and see which registers can be tweaked

                                    want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                                    obsidianspiderO 1 Reply Last reply Reply Quote 0
                                    • obsidianspiderO
                                      obsidianspider @moosepr
                                      last edited by

                                      @moosepr That makes a lot of sense. I need to run some errands, but I'll see what I can figure out tonight, if anything. Thanks again for assisting with this.

                                      📷 @obsidianspider

                                      mooseprM 1 Reply Last reply Reply Quote 0
                                      • mooseprM
                                        moosepr @obsidianspider
                                        last edited by

                                        @obsidianspider Not a problem! I need to fix it too! :p

                                        want to get a tft into your project, look no further than here https://retropie.org.uk/forum/topic/7464/ili9341-tft-screen-guide

                                        1 Reply Last reply Reply Quote 1
                                        • obsidianspiderO
                                          obsidianspider
                                          last edited by

                                          I realized that when I was playing with things, I put the following in the /boot/config.txt to get the 128x128 working at the right resolution. I'm not sure if this is better or worse for the garbage pixel problem (probably not affecting it)

                                          hdmi_force_hotplug=1
                                          hdmi_cvt=128 128 60 1 0 0 0
                                          hdmi_group=2
                                          hdmi_mode=1
                                          hdmi_mode=87
                                          

                                          I basically just took what I did for the Waveshare screen and adjusted it. Games are playing in the correct aspect ratio (I actually have a black bar at the top and bottom when playing a game), but EmulationStation DGAF and just takes up the whole screen.

                                          To try to help with identification and troubleshooting, I pried one of the screens away from the board.

                                          0_1491913913679_screen-away-from-board.jpg

                                          📷 @obsidianspider

                                          mooseprM 1 Reply Last reply Reply Quote 0
                                          • obsidianspiderO
                                            obsidianspider
                                            last edited by

                                            Since this screen stuff appears to be a driver/software issue, I'm thinking about removing the screen from the board, making sure it works as well as it did when on the board, then fitting it to a VMU so I can try fitting a Zero in with it. The software stuff can be tweaked really any time. What say you, hive mind?

                                            📷 @obsidianspider

                                            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.