<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Topics tagged with uiflow2]]></title><description><![CDATA[A list of topics that have been tagged with uiflow2]]></description><link>https://community.m5stack.com/tags/uiflow2</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Apr 2026 15:01:39 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/tags/uiflow2.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 26 Jan 2026 11:49:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[AtomS3R - Black screen with UIFlow2 firmware (Backlight works, no image)]]></title><description><![CDATA[@kuriko SN: C12625050101908
[image: 1770296302451-4e9f2ec2-abb0-4f9a-897c-0ecec8711f33-image.png]
]]></description><link>https://community.m5stack.com/topic/8040/atoms3r-black-screen-with-uiflow2-firmware-backlight-works-no-image</link><guid isPermaLink="true">https://community.m5stack.com/topic/8040/atoms3r-black-screen-with-uiflow2-firmware-backlight-works-no-image</guid><dc:creator><![CDATA[10sor]]></dc:creator><pubDate>Mon, 26 Jan 2026 11:49:50 GMT</pubDate></item><item><title><![CDATA[UIFLOW V2.3.9]]></title><description><![CDATA[If you feel like the canvas method is too much effort - especially if it part of a larger project or you prefer M5GFX - then here is a working switch in M5GFX:
import os, sys, io
import M5
from M5 import *
import time



Switch1 = None
Switch2 = None
Switch3 = None
Knob = None


state = None
touch = None

# Describe this function...
def Off():
  global state, touch, Switch1, Switch2, Switch3, Knob
  state = 0
  Knob.setCursor(x=145, y=119)
  Switch1.setColor(color=0x999999, fill_c=0x999999)
  Switch2.setColor(color=0x999999, fill_c=0x999999)
  Knob.setColor(color=0xffffff, fill_c=0xffffff)

# Describe this function...
def On():
  global state, touch, Switch1, Switch2, Switch3, Knob
  state = 1
  Knob.setCursor(x=174, y=119)
  Switch2.setColor(color=0x33ccff, fill_c=0x33ccff)
  Switch3.setColor(color=0x33ccff, fill_c=0x33ccff)
  Knob.setColor(color=0xffffff, fill_c=0xffffff)


def setup():
  global Switch1, Switch2, Switch3, Knob, state, touch

  M5.begin()
  Widgets.setRotation(1)
  Widgets.fillScreen(0x222222)
  Switch1 = Widgets.Circle(174, 119, 14, 0xa4a4a4, 0xa4a4a4)
  Switch2 = Widgets.Rectangle(145, 105, 28, 28, 0xa4a4a4, 0xa4a4a4)
  Switch3 = Widgets.Circle(145, 119, 14, 0xa4a4a4, 0xa4a4a4)
  Knob = Widgets.Circle(145, 119, 14, 0xffffff, 0xffffff)

  Off()


def loop():
  global Switch1, Switch2, Switch3, Knob, state, touch
  M5.update()
  touch = M5.Touch.getCount()
  if touch != 0:
    if (M5.Touch.getX()) &gt;= 131 and (M5.Touch.getX()) &lt;= 188 and (M5.Touch.getY()) &gt;= 105 and (M5.Touch.getY()) &lt;= 133:
      if state == 0:
        On()
      else:
        Off()
      time.sleep_ms(500)


if __name__ == '__main__':
  try:
    setup()
    while True:
      loop()
  except (Exception, KeyboardInterrupt) as e:
    try:
      from utility import print_error_msg
      print_error_msg(e)
    except ImportError:
      print("please update to latest firmware")


]]></description><link>https://community.m5stack.com/topic/7960/uiflow-v2-3-9</link><guid isPermaLink="true">https://community.m5stack.com/topic/7960/uiflow-v2-3-9</guid><dc:creator><![CDATA[RPI25]]></dc:creator><pubDate>Mon, 22 Dec 2025 00:10:53 GMT</pubDate></item></channel></rss>