🤖Have you ever tried Chat.M5Stack.com before asking??😎

Subcategories

  • Lessons and Guides for Uiflow

    125 Topics
    434 Posts
    A
    Hi, I'm a new user of M5stack products, having got an M5StickC Plus2 recently. It's a nice device, but the documentation isn't always accurate which makes learning how to use it a slow process. I tried to use the example for drawing a raw buffer to the screen here But it resulted in different garbled output each time and not a green rectangle. It seems that the len parameter is expecting 16-bit entries in the buffer so needs to be halved. Here's the code that works on my device (note the //2 for len parameter): width, height = 40, 30 green565 = 0x07E0 raw_buf = bytearray(width * height * 2) for i in range(width * height): raw_buf[2*i] = (green565 >> 8) & 0xFF raw_buf[2*i+1] = green565 & 0xFF Display.drawRawBuf(raw_buf, 100, 100, width, height, len(raw_buf)//2, swap=False) Hopefully this will help others and eventually get changed in the docs - assuming it's the same for all UIFlow2 supported devices? If anybody knows a fix to make it work properly for lower than 16bit depth screens so I can draw a raw buffer to a 1-bit canvas properly, please let me know!
  • 212 Topics
    790 Posts
    Y
    Hello I faced problem about digi-clock write charcter block. Problem is 3rd and 4th digit can not display with this block. I created below flow. Then Digi-Clock displays "0.1.:" for 1st and 2nd digit and colon. [image: 1778319992199-1aae8860-52c1-4c60-9097-5668ed98e2ee-image.jpeg] Howerver, index of write character block can be set only 0 to 4. Therefore it could not display 3rd and 4th digit. I think this index shoud be set 0 to 8. It doesn't work if index forced set to 5 to 8. (It was same behavior as 0 if index is set to 5.) I think the index for DigiClockUnit.set_char should be 0–8, not 0–4. https://uiflow-micropython.readthedocs.io/en/latest/unit/digi_clock.html Could you please kindly consider to fix this issue? (Or let me know please if any other solution available.) #Write raw data and write string blocks are works correctly. Using device -AtomS3 lite -Digi-clock UIFlow version:2.4.4 FW version:2.2.5 OS:Windows11 Thank you in advance Best Regards Yamada
  • 11 Topics
    33 Posts
    A
    @jeanfabre On web, just choice block type. [image: 1729260517944-86b7a25c93207d9a32e5b33471bb1f0.png] For code, add return description like this: def func(self) -> int: return 0
  • Core 2 Device and UIFlow updates using Wifi with a running app?

    3
    0 Votes
    3 Posts
    5k Views
    F
    @felmue Thanks for the detailed instructions. Now able to handle it.
  • A little help to understand the basics of using I2C with UIFlow

    6
    0 Votes
    6 Posts
    11k Views
    ajb2k3A
    From what Little I understand ------ I2C devices connect to Port A, Make sure the SDA and SCL pins of the new device yo want to use are connected to the correct pins on Port A (White&Yellow wires) Next in UIFlow use:[image: 1636528385624-screenshot-2021-11-10-at-07.12.50.png] To scan and list I2C devices connected to the ESP32. This list returns values in decimal and so you need to read the devices data sheet to find the hex address and convert the returned decimal list into hex values. Next you need to read the data sheet to find out how to initialise the device and then how to read the device. Once you have a code that returns the data that you need, you need to convert it to a library or driver, download the driver to the esp32 and then create custom blocks in the custom block creator[image: 1636528678054-screenshot-2021-11-10-at-07.17.15.png] [image: 1636528690053-screenshot-2021-11-10-at-07.17.46-resized.png] That will allow you new driver/library to work in uiflow.
  • Create new unit from existing unit?

    5
    0 Votes
    5 Posts
    5k Views
    B
    @ajb2k3 Thank you.
  • MQTT and m5 core ink

    3
    0 Votes
    3 Posts
    4k Views
    L
    Battery, but the battery looks fine. If I turn the power on and off. the device picks up. Also, we are talking about minutes not days. After a full charge.
  • Set stamp pico in stand by to reduce battery consumption

    2
    0 Votes
    2 Posts
    2k Views
    felmueF
    Hello @diego_mtz maybe this post about deep and light sleep can help you? Thanks Felix
  • Deleting QR from screen

    3
    2
    0 Votes
    3 Posts
    6k Views
    K
    @felmue Good idea. Thanks
  • REMOTE+ m5StickCplus Chart data

    2
    0 Votes
    2 Posts
    4k Views
    P
    @ianlyonthomas said in REMOTE+ m5StickCplus Chart data: CHART modul I have tried the same have not managed it either the EzData works with Core to Core but not with Remote+ and the CHART module
  • Is there an RGBW unit for UIFlow?

    1
    0 Votes
    1 Posts
    2k Views
    No one has replied
  • Running UIFlow desktop IDE in Linux

    12
    1 Votes
    12 Posts
    21k Views
    F
    Same issue here, under Ubuntu 17 and 18, freezing UIFlow when opening the file selection menu. There is also an error with M5Stack Burner with an incompatible GLIBC library. Both errors together makes it difficult to use Linux Ubuntu for M5 Stack development tasks. Please assist as Linux Ubuntu is my preferred development platform.
  • Core2: line out or external Speaker to Play .wav files?

    1
    1 Votes
    1 Posts
    3k Views
    No one has replied
  • m5p2p for UIFlow (Solved)

    10
    0 Votes
    10 Posts
    20k Views
    H
    thanks for your reply. Yeah, I just implemented a communication via the espnow broadcast block. Works ok, as long as the messages don't overlap. somehow I cannot get IDed messages to work. Have you ever succeeded with that?
  • Version confusion

    3
    0 Votes
    3 Posts
    4k Views
    F
    Thank you Felmue. I appreciate your response. I will focus my efforts on connecting WiFi.
  • I2C Error 19

    4
    0 Votes
    4 Posts
    6k Views
    F
    I have found that connecting the ENVIRO module to the Core 2 causes the M5 to lock up. White screen and nothing else. Is the issue with the module or software? Is there a Driver issue?
  • mqtt qos and retain

    1
    1 Votes
    1 Posts
    3k Views
    No one has replied
  • Programming ICONs

    2
    0 Votes
    2 Posts
    3k Views
    felmueF
    Hello @Flow Re 1.: the icon list seems to be different for M5Stack vs M5Core2 models. (Not sure why that is though.) You could try to draw circles and squares programmatically using the blocks under 'Graphic'. Re 2.: does the issue happen with USB plugged in as well? If not it could be an issue with the battery. Have you tried to charge it for a couple of hours first? You could also try to remove the battery and see if the issue is still present with only USB power. Thanks Felix
  • more panels in a APP made with uiflow

    4
    1 Votes
    4 Posts
    4k Views
    ajb2k3A
    Sorry been to busy to check. Now way would be to create separate functions for each page but add the screen clean block to the beginning of the function loop.
  • Control NeoPixels on M5Stack Core2 AWS edukit

    10
    0 Votes
    10 Posts
    21k Views
    M
    Here is a way to control Led Strip from M5stack aws Core2 the big one :0) wich are on GPIO25 there are 10 RGB LED THIS IS RED ALERT SCRIPT :0) inspired from https://github.com/FastLED/FastLED/tree/master/examples/Blink #include <FastLED.h> // How many leds in your strip? //10 individually programmable RGB LEDs via SK6812 to create customized and animated light effects, #define NUM_LEDS 10 // For led chips like WS2812, which have a data line, ground, and power, you just // need to define DATA_PIN. For led chipsets that are SPI based (four wires - data, clock, // ground, and power), like the LPD8806 define both DATA_PIN and CLOCK_PIN // Clock pin only needed for SPI based chipsets when not using hardware SPI #define DATA_PIN 25 #define CLOCK_PIN 13 // Define the array of leds CRGB leds[NUM_LEDS]; void setup() { // Uncomment/edit one of the following lines for your leds arrangement. // ## Clockless types ## FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS); // GRB ordering is assumed FastLED.setBrightness(190); // FastLED.addLeds<SM16703, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<TM1829, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<TM1812, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<TM1809, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<TM1804, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<TM1803, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<UCS1903, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<UCS1903B, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<UCS1904, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<UCS2903, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<WS2852, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<GS1903, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<SK6812, DATA_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<SK6822, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<APA106, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<PL9823, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<SK6822, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2813, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<APA104, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2811_400, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<GE8822, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<GW6205, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<GW6205_400, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<LPD1886, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<LPD1886_8BIT, DATA_PIN, RGB>(leds, NUM_LEDS); // ## Clocked (SPI) types ## // FastLED.addLeds<LPD6803, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<LPD8806, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // GRB ordering is typical // FastLED.addLeds<WS2801, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2803, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<SM16716, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<P9813, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // BGR ordering is typical // FastLED.addLeds<DOTSTAR, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // BGR ordering is typical // FastLED.addLeds<APA102, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // BGR ordering is typical // FastLED.addLeds<SK9822, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); // BGR ordering is typical } void loop() { // Turn the LED on, then pause leds[0] = CRGB::Red; leds[1] = CRGB::Red; leds[2] = CRGB::Red; leds[3] = CRGB::Red; leds[4] = CRGB::Red; leds[5] = CRGB::Red; leds[6] = CRGB::Red; leds[7] = CRGB::Red; leds[8] = CRGB::Red; leds[9] = CRGB::Red; FastLED.show(); delay(500); // Now turn the LED off, then pause leds[0] = CRGB::Black; leds[1] = CRGB::Black; leds[2] = CRGB::Black; leds[3] = CRGB::Black; leds[4] = CRGB::Black; leds[5] = CRGB::Black; leds[6] = CRGB::Black; leds[7] = CRGB::Black; leds[8] = CRGB::Black; leds[9] = CRGB::Black; FastLED.show(); delay(500); }
  • M5 TimerCam

    2
    0 Votes
    2 Posts
    5k Views
    N
    @ianlyonthomas First you must connect the device to the usb port, then enable the connection to that port if it is windows COM5, COM6, COM7 ... burn your device and then go to configuration
  • GPS Base in UIFlow Blockly

    1
    0 Votes
    1 Posts
    2k Views
    No one has replied
  • AP+Webserver+Remote as UIFlow blocky

    1
    1 Votes
    1 Posts
    4k Views
    No one has replied