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



  • @britontour Have you installed the UIFlow2 firmware to the CoreS3 and is the screen of the CoreS3 showing that its connected to the server?



  • @ajb2k3 said in UiFlow 2.0 discuss(how-to, bug, feature request or sometings):

    @britontour Have you installed the UIFlow2 firmware to the CoreS3 and is the screen of the CoreS3 showing that its connected to the server?

    This is the info on the S3. UIFLOW2 is loaded, but I notice that it says Private, but my connection in the Web interface is Public.

    0_1710186183622_20240311_143623.jpg



  • @robski I just did, it seemed to work but it blocks once again. The thing is I have made a little library on this thing which contains lots of images, and I have to reload them one by one after Burning. There are currently probably 60 images in 70x70 to send and some more in other dimensions, and I'm wondering if that could be the problem, just the device not supporting that much, even though that seems unlikely since it doesn't use flash memory or anything...
    Which leads me to a question ; Is there a way, as there is for .json files, to just use images stored in the SD card directly ? Didn't find a way yet, but it's really long to put back all the images after every new updates :/



  • @britontour Private isn't to do with the web connection, it to do with the device status in UIFLow 2.
    Because the device cant contact the server it can only be used over WebUSB in Chrome.
    BTW don't show you device MAC.



  • @ajb2k3 OK, if that is not the problem. do you know what could be? Should the user account be something other than none? Do you know what the red X means?
    What steps should I follow to connect to the server?



  • @britontour said in UiFlow 2.0 discuss(how-to, bug, feature request or sometings):

    @ajb2k3 OK, if that is not the problem. do you know what could be? Should the user account be something other than none? Do you know what the red X means?
    What steps should I follow to connect to the server?

    The red X just means it was unable to communicate with the default server.



  • @britontour You may wish to completely start over with the pairing process.

    1. Put your device in programming mode and use m5burner to do an 'erase'
    2. In uiflow2, click the button to select a device to connect to, and hover the mouse over your device icon. In the top right of that icon (when hovered over) should be a square you can click to edit the device info. In there should be an 'unregister device' button to fully delete it.
    3. Back in m5burner, reflash uiflow2 to the device and configure for your wifi.

    Be sure to keep the 'public' switch on this time.
    When the flash is done, keep the usb cable attached, hit reset on your device to get into the uiflow menu, and open uiflow2 in your browser again.
    Click the button to select a device. In a few seconds it should show in the 'public' list with a green dot. Be sure to select it here and not under the usb devices list. Unplug the device from USB.

    You should now be able to turn the device on/off and the device button in uiflow2 will go green/orange to reflect it is paired properly.



  • Back to my problem, with a potential solution which i need help about ; My dad wondered if, instead of downloading the images inside the Core's memory, we could just use them from the SD card with a block "Execute mpy code", in which i type : "ImageTest.setImage("sd/AutresImages/Start.jpg")", which should set, theorically, Start.jpg as my image, since it's contained in the file "AutresImages" in the sd card, right ?
    But it doesn't work. No errors or stuff, it just doesn't :/
    Anyone has an idea ?



  • @waittherack said in UiFlow 2.0 discuss(how-to, bug, feature request or sometings):

    Back to my problem, with a potential solution which i need help about ; My dad wondered if, instead of downloading the images inside the Core's memory, we could just use them from the SD card with a block "Execute mpy code", in which i type : "ImageTest.setImage("sd/AutresImages/Start.jpg")", which should set, theorically, Start.jpg as my image, since it's contained in the file "AutresImages" in the sd card, right ?
    But it doesn't work. No errors or stuff, it just doesn't :/
    Anyone has an idea ?

    check this re: size/name/ etc limits

    sd card image



  • @waittherack Make sure to also add an "execute (eg import)" block to with:
    from hardware import sdcard

    I also had the FileIO option under Software turned on, but not sure if that's needed just to reference a file by path.



  • I'm trying to build a multi-character string from keystrokes but the only way I see is with ByteArray. However ByteArrary doesn't hold strings so I used ENCODE and DECODE as shown in this test code. Maybe this is not how encode and decode work?![alt text](0_1710453182467_Screenshot 2024-03-14 at 5.43.07 PM.png image url)0_1710453189687_Screenshot 2024-03-14 at 5.43.56 PM.png



  • @iamliubo Feature request for UIFlow 2.0.2 on Cardputer

    On the main menu, can the characters on the arrow key buttons also be assigned to perform navigation?
    IE so pressing right (Function + arrow) or pressing forward-slash (the same button without holding Function) both navigate right, and the same for left / comma?
    It would also be nice to have that functionality in the App.list menu with the up/down arrows (semi-colon and period respectively)

    This way screens that only respond to arrow keys can be navigated without having to hold the Function key.

    (Note: The new behavior makes perfect sense for screens using both cursor navigation as well as text-input, eg the wifi settings, where holding Function for navigation should remain required)



  • @bigal2301 Use a list instead of bytearray to hold the characters, then use "make text from list" to assign the list of characters to your string variable



  • @dissy said in UiFlow 2.0 discuss(how-to, bug, feature request or sometings):

    @britontour You may wish to completely start over with the pairing process.

    1. Put your device in programming mode and use m5burner to do an 'erase'
    2. In uiflow2, click the button to select a device to connect to, and hover the mouse over your device icon. In the top right of that icon (when hovered over) should be a square you can click to edit the device info. In there should be an 'unregister device' button to fully delete it.
    3. Back in m5burner, reflash uiflow2 to the device and configure for your wifi.

    I'm stuck at step 3. I connect to the device in WebBurner (you say m5Burner, but that doesn't support S3), then click on "Configure" and enter the wifi credentials. When I click Confirm, I get an error message:
    Error
    Request failed. Check the network and try again!

    Looking in the developer tab of Chrome, there is a 404 error attempting to download from https://uiflow2.m5stack.com/m5stack/api/v2/device/downloadBin

    Is this a server issue, or a problem with my connection?



  • @britontour I found the m5burner that supports S3. I had an older version for my original Core, and didn't realize there was a new version.
    It took a couple of tries, but I managed to bind and reflash the S3. I confirmed that the PUBLIC switch was active before flashing. Once complete, my screen still shows is at a PRIVATE device, and uiflow2 still shows a red dot next to it in the public list. The device info also shows it as PUBLIC. uiflow2 will not connect to it.



  • @britontour If m5burner registered the device into uiflow, and it shows having a MAC and Token value (partially masked out), then it should be re-paired properly.
    I'm unsure why your device can not connect to the server to report itself online.
    I've just verified the process still works (I don't have a core s3 but used a cardputer which is stamp s3 based)

    I did just discover a bug in the 2.0.2 "develop" screen. It may be cardputer specific, but it incorrectly displays "private" in both modes. It's just a display bug though, it isn't effecting my connection



  • @dissy I see "PRIVATE" on the Develop screen of the S3, even though I configured it as Public. This is what I see in uiflow2 GUI when I click on the device button.

    0_1710956225054_2024-03-20 12_36_23-.png

    0_1710955774479_2024-03-20 12_28_31-UIFlow 2.0.png

    What server connection does it need? I may need to get IP or ports whitelisted at my office.



  • My only way to connect to my S3 is USB cable. I click on the run button, and a web terminal window appears. I select the COM port and press connect. Press the play button at the top and I see my python code downloading. at the end , I get an error message (see below). If the line number is referring to my python code, I don't see what the problem is.

    Line 68: rectOrigin = None
    Line 102: if lengthTargetCycles >= 3:
    Line 103: txtTargetCycles3.setText(str(listTargetCycles[2]))

    ===
    Traceback (most recent call last):
    File "<stdin>", line 68
    SyntaxError: invalid syntax

    Occasionally, the line number changes.

    ===
    Traceback (most recent call last):
    File "<stdin>", line 102
    SyntaxError: invalid syntax



  • @britontour said in UiFlow 2.0 discuss(how-to, bug, feature request or sometings):

    I see "PRIVATE" on the Develop screen of the S3, even though I configured it as Public.

    Before it connects it will read "private" in yellow, and show "user account" as "none"
    After it successfully connects this will change and should show "public" in green and your email address in "user account"

    What server connection does it need? I may need to get IP or ports whitelisted at my office.

    https (port 443) to host uiflow2.m5stack.com



  • My IT guy helped me work out the issue with the connection to the server. Access to ntp.aliyun.com was blocked. I changed it to our local gateway ntp server and I can connect to the S3 successfully over wifi!! Onto the next bug!!