• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

RepPanel - A DIY alternative to the PanelDue with WiFi support

Scheduled Pinned Locked Moved
Third-party software
39
243
30.5k
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.
  • undefined
    seeul8er
    last edited by 28 Jun 2020, 22:18

    Make sure you checkout the LVGL repo at exactly this commit:

    git checkout c1f43bfb090df293059ab52baabbdbdd8df00712
    

    The predefined board pinout does not matter. You can set it to manual/None. Just make sure the pins for TFT and touch are defined exactly the way you plan on wiring them.
    You have two separate SPI connections. One for the TFT and one for the touch controller. So the "0" in your display pin assignment are wrong since MOSI must be 13, MISO does not matter I think, DC (Data) must be 2 - just as we said above.
    The touch pin config looks good. But you wired GPIO 25 for IRQ (interrupt) - go change it from 27 to 25 then or rewire 😉
    Adjust the TFT pixel resolution (480x320).

    Yes. I think you got the duet UART config right. Otherwise switch the cables 😉

    The SSID & password are set via the RepPanel GUI once compiled and flashed.

    undefined undefined 2 Replies Last reply 29 Jun 2020, 08:06 Reply Quote 0
    • undefined
      pandaym @seeul8er
      last edited by 29 Jun 2020, 08:06

      @seeul8er said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

      Make sure you checkout the LVGL repo at exactly this commit:

      git checkout c1f43bfb090df293059ab52baabbdbdd8df00712
      

      Once again thank you.

      After having sort of found out what commits are etc. I hope I found out the way to check it out at that. Is it correct that after cloning I navigate to RepPanel_ESP32\externals\lv_port_esp32 and run the "git checkout c1f43bfb090df293059ab52baabbdbdd8df00712". This gives me the following message:

      HEAD is now at c1f43bf Merge pull request #139 from an-erd/fix_mono_disp
      

      Have I gotten that right?

      @seeul8er said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

      You have two separate SPI connections. One for the TFT and one for the touch controller. So the "0" in your display pin assignment are wrong since MOSI must be 13, MISO does not matter I think, DC (Data) must be 2 - just as we said above.

      Alright, I understand most of that now. I have just rearranged the wiring according to the config to make it easier to see the correlation. It seemed as then I was missing the MOSI for TFT. I have tried to rework it, hopefully this sorts it out:

      Full Wiring - ESP -> LCD

      Power:
      3.3V -> Pin 1
      GND -> Pin 6

      TFT:
      GPIO 13 -> 19 MOSI
      GPIO 18 -> 23 Serial Clock (Shared between TFT and Touch)
      GPIO 15 -> 24 - Slave select
      GPIO 2 -> 18 - Data
      GPIO 4 -> Pin 22 - Reset
      7cfd3915-0b67-42a4-aeae-6f03023ae2dc-image.png

      Touch:
      GPIO 19 -> 21 MISO
      GPIO 18 -> 23 Serial Clock (Shared between TFT and Touch)
      GPIO 5 -> 26 Slave select
      GPIO 25 -> 11 IRQ
      5d0917d0-1d96-47d0-88cc-767589a62d9d-image.png

      Other than that I got:
      Touch controller:
      671888fb-da7b-481f-b3e3-0da1abc12838-image.png
      ec3244d3-35ee-44d6-b4b8-8a8597de9117-image.png
      a5f3816c-d389-42ec-9568-f7c86145bdd0-image.png

      Display controller:
      bde69a84-5b36-400e-a440-6be7f2b2d964-image.png

      Am I getting there? 🙂

      1 Reply Last reply Reply Quote 0
      • undefined
        pandaym
        last edited by 29 Jun 2020, 08:43

        I thought I would just give it a try to see if something showed up. So I:

        • Saved the configuration in the menuconfig
        • Ran idf.py build
        • Connected USB to the ESP32 and found that it was on COM9
        • Ran idf.py -p COM9 flash

        Unfortunately, the display never came on. So I wondered if it needed power on other pins and used my multimeter to check. I could see that the two 3.3V pins on the screen are internally connected, so are the two 5V pins and the five ground pins.

        So I thought that it probably needs both 5V and 3.3V, so I wired 5V from the ESP32 to pin 2 on the screen.

        When I plugged USB back in, the screen lit up, but nothing happened:
        IMG_3056.jpg

        1 Reply Last reply Reply Quote 0
        • undefined
          seeul8er
          last edited by 29 Jun 2020, 12:18

          @pandaym Your config looks good now. Yes you got the commit thing right. Otherwise you'd get a compile error.
          Can you check the debug log please? You can do that by running:

          idf.py monitor
          

          The 5V & 3.3V thing is strange. I'll take a look at the data sheet later.

          undefined 1 Reply Last reply 29 Jun 2020, 23:03 Reply Quote 0
          • undefined
            pd @seeul8er
            last edited by 29 Jun 2020, 18:06

            @seeul8er Thanks for your reply. I had in fact bought the LCD but the resistive touch version. I've been waiting for the capacitive one to come so that I can have another try. Would there be much reprogramming needed to use the resistive touch version?

            undefined 1 Reply Last reply 29 Jun 2020, 21:15 Reply Quote 0
            • undefined
              seeul8er @pd
              last edited by 29 Jun 2020, 21:15

              @pd said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

              @seeul8er Thanks for your reply. I had in fact bought the LCD but the resistive touch version. I've been waiting for the capacitive one to come so that I can have another try. Would there be much reprogramming needed to use the resistive touch version?

              Not at all, but you'll need to compile and flash the image yourself. Choose the XPT2046 chip as a touch screen controller and the ILI9488 for TFT in "idf.py menuconfig" and set the pins you want to use (take a look at above posts for the XPT2046 & the RepPanel repo for TFT related pins). After that check the datasheet of the display and connect the wires accordingly (You'll have two SPIs - TFT and touch). For the TFT related GPIOs you can use my config. Only the touch controller will be different.

              1 Reply Last reply Reply Quote 0
              • undefined
                pandaym @seeul8er
                last edited by 29 Jun 2020, 23:03

                @seeul8er said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                @pandaym Your config looks good now. Yes you got the commit thing right. Otherwise you'd get a compile error.
                Can you check the debug log please? You can do that by running:

                idf.py monitor
                

                The 5V & 3.3V thing is strange. I'll take a look at the data sheet later.

                I ran idf.py monitor, and it looks like something from the Matrix. Still haven't gotten anything on screen.

                fe1fe88a-7637-412d-816c-a683decf9ea6-image.png

                1 Reply Last reply Reply Quote 0
                • undefined
                  seeul8er
                  last edited by 30 Jun 2020, 06:24

                  @pandaym Check the docs on that. Further down it says changing the Main XTAL frequency might solve the output issue. Maybe autodetect does the trick.

                  undefined 1 Reply Last reply 30 Jun 2020, 08:55 Reply Quote 0
                  • undefined
                    pandaym @seeul8er
                    last edited by 30 Jun 2020, 08:55

                    @seeul8er said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                    @pandaym Check the docs on that. Further down it says changing the Main XTAL frequency might solve the output issue. Maybe autodetect does the trick.

                    Same thing regardless of XTAL frequency. I rebuilt and reflashed between attempting them. Then I disconnected all my wiring to run the ESP32 on its own, still no luck.

                    I then navigated to the examples and tried to build and flash the hello world example - this works fine:
                    6db6b32b-32b6-408c-9b78-e4e22fee3bc6-image.png

                    I went through the menuconfig on this vs. RepPanel, and found some differences in flash size and baud rate for monitor. I changed the Flash size to 2 like on Hello World, but then it would not flash because of insufficient space. I then tried changing idf.py monitor baud rate to 115200, while keeping 4mb flash size, and then I got monitor running:
                    1eabcc6f-8a05-41f7-ab9a-f163e6e03b35-image.png
                    81fef2eb-9a5f-4a81-92f4-c3a8c61a04d8-image.png

                    Shall I try and wire it back up? Also, what do you think I have to do about power? Still haven't figured whether I should need to connect both a 5V and a 3.3V cable from the ESP32 to the screen.

                    undefined 1 Reply Last reply 30 Jun 2020, 11:52 Reply Quote 0
                    • undefined
                      seeul8er @pandaym
                      last edited by seeul8er 30 Jun 2020, 11:52

                      @pandaym said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                      Shall I try and wire it back up? Also, what do you think I have to do about power? Still haven't figured whether I should need to connect both a 5V and a 3.3V cable from the ESP32 to the screen.

                      Try using only the 5V input. I am pretty sure you do not need both.
                      Looking at the logs I'd say that the flash and startup of RepPanel were a success. I'd go wire it up again. Can only be a GPIO config or wiring issue.
                      Does your display feature any switches/bridged pins? Read something about that in the forums.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        pandaym
                        last edited by 2 Jul 2020, 11:57

                        @seeul8er said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                        @pandaym said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                        Shall I try and wire it back up? Also, what do you think I have to do about power? Still haven't figured whether I should need to connect both a 5V and a 3.3V cable from the ESP32 to the screen.

                        Try using only the 5V input. I am pretty sure you do not need both.
                        Looking at the logs I'd say that the flash and startup of RepPanel were a success. I'd go wire it up again. Can only be a GPIO config or wiring issue.
                        Does your display feature any switches/bridged pins? Read something about that in the forums.

                        Still no luck unfortunately.

                        I tried wiring it up to a Raspberry, just to confirm that it works. And that worked fine.

                        Must be a wiring issue, but I cannot find any diagram for it anywhere, I have just been counting them out and using their table.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          whopping pochard
                          last edited by 2 Jul 2020, 13:37

                          @PCR Are plans still afoot to design a PCB for this project? I'd be interested... also thinking about the possibility of adding a small LiPo battery + charge controller to make it a dockable / portable interface!

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            pandaym
                            last edited by 2 Jul 2020, 20:53

                            I have managed to get the screen alive, but without any touch.
                            If I just set the touch panel to none in the menuconfig, then the screen comes alive. But if I actually configure the touch, it just blanks it out.

                            Any idea?

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              pandaym
                              last edited by 2 Jul 2020, 23:16

                              After a ton of work, it's finally alive:
                              https://www.youtube.com/watch?v=LbLHOhdqSiE

                              I had to set both display and touch to HSPI and change some GPIOs for some reason. But in the end it worked. The resisitive touch screen just isn't that great - should have gotten capacitive 😕

                              undefined littlehobbyshopundefined 2 Replies Last reply 11 Jul 2020, 21:28 Reply Quote 0
                              • PCRundefined
                                PCR
                                last edited by 3 Jul 2020, 09:31

                                @whopping-pochard

                                yes 😉 after my summer holiday!

                                Best

                                undefined 1 Reply Last reply 3 Jul 2020, 10:47 Reply Quote 1
                                • undefined
                                  whopping pochard @PCR
                                  last edited by 3 Jul 2020, 10:47

                                  @PCR 🙌🏻

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    seeul8er @pandaym
                                    last edited by 11 Jul 2020, 21:28

                                    @pandaym said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                                    After a ton of work, it's finally alive:
                                    https://www.youtube.com/watch?v=LbLHOhdqSiE

                                    I had to set both display and touch to HSPI and change some GPIOs for some reason. But in the end, it worked. The resistive touch screen just isn't that great - should have gotten capacitive 😕

                                    My replay is a bit delayed due to my vacation, but I am very glad to hear you got it working! Seems like the manufacturer needs to work on the docs a bot more.

                                    1 Reply Last reply Reply Quote 0
                                    • PCRundefined
                                      PCR
                                      last edited by 14 Jul 2020, 11:30

                                      @seeul8er Do you have a link where to get the display in Germany?

                                      undefined undefined 2 Replies Last reply 14 Jul 2020, 14:28 Reply Quote 0
                                      • undefined
                                        Carlo @PCR
                                        last edited by 14 Jul 2020, 14:28

                                        @PCR
                                        https://www.mouser.dk/ProductDetail/Seeed-Studio/308010014?qs=%2Fha2pyFadujFrWe34c%2Fp962d7Tsl7GBwUGpbcqXmB9KgWxdyEeTeaQ%3D%3D

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          seeul8er @PCR
                                          last edited by 15 Jul 2020, 05:45

                                          @PCR said in RepPanel - A DIY alternative to the PanelDue with WiFi support:

                                          @seeul8er Do you have a link where to get the display in Germany?

                                          If you want to use the compiled images you need to order it form Buydisplay. I do not know any German reseller. The link carlo postet seems to be a display that is lower in quality. Pandaym seemed to get it working but it was a bit tricky

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA