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

    Paneldue 7" with esp32/raspberry pi

    Scheduled Pinned Locked Moved
    PanelDue
    3
    19
    755
    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.
    • dc42undefined
      dc42 administrators @Candy
      last edited by

      @Candy yes, you can use Eclipse IDE to make a custom binary. I suggest you retain the startup code, hardware interface code and libraries from the existing project to save you having to write those parts again.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      Candyundefined 1 Reply Last reply Reply Quote 1
      • Candyundefined
        Candy @dc42
        last edited by

        @dc42 Thanks for the reply. I'll give this a try and get back to you

        Candyundefined 1 Reply Last reply Reply Quote 0
        • Candyundefined
          Candy @Candy
          last edited by

          @Candy Hey I tried using Eclipse IDE. I followed the steps given in the projects folder in github. I installed arm-none-eabi-gcc 10.3-2021.10, eclipse ide for embedded c/c++, edited the PATH in system and eclipse to look for make and arm-none-eabi-gcc. When I build the project, I get the error which I have attached in the photo. Is this an error due to any different versions installed? Have you got this error?Screenshot 2025-03-25 125252.png

          dc42undefined 1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @Candy
            last edited by

            @Candy the gcc version you are using is too old. Try the latest one from https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            Candyundefined 2 Replies Last reply Reply Quote 0
            • Candyundefined
              Candy @dc42
              last edited by

              @dc42 Wow that worked. Thanks for the help

              1 Reply Last reply Reply Quote 0
              • Candyundefined
                Candy @dc42
                last edited by

                @dc42 That worked great. Right now, I built the project and got the .elf file and converted into .bin file and used Bossa to upload the .bin file. Can you give me a heads up on how to use eclipse for coding the display and where to start as the ide feels totally new to me.

                dc42undefined 1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators @Candy
                  last edited by

                  @Candy you'll have to do the programming yourself, but I can give you a general guide to what the existing modules do:

                  • Function main() in file PanelDueFirmware.cpp contains the initialisation, followed by a forever-loop that's similar in concept to the Arduino loop() function. It checks for data received from the serial port, checks for input from the touch panel, and updated the display as needed
                  • The Hardware folder contains files and functions that interface to the screen, touch panel, piezo buzzer and serial port. You'll probably want to mostly leave those alone, at least to start with. The SerialIO.cpp file parses received characters as JSON objects because that is the format in which Duets send data to PanelDue.
                  • The UI folder defines the user interface. Within that, Display.cpp defines a number of types of object that can be displayed, for example buttons and text fields. UserInterface.cpp defines how the user interface responds to received data and to presses on the touch panel.

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  Candyundefined 1 Reply Last reply Reply Quote 0
                  • Candyundefined
                    Candy @dc42
                    last edited by

                    @dc42 So, in order to display simple text like "Hello" or display an image, will editing just the main() file work? In case I need custom buttons/graphics, I should be editing the UI folder

                    dc42undefined 1 Reply Last reply Reply Quote 0
                    • dc42undefined
                      dc42 administrators @Candy
                      last edited by

                      @Candy yes you could display simple text or images by editing the main() function in PanelDueFirmware.cpp and directly calling functions in the LCD module in the hardware folder.

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      Candyundefined 1 Reply Last reply Reply Quote 0
                      • Candyundefined
                        Candy @dc42
                        last edited by

                        @dc42 Nice. Thanks for the help. This means a lot

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