🤖Have you ever tried Chat.M5Stack.com before asking??😎
    M5Stack Community
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    UIFlow 2.0.0 firmware preview version

    Official Updates
    16
    34
    78.6k
    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.
    • aivarannamaaA
      aivarannamaa
      last edited by aivarannamaa

      This is great news! The old MicroPython in M5Stack firmware was the last remaining obstacle holding me from removing some ugly workarounds in Thonny's MicroPython backend.

      I also like the decision to use common firmware for all M5 devices and the fact that now one can use the same esptool arguments as for other ESP32 devices. This means Thonny users can use the built-in flashing dialog for M5 devices.

      According to my quick initial test Thonny is happy with the new firmware. I tried the original gray M5Stack and Atom Lite. With the gray M5Stack even the "paste" communication mode, which for some reason did't work with M5 earlier firmwares, now seems to work without problems. With Atom Lite it still causes problems, which I'll investigate later.

      I'm considering adding a separate "MicroPython (M5Stack)" back-end in the upcoming Thonny 4.0, but this is warranted if it came together with M5-specific MicroPython stub files (.pyi) for autocompletion and static analysis (one of the main theme of Thonny 4.0 will be improved autocompletion).

      This is where you could help me. Most likely I don't find time for compiling the stubs from the scarce documentation myself, but if you created the pyi-files describing M5-specific modules, I would include them in Thonny 4.0 under "MicroPython (M5Stack)" back-end.

      Keep up the good job!

      Aivar
      (the main author of Thonny IDE)

      ajb2k3A IAMLIUBOI 2 Replies Last reply Reply Quote 3
      • ajb2k3A
        ajb2k3 @aivarannamaa
        last edited by ajb2k3

        @aivarannamaa Hi @aivarannamaa nice to hear from a Thonny program moderator.

        Apparently there is a different in the programming commands between the main cores and the stamps in that the stamps have the firmware downloaded to 0x0000 where the cores have the firmware installed to 0x1000.

        @m5stack does this include the stamp pico and stamp C3?

        UIFlow, so easy an adult can learn it!
        If I don't know it, be patient!
        I've ether not learned it or am too drunk to remember it!
        Author of the WIP UIFlow Handbook!
        M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

        IAMLIUBOI 1 Reply Last reply Reply Quote 0
        • D
          Dario
          last edited by

          I found a bug in the firmaware when a programs draws lots of lines and the SD card is plugged in.
          This is my test program:

          import m5
          from m5 import lcd
          
          m5.begin()
          
          def lines_show(color):
              steps = 20
              w = lcd.width()
              h = lcd.height()
              ws = w / steps
              hs = h / steps
          
              lcd.startWrite()
          
              for s in range(steps):
                  x1 = int(ws * s)
                  x2 = w - 1
                  y1 = 0
                  y2 = int(hs * s)
                  lcd.drawLine(x1, y1, x2, y2, color)
                  
              for s in range(steps):
                  x1 = w - 1
                  y1 = int(hs * s)
                  x2 = w - 1 - int(ws * s)
                  y2 = h - 1
                  lcd.drawLine(x1, y1, x2, y2, color)
                  
              for s in range(steps):
                  x1 = w - 1 - int(ws * s)
                  y1 = h - 1
                  x2 = 0
                  y2 = h - 1 - int(hs * s)
                  lcd.drawLine(x1, y1, x2, y2, color)
                  
              for s in range(steps):
                  x1 = 0
                  y1 = h - 1 - int(hs * s)
                  x2 = int(ws * s)
                  y2 = 0
                  lcd.drawLine(x1, y1, x2, y2, color)
          
              lcd.endWrite()
          
          lcd.fillScreen(lcd.BLACK)
          lines_show(lcd.WHITE)
          lines_show(lcd.RED)
          lines_show(lcd.GREEN)
          lines_show(lcd.YELLOW)
          lines_show(lcd.BLUE)
          

          If no SD is plugged in the drawing is correct:

          0_1643567308517_20220130_191439_2.jpg

          If an SD card is inserted the output changes. The drawing appear with wrong colors and and some artifacts (horizontal lines):

          0_1643567326519_20220130_191548_2.jpg

          A IAMLIUBOI 2 Replies Last reply Reply Quote 1
          • D
            Dario @genvex
            last edited by

            @genvex
            +1 to ulab in the firmare

            1 Reply Last reply Reply Quote 1
            • A
              abron @Dario
              last edited by

              @dario The same issue with m2core

              1 Reply Last reply Reply Quote 0
              • L
                lmartu68
                last edited by

                @m5stack
                UIFLOW 1.9.1 is no longer uploading projects to my devices
                Im getting a red banner saying to check my api key or filename...
                This is absurd , I've opened a thread for this just now.![0_1643658726928_IMG_7501.jpg](Uploading 100%)
                PLEASE REPLY

                IAMLIUBOI 1 Reply Last reply Reply Quote 0
                • C
                  Costas
                  last edited by

                  Cannot import and begin m5 and also read the SD card, causes a reset with the following error:

                  assert failed: dma_chan_free spi_common.c:321 (spi_dma_chan_enabled & BIT(dma_chan))

                  Code:
                  import m5
                  from m5 import *
                  m5.begin()
                  from machine import SDCard
                  from machine import Pin
                  import os
                  try:
                  sd = SDCard(slot=3, miso=Pin(38), mosi=Pin(23), sck=Pin(18), cs=Pin(4))
                  sd.info()
                  os.mount(sd, '/sd')
                  print("SD card mounted at "/sd"")
                  except (KeyboardInterrupt, Exception) as e:
                  print('SD mount caught exception {} {}'.format(type(e).name, e))
                  pass

                  1 Reply Last reply Reply Quote 0
                  • P
                    Philip
                    last edited by

                    Is Uiflow site down?

                    1 Reply Last reply Reply Quote 0
                    • W
                      wkibler
                      last edited by

                      Same here, flow.m5stack.com is not fully loading. It loads from a cached version in another browser but then will not upload to any device. I've tried Core2 and a Grey with new and old firmware.

                      When I move the code to the desktop version only half of it loads. many of my functions are missing. I am 2 hours before a public showing and I need this up and running please help.

                      1 Reply Last reply Reply Quote 0
                      • felmueF
                        felmue
                        last edited by

                        @m5stack said in UIFlow 2.0.0 firmware preview version:

                        One firmware can be used on all M5STACK devices

                        Hello @m5stack

                        Trying the beta firmware on an M5Stamp C3 fails - I guess due to the risk architecture which probably requires a different bootloader. Or am I missing something?

                        When I flash to 0x1000 I get "Invalid image block, can't boot."
                        When I flash to 0x0000 I get "Invalid chip id. Expected 5 read 0. Bootloader for wrong chip?"

                        Thanks
                        Felix

                        GPIO translation table M5Stack / M5Core2
                        Information about various M5Stack products.
                        Code examples

                        IAMLIUBOI 1 Reply Last reply Reply Quote 0
                        • felmueF
                          felmue
                          last edited by felmue

                          Hello guys

                          using Thonny and M5AtomLite running UiFlow 2.0.0 beta firmware

                          MicroPython b084d9e-dirty on 2022-01-28; M5STACK with ESP32
                          

                          I tried to scan for WiFi networks with this code:

                          import network
                          nic = network.WLAN(network.STA_IF)
                          nic.active(True)
                          res = nic.scan()
                          print(res)
                          

                          but I get an error:

                          Traceback (most recent call last):
                            File "<stdin>", line 2, in <module>
                          RuntimeError: Wifi Unknown Error 0x0101
                          

                          Edit: when I install native ESP32 MicroPython firmware 1.17, e.g.

                          MicroPython v1.17 on 2021-09-02; ESP32 module with ESP32
                          

                          the above code works to scan WiFi networks. What am I missing?

                          Thanks
                          Felix

                          GPIO translation table M5Stack / M5Core2
                          Information about various M5Stack products.
                          Code examples

                          IAMLIUBOI 1 Reply Last reply Reply Quote 0
                          • IAMLIUBOI
                            IAMLIUBO @genvex
                            last edited by

                            @genvex

                            Hi, sorry for taking so long to reply, just finished the Chinese New Year holiday :)

                            ulab will support, but lvgl for micropython will take a lot of flash space, we may only support some devices (such as CORE2, TOUGH, etc.), because the early basic flash chip is only 4M in size.

                            This needs to be discussed, maybe we will launch a service to generate firmware online, you can choose which functions or drivers are packaged into the firmware.

                            Have a nice day.
                            IAMLIUBO

                            1 Reply Last reply Reply Quote 0
                            • IAMLIUBOI
                              IAMLIUBO @aivarannamaa
                              last edited by

                              @aivarannamaa

                              Hi, sorry for taking so long to reply, just finished the Chinese New Year holiday :)

                              This is great news! The old MicroPython in M5Stack firmware was the last remaining obstacle holding me from removing some ugly workarounds in Thonny's MicroPython backend.
                              According to my quick initial test Thonny is happy with the new firmware. I tried the original gray M5Stack and Atom Lite. With the gray M5Stack even the "paste" communication mode, which for some reason did't work with M5 earlier firmwares, now seems to work without problems. With Atom Lite it still causes problems, which I'll investigate later.

                              Thanks, the old MicroPython firmware for M5Stack(or UIFlow firmware) there are indeed some incompatibilities with micropython (such as paste code in repl mode).

                              I also like the decision to use common firmware for all M5 devices and the fact that now one can use the same esptool arguments as for other ESP32 devices. This means Thonny users can use the built-in flashing dialog for M5 devices.

                              Yes, one firmware that works for all M5 devices would be a good choice, but this would also be a limitation since the flash chip size is different for different devices, but we can guarantee that the esptool arguments will be the same (only For ESP32, if it is S2 or C3, may need to add some additional parameters).

                              I'm considering adding a separate "MicroPython (M5Stack)" back-end in the upcoming Thonny 4.0, but this is warranted if it came together with M5-specific MicroPython stub files (.pyi) for autocompletion and static analysis (one of the main theme of Thonny 4.0 will be improved autocompletion).
                              This is where you could help me. Most likely I don't find time for compiling the stubs from the scarce documentation myself, but if you created the pyi-files describing M5-specific modules, I would include them in Thonny 4.0 under "MicroPython (M5Stack)" back-end.

                              Wow, this is really good news.Thank you very much, this is currently a very early preview firmware, and some API modifications and adjustments may be made later, but I am very willing to keep in touch with you, I will try to process a pyi file, is mypy tool okay?

                              Have a nice day.
                              IAMLIUBO

                              1 Reply Last reply Reply Quote 0
                              • IAMLIUBOI
                                IAMLIUBO @ajb2k3
                                last edited by

                                @ajb2k3

                                Hi, sorry for taking so long to reply, just finished the Chinese New Year holiday :)

                                does this include the stamp pico and stamp C3?

                                I have not tested the STAMP series, but STAMP-C3 is not supported (the architecture is different and needs to be compiled separately)

                                Have a nice day.
                                IAMLIUBO

                                1 Reply Last reply Reply Quote 0
                                • IAMLIUBOI
                                  IAMLIUBO @Dario
                                  last edited by

                                  @dario

                                  Hi, sorry for taking so long to reply and thanks for report this bug, We will investigate this issue as soon as possible.

                                  Have a nice day.
                                  IAMLIUBO

                                  1 Reply Last reply Reply Quote 0
                                  • IAMLIUBOI
                                    IAMLIUBO @lmartu68
                                    last edited by

                                    Hi @lmartu68 @wkibler @Philip,

                                    Hi, sorry for taking so long to reply, just finished the Chinese New Year holiday :)

                                    We did have some issues with our servers during the holidays, sorry about that, it should be fixed now, sorry again.

                                    Have a nice day.
                                    IAMLIUBO

                                    1 Reply Last reply Reply Quote 0
                                    • IAMLIUBOI
                                      IAMLIUBO @felmue
                                      last edited by

                                      @felmue

                                      Hi, sorry for taking so long to reply.

                                      Trying the beta firmware on an M5Stamp C3 fails - I guess due to the risk architecture which probably requires a different bootloader. Or am I missing something?

                                      I'm very sorry, it's my problem, I didn't say that this firmware does not support C3 chip, it currently supports ESP32, because of the different architecture, it is impossible to make a firmware support esp32, esp32-c3, esp32-s2, esp32-s3 at the same time.

                                      1 Reply Last reply Reply Quote 0
                                      • ajb2k3A
                                        ajb2k3
                                        last edited by

                                        @IAMLIUBO I have been recommending a firmware builder for a while because of the issue you had with firmware size.

                                        Please, please, please me need a stand alone server that can be run on a raspberry pi!

                                        UIFlow, so easy an adult can learn it!
                                        If I don't know it, be patient!
                                        I've ether not learned it or am too drunk to remember it!
                                        Author of the WIP UIFlow Handbook!
                                        M5Black, Go, Stick, Core2, and so much more it cant be fit in here!

                                        IAMLIUBOI 1 Reply Last reply Reply Quote 0
                                        • IAMLIUBOI
                                          IAMLIUBO @felmue
                                          last edited by

                                          @felmue said in UIFlow 2.0.0 firmware preview version:

                                          Traceback (most recent call last):
                                            File "<stdin>", line 2, in <module>
                                          RuntimeError: Wifi Unknown Error 0x0101
                                          

                                          I tried it, there is indeed a bug, devices with psram might work, try it and we'll fix it.

                                          P.S.

                                          log:

                                          >>> wifi = network.WLAN(network.STA_IF)
                                          I (28862) wifi:wifi driver task: 3ffd3600, prio:23, stack:6656, core=0
                                          I (28862) system_api: Base MAC address is not set
                                          I (28862) system_api: read default base MAC address from EFUSE
                                          I (28872) wifi:wifi firmware version: 0d44bbe
                                          I (28872) wifi:wifi certification version: v7.0
                                          I (28872) wifi:config NVS flash: enabled
                                          I (28872) wifi:config nano formating: disabled
                                          I (28882) wifi:Init data frame dynamic rx buffer num: 32
                                          I (28882) wifi:Init management frame dynamic rx buffer num: 32
                                          I (28892) wifi:Init management short buffer num: 32
                                          I (28892) wifi:Init dynamic tx buffer num: 32
                                          I (28902) wifi:Init tx cache buffer num: 32
                                          I (28902) wifi:Init static rx buffer size: 1600
                                          W (28912) wifi:malloc buffer fail
                                          I (28912) wifi:Init static rx buffer num: 3
                                          I (28912) wifi:Init dynamic rx buffer num: 32
                                          E (28922) wifi:Expected to init 10 rx buffer, actual is 3
                                          I (28922) wifi:Deinit lldesc rx mblock:0
                                          I (28932) wifi:Deinit lldesc rx mblock:0
                                          I (28932) wifi:Deinit lldesc rx mblock:0
                                          I (28932) wifi:Deinit lldesc rx mblock:0
                                          I (28952) wifi_init: rx ba win: 6
                                          I (28952) wifi_init: tcpip mbox: 32
                                          I (28952) wifi_init: udp mbox: 6
                                          I (28952) wifi_init: tcp mbox: 6
                                          I (28952) wifi_init: tcp tx win: 5744
                                          I (28962) wifi_init: tcp rx win: 5744
                                          I (28962) wifi_init: tcp mss: 1440
                                          Traceback (most recent call last):
                                            File "<stdin>", line 1, in <module>
                                          RuntimeError: Wifi Unknown Error 0x0101
                                          

                                          Thanks for report this :)

                                          Have a nice day.
                                          IAMLIUBO

                                          1 Reply Last reply Reply Quote 0
                                          • IAMLIUBOI
                                            IAMLIUBO @ajb2k3
                                            last edited by

                                            @ajb2k3

                                            @IAMLIUBO I have been recommending a firmware builder for a while because of the issue you had with firmware size.
                                            Please, please, please me need a stand alone server that can be run on a raspberry pi!

                                            This is a little lower priority, there are still some important things to deal with, we will release a preview version as soon as possible (online firmware function selection and generation).

                                            Thanks for your recommend and help us be better.

                                            Have a nice day.
                                            IAMLIUBO

                                            ajb2k3A 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post