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

    Phi: Open-source, Wi-Fi + Ethernet, RRF 3D Printer Controller

    Scheduled Pinned Locked Moved
    Other control boards
    7
    24
    1.7k
    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.
    • zaptaundefined
      zapta @likhalabs
      last edited by

      @likhalabs, can it use the Duet Mini5 binaries or will you release your own binaries for RRF and Klipper?

      likhalabsundefined 1 Reply Last reply Reply Quote 1
      • likhalabsundefined
        likhalabs @zapta
        last edited by

        @zapta No, it can't use Duet 3 Mini 5+ binaries, so I will be releasing Phi's own RRF binaries.

        RepRapFirmware will be the 'official' firmware, so I will not be maintaining a Klipper port and releasing Klipper binaries. However, there is nothing preventing members of the community from porting other firmware like Marlin or Klipper to Phi, as like I've mentioned, full schematic + PCB layout will be released.

        likhalabsundefined 1 Reply Last reply Reply Quote 0
        • likhalabsundefined
          likhalabs @likhalabs
          last edited by likhalabs

          The campaign is live! Please check it out if you're interested.

          1 Reply Last reply Reply Quote 1
          • likhalabsundefined
            likhalabs
            last edited by

            I've been trying to improve upload speed for Phi. Finally broke the 1MiB/s barrier!

            upload.gif

            There's still some room for improvement, though.

            oliofundefined jay_s_ukundefined 2 Replies Last reply Reply Quote 1
            • oliofundefined
              oliof @likhalabs
              last edited by

              @likhalabs is that on Ethernet or Wifi?

              <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

              likhalabsundefined 1 Reply Last reply Reply Quote 0
              • jay_s_ukundefined
                jay_s_uk @likhalabs
                last edited by

                @likhalabs the STM port gets 1.6Mib/s with an ESP32

                Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                likhalabsundefined 1 Reply Last reply Reply Quote 1
                • botundefined
                  bot
                  last edited by

                  When can we have one with 6 steppers? 🙂

                  *not actually a robot

                  likhalabsundefined 1 Reply Last reply Reply Quote 0
                  • likhalabsundefined
                    likhalabs @jay_s_uk
                    last edited by

                    @jay_s_uk Usually, small 'b' denotes bits and big 'B' denotes bytes. Just to clarify, is it bits or bytes in the case of the STM32 port?

                    jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                    • likhalabsundefined
                      likhalabs @oliof
                      last edited by likhalabs

                      @oliof Hi oliof, this is on Wi-Fi. Ethernet is a little slower, around 900 KiB/s - 1 MiB/s so far. Ethernet is slower because it's not native (ESP32-S3 does not have an Ethernet peripheral, is using a W5500 Ethernet <-> SPI chip).

                      1 Reply Last reply Reply Quote 0
                      • likhalabsundefined
                        likhalabs @bot
                        last edited by likhalabs

                        @bot Unfortunately since I'm a one-man team, it will be after the current board gets off the ground. Though it's possible to add https://duet3d.dozuki.com/Wiki/Duet_3_Expansion_Mini_2plus for a total of 7 steppers (like the Duet 3 Mini 5+).

                        botundefined 1 Reply Last reply Reply Quote 0
                        • jay_s_ukundefined
                          jay_s_uk @likhalabs
                          last edited by

                          @likhalabs sorry. B not b.
                          So 1.6MiB/s

                          Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                          likhalabsundefined 1 Reply Last reply Reply Quote 0
                          • likhalabsundefined
                            likhalabs @jay_s_uk
                            last edited by likhalabs

                            @jay_s_uk Thanks for the clarification! Looks like I have a new benchmark. (There still some room for improvement, like I said). I have an SKR pro and lots of ESP32's lying around to test and see how its achieving that speeds.

                            In theory at least, I should be able to achieve faster speeds since the data does not have to travel between microcontrollers through an SPI link (same theory why ethernet is slower as mentioned in the reply to @oliof).

                            1 Reply Last reply Reply Quote 0
                            • botundefined
                              bot @likhalabs
                              last edited by

                              @likhalabs fair enough. I love the path you're on so I'm excited to see you progress.

                              *not actually a robot

                              o_lampeundefined 1 Reply Last reply Reply Quote 0
                              • o_lampeundefined
                                o_lampe @bot
                                last edited by

                                @bot said in Phi: Open-source, Wi-Fi + Ethernet, RRF 3D Printer Controller:

                                I love the path you're on so I'm excited to see you progress.

                                When the thread started I thought it was a good idea to have an ESP32 as RasPi replacement. The RasPi4 felt like 1000x overkill for the few tasks it had to do as SBC.
                                But the task list will grow in the future and I'm not sure how much headroom there is for the ESP32?
                                Could we program post pocessing scripts for it? I know there's MicroPython for ESP32, would it run on your environment?

                                @likhalabs If I'd be you, I'd look for Linux driven alternatives for new projects. (eg. header for RasPi Zero 2W)

                                likhalabsundefined 1 Reply Last reply Reply Quote 0
                                • likhalabsundefined
                                  likhalabs @o_lampe
                                  last edited by

                                  @o_lampe Although the ESP32 is much less powerful than the Pi's, it still packs some grunt. People have been running image and audio processing on it, after all.

                                  It's hard to quantify how much headroom there is for ESP32 (one thing that is sure is that it's much less than the Pi). However, to get some idea, the current 'heaviest' workload would be networking, particularly uploading a G-code file. It hovers around 8% of CPU time when uploading a file.

                                  Anything super computationally expensive would be out of the question for the ESP32, I think. One example I can think of is on-device 'spaghetti detection'. However, even the RasPi4 is not recommended for that.

                                  Could we program post pocessing scripts for it? I know there's MicroPython for ESP32, would it run on your environment?

                                  I mean, there is a MicroPython/CircuitPython port to the ESP32, but it would need to be integrated into RepRapFirmware. Again, anything super computationally expensive might be out of the question. But for simple custom manipulation of pins & peripherals, it could conceivably run. For example, sending out a custom color animation on Neopixels when a print is finished.

                                  o_lampeundefined 1 Reply Last reply Reply Quote 0
                                  • o_lampeundefined
                                    o_lampe @likhalabs
                                    last edited by

                                    @likhalabs said in Phi: Open-source, Wi-Fi + Ethernet, RRF 3D Printer Controller:

                                    It's hard to quantify how much headroom there is for ESP32 (one thing that is sure is that it's much less than the Pi). However, to get some idea, the current 'heaviest' workload would be networking, particularly uploading a G-code file. It hovers around 8% of CPU time when uploading a file.

                                    So the bottleneck is not the CPU. That's already good news. Then there's enough CPU-time left to do simple post processing on gcode files.
                                    How much RAM/flash is left over on the ESP32, when running RRF?

                                    likhalabsundefined 1 Reply Last reply Reply Quote 0
                                    • likhalabsundefined
                                      likhalabs @o_lampe
                                      last edited by

                                      @o_lampe So for the RAM, I currently opted to use any free RAM for network buffers. However, ESP32-S3 supports external PSRAM up to 8MB.

                                      The firmware is about 1.5MB. Phi has a module with 8MB flash.

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