UiFlow 2.0 discuss(how-to, bug, feature request or sometings)



  • @erich

    Here's the FCC submission for M5StickC Plus 2 include internal and external photos:

    https://apps.fcc.gov/eas/GetApplicationAttachment.html?id=6654502

    Apparent differences to M5StickC Plus 1.1:

    • AXP192 is removed as it is end-of-line
    • Magnet is now one small disc instead of two small bars
    • battery lead is socketed
    • now one board instead of two
    • IC is ESP32-PICO-V3-02 instead of ESP32-PICO-D4 (now doesn't support external PSRAM, not relevant though). PICO-V3 has extra pin 20 for internal use.
    • 200mAh battery instead of 120mAh
    • Not clear where the buzzer is or whether there is no buzzer - not on the inside back as per M5 Stick C Plus.
    • The rear sticker shows a few differences in internal GPIO pin allocations.

    The twitter post @gavin67890 linked to says its been delayed due to some further changes though.



  • @bazman thanks!



  • Hi Everyone,

    I am using an M5Stack CoreS3 and UIFlow2 Alpha-27.

    I am new to ESP32 and M5Stack, so not sure if this is a bug in UIFlow2, MicroPython, or it is expected behavior and my understanding of the way it should work is incorrect... :-)

    I am trying to update labels with values on a regular basis, the label is in front of a rectangle and the background of the label is the same color as the foreground of the rectangle.
    However, it seems that when I update the label text, and the length of the text is smaller than the previous length, it leaves an empty space at the back of the label with the background color. I.e., it does not re-render the 'missing part' of the rectangle.
    I could redraw the rectangle after the update, but then the rectangle will overwrite the text.
    I could redraw the rectangle and then rewrite the text, but if the value has not changed, it will not write it on the screen and it remains hidden.
    The only way to do it is to make the label text empty, draw the rectangle, and then fill the label text with the new value.
    That seems like a lot of work just to update a single text label, it also sometimes introduces a flicker (I have quite a number of labels to update)

    Is this a bug ? And is there any way around this (without having to clear and redraw all the screen elements one-by-one)?

    Here is a minimum program to show the issue:
    0_1699019446284_Screenshot 2023-11-03 214924.png

    And the output:
    0_1699021772200_Screenshot 2023-11-03 222854.png

    Thanks

    Richard



  • @iamliubo m5dial is not fully suported missing NFC ... Also i have nice IR python script for raw codes (without decoding) is there a option to make a module from it...

    I spend some time reading comments above... and started to think i made mistake trying to use m5stack devices ...



  • Hello guys

    Hardware: M5AtomS3 core, PaHUB unit and EXTIO2 unit (connected to channel 5 of the PaHUB).
    Firmware: UIFlow 2.0.0 Alpha-28

    The UIFlow block Init extio2_0 generates the following Micropython code:

    extio2_0 = EXTIO2Unit(PAHUB(i2c=i2c0, channel=5))
    

    which results in a runtime error: NameError: name 'PAHUB' isn't defined.

    The correct (for me working) code is:

    extio2_0 = EXTIO2Unit(PAHUBUnit(i2c=i2c0, channel=5))
    

    e.g. instead of PAHUB it shoud be PAHUBUnit.

    Thanks
    Felix



  • Hi.
    As @felmue mentioned in the previous post uiflow is generating wrong code for the pahub. When can we expect this to be corrected? I guess uiflow has the problem?

    Best Regards
    JOn Magnus Dullerud



  • The M5Stack Core S3 is now released for 6 Months and still the uiflow 2.0 is in beta phase and supports 2 Mopdules only.
    I'm asking me for what the Core S3 can be used ?.

    In the M5 Burner, there is no UI Flow 1.x for the Core S3!

    So at the moment the Core S3 has only limited functionality with the UI Flowe in alpha version.

    Is this the quality of M5 Stack ?



  • hardware: core 2 for aws
    Firmware: UIFlow 2.0.0 Alpha-28

    When I choose run once my .py file in APP.LIST(or APP.RUN). It always said some modules not define.
    Choose Run always would work though.

    I think is some problems about import module
    because I tried "M5.Widgets.fillScreen(0x222222)" instead " Widgets.fillScreen(0x222222)", and it works.

    My imports have two of these:
    import M5
    from M5 import *



  • @sgu I too have been worried about this, as I jumped in feet-first to m5stack and figured the lastest and greatest devices would also have the best support. Its silly that something as trivial as displaying the current battery level requires code execution blocks. I had to order an older device just so I can test out some of the modules and sensor units I purchased. Think I'm just gonna give up on UIFLow and invest my time in Arduino IDE.



  • @j_doe I need help with this one. Cannot get any UART program to work on CoreS3 with UIFlow2. I am using CoreS3 as a co-processor to a Raspberry Pi using serial coms but my initial unit testing is being done on a Windows PC working with Putty. Here is the program:
    0_1702532923351_e93d6646-ded3-404e-a8ca-103df5cf591a-image.png

    What I want is an equivalent program to this which uses an original Core computer. It is based on UIFlow 1 (V12.1.9)
    0_1702532662160_097763d1-bfb7-4345-a53b-097dfd4437dd-image.png

    I am using the latest firmware & on-line UIFlow IDEs (Alpha-28)

    On the Core program I had to decode before I could access text from the UART - might need a similar solution for UIFlow2?
    On the UIFlow1 program I accessed the Core UART using pins TX:1 & RX:3. I am guessing that the equivalent pins for CoreS3 are TX:43 & RX:44?



  • What is the status of adding features to UIFlow2? I recently bought the core, core2, and core3, as well as the M5Paper. I am having a blast with blockly for the core, but most of the blockly code is missing in UIFlow2. For example, getting the current battery status is missing. There isn't an option for power in hardware, like there is in UIFlow. I also would like to request you do not change the GPIO again. For me half of the draw to the M5stack devices is that the modules and sensors work out of the box. Having modules that no longer work with the core3 due to a different GPIO pinout sucks. Keep up the good work and please take these as suggestions and not complaints. I love your product, I just want more software support in the form of UIFlow2. Thanks!



  • @dsrc12 RX: G18/TX: G17



  • Is something wrong with UIFlow2 website right now? I cannot get my CoreS3 or my Atom S3 to utilize any of my sensors. Theyr'e all saying "Unit not defined" in the console as soon as I add any of them to a project.



  • @jdbaluch I had the same problem with uiFlow2 + AtomS3. Check the code window and see if any imports are missing, particularly the unit import. Should be something like:

    import os, sys, io
    import M5
    from M5 import *
    from hardware import *
    from unit import *
    

    On mine, the unit import was missing. I tried

    • Switch to various different units
    • Fresh the website completely (F5, clear cookies, close tabs etc.).
    • Re-flash the unit with m5burner

    Somewhere in there, the unit import line decided to show up and then everything started working. ¯\(ツ)



  • @iamliubo

    6 Months later. Just flashed the Core S3 with the newest UiFlow 2.0 Alpha and still the modules are not integrated!
    Do you really want to sell the Core S3 ? without complete software support, the use cases for the Core S3 is very, very limited.



  • is the UIFlow2.0 desktop edition available now?



  • wlan config misses reading of essid. Could you add this?

    Also would be very cool to have a way, where Block editor keeps working when only minor changes were made to the code.
    (when adjusting one variable cuz its not yet available, it would be awesome, if I could still keep using the block editor)

    0_1705239720587_c717e181-910d-4ccc-a920-5d8bb6b859a2-image.png



  • Hello @li0than

    you could use the Execute mpy code block for stuff that is not (yet) available.

    Thanks
    Felix



  • @iamliubo , When using a m5 dial it would be really nice to center text in a label in an easy fashion.



  • I am building a distributed smart control system for my sail boat using 6 m5Dials one in each cabin. They show all important boat data such as depth and wind speed and heading from an MQTT server running on a raspberry pi the also show alerts and allow control of local lighting.

    I am having a lot of problems with UI Flow 2.

    All I have working so far is lighting with dimming using the dial and night lighting (RED lights) working.

    I need to get RFID working to login crew/family members so the m5Dials alerts them to their watches - I get an error when I put in any RFID blocks except "RFI init built in" I have an "if" in my main loop that calls a function if a new card or RFID phone is detected the function currently only reads the card ID converts it to a string and shows it on a label

    My other problem is connecting into the MTTQ server this currently always hangs the device and I need to power cycle it to get any responses

    I have MQTT code working on my m5 coreInk in uiFlow 1 which I am using for remote anchor control

    I have plans to open source the project and I think it will be very useful for other sailers

    I also want to do some YouTube system build videos but they will only currently show it not working!

    I think I am expecting too much from alpha software.

    Any suggestions or advice are welcome.