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

    i2c driver install error

    UiFlow 2.0
    6
    12
    5.0k
    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.
    • kurikoK
      kuriko @LucidXVR
      last edited by kuriko

      @LucidXVR
      known issue, seems doesn't affect anything, will fix it soon

      Good morning, and welcome to the Black Mesa Transit System.

      K 1 Reply Last reply Reply Quote 0
      • felmueF felmue referenced this topic on
      • K
        kmk68 @kuriko
        last edited by

        @kuriko Yes, it affects. The program does not start on my M5 Core after this message....

        kurikoK 1 Reply Last reply Reply Quote 0
        • kurikoK
          kuriko @kmk68
          last edited by

          @kmk68
          Are you able to show your code?

          Good morning, and welcome to the Black Mesa Transit System.

          K 1 Reply Last reply Reply Quote 1
          • K
            kmk68 @kuriko
            last edited by

            @kuriko it's created by block editing...

            import os, sys, io
            import M5
            from M5 import *
            from label_plus import LabelPlus
            from hardware import *
            import time
            from unit import EncoderUnit

            label0 = None
            label1 = None
            label2 = None
            label3 = None
            BtnA = None
            BtnB = None
            BtnC = None
            rect0 = None
            rect1 = None
            rect2 = None
            rect3 = None
            rect4 = None
            rect5 = None
            rect6 = None
            rect7 = None
            rect8 = None
            rect9 = None
            rect10 = None
            rect11 = None
            rect12 = None
            rect13 = None
            rect14 = None
            rect15 = None
            rect16 = None
            rect17 = None
            rect18 = None
            rect19 = None
            label7 = None
            label8 = None
            label9 = None
            label10 = None
            label11 = None
            label12 = None
            label13 = None
            LA_4 = None
            LA_3 = None
            LA_2 = None
            LA_1 = None
            LB_4 = None
            LB_3 = None
            LB_2 = None
            LB_1 = None
            LC_4 = None
            LC_3 = None
            LC_2 = None
            LC_1 = None
            pin3 = None
            pin1 = None
            pin2 = None
            pin5 = None
            i2c1 = None
            pin25 = None
            pin26 = None
            pin35 = None
            pin36 = None
            encoder_0 = None

            l_enc_inc = None
            INT_clock = None
            t_values = None
            enc_mode = None
            curr_value = None
            loc_value = None

            Describe this function...

            def init_all_out_pins_as_():
            global l_enc_inc, INT_clock, t_values, enc_mode, curr_value, loc_value, label0, label1, label2, label3, BtnA, BtnB, BtnC, rect0, rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10, rect11, rect12, rect13, rect14, rect15, rect16, rect17, rect18, rect19, label7, label8, label9, label10, label11, label12, label13, LA_4, LA_3, LA_2, LA_1, LB_4, LB_3, LB_2, LB_1, LC_4, LC_3, LC_2, LC_1, pin3, pin1, pin2, pin5, i2c1, pin25, pin26, pin35, pin36, encoder_0
            pin3 = Pin(3, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin1 = Pin(1, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin2 = Pin(2, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin5 = Pin(5, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin25 = Pin(25, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin26 = Pin(26, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin35 = Pin(35, mode=Pin.OUT, pull=Pin.PULL_UP)
            pin36 = Pin(36, mode=Pin.OUT, pull=Pin.PULL_UP)

            Describe this function...

            def relay_outs_pin_set():
            global l_enc_inc, INT_clock, t_values, enc_mode, curr_value, loc_value, label0, label1, label2, label3, BtnA, BtnB, BtnC, rect0, rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10, rect11, rect12, rect13, rect14, rect15, rect16, rect17, rect18, rect19, label7, label8, label9, label10, label11, label12, label13, LA_4, LA_3, LA_2, LA_1, LB_4, LB_3, LB_2, LB_1, LC_4, LC_3, LC_2, LC_1, pin3, pin1, pin2, pin5, i2c1, pin25, pin26, pin35, pin36, encoder_0
            if t_values[-1] == INT_clock:
            pin3.value(1)
            if t_values[0] == INT_clock:
            pin1.value(1)
            if t_values[1] == INT_clock:
            pin2.value(1)
            if t_values[2] == INT_clock:
            pin5.value(1)
            if t_values[3] == INT_clock:
            pin25.value(1)
            if t_values[4] == INT_clock:
            pin26.value(1)
            if t_values[5] == INT_clock:
            pin35.value(1)
            if t_values[6] == INT_clock:
            pin36.value(1)
            if t_values[7] == INT_clock:
            pin25.value(0)
            if t_values[8] == INT_clock:
            pin26.value(0)
            if t_values[9] == INT_clock:
            pin35.value(0)
            if t_values[10] == INT_clock:
            pin36.value(0)
            if t_values[7] + 25 == INT_clock:
            pin3.value(0)
            if t_values[8] + 25 == INT_clock:
            pin1.value(0)
            if t_values[9] + 25 == INT_clock:
            pin2.value(0)
            if t_values[10] + 25 == INT_clock:
            pin5.value(0)

            Describe this function...

            def all_out_pins_to_zero():
            global l_enc_inc, INT_clock, t_values, enc_mode, curr_value, loc_value, label0, label1, label2, label3, BtnA, BtnB, BtnC, rect0, rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10, rect11, rect12, rect13, rect14, rect15, rect16, rect17, rect18, rect19, label7, label8, label9, label10, label11, label12, label13, LA_4, LA_3, LA_2, LA_1, LB_4, LB_3, LB_2, LB_1, LC_4, LC_3, LC_2, LC_1, pin3, pin1, pin2, pin5, i2c1, pin25, pin26, pin35, pin36, encoder_0
            pin3.value(0)
            pin1.value(0)
            pin2.value(0)
            pin5.value(0)
            pin25.value(0)
            pin26.value(0)
            pin35.value(0)
            pin36.value(0)

            def setup():
            global label0, label1, label2, label3, BtnA, BtnB, BtnC, rect0, rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10, rect11, rect12, rect13, rect14, rect15, rect16, rect17, rect18, rect19, label7, label8, label9, label10, label11, label12, label13, LA_4, LA_3, LA_2, LA_1, LB_4, LB_3, LB_2, LB_1, LC_4, LC_3, LC_2, LC_1, pin3, pin1, pin2, pin5, i2c1, pin25, pin26, pin35, pin36, encoder_0, l_enc_inc, INT_clock, t_values, enc_mode, curr_value, loc_value

            M5.begin()
            Widgets.fillScreen(0x222222)
            label0 = Widgets.Label("Key 1", 4, 185, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label1 = Widgets.Label("Key 1", 4, 135, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label2 = Widgets.Label("Key 2", 5, 85, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label3 = Widgets.Label("Key 4", 5, 35, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            BtnA = Widgets.Label("A", 60, 222, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu18)
            BtnB = Widgets.Label("B", 150, 222, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu18)
            BtnC = Widgets.Label("C", 240, 222, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu18)
            rect0 = Widgets.Rectangle(100, 40, 40, 25, 0xffffff, 0x0f0957)
            rect1 = Widgets.Rectangle(143, 40, 40, 25, 0xffffff, 0x0f0957)
            rect2 = Widgets.Rectangle(186, 40, 40, 25, 0xffffff, 0x0f0957)
            rect3 = Widgets.Rectangle(229, 40, 40, 25, 0xffffff, 0x0f0957)
            rect4 = Widgets.Rectangle(100, 68, 40, 25, 0xffffff, 0x0f0957)
            rect5 = Widgets.Rectangle(143, 68, 40, 25, 0xffffff, 0x0f0957)
            rect6 = Widgets.Rectangle(186, 68, 40, 25, 0xffffff, 0x0f0957)
            rect7 = Widgets.Rectangle(229, 68, 40, 25, 0xffffff, 0x0f0957)
            rect8 = Widgets.Rectangle(100, 96, 40, 25, 0xffffff, 0x0f0957)
            rect9 = Widgets.Rectangle(100, 124, 40, 25, 0xffffff, 0x0f0957)
            rect10 = Widgets.Rectangle(100, 152, 40, 25, 0xffffff, 0x0f0957)
            rect11 = Widgets.Rectangle(143, 96, 40, 25, 0xffffff, 0x0f0957)
            rect12 = Widgets.Rectangle(186, 96, 40, 25, 0xffffff, 0x0f0957)
            rect13 = Widgets.Rectangle(229, 96, 40, 25, 0xffffff, 0x0f0957)
            rect14 = Widgets.Rectangle(143, 124, 40, 25, 0xffffff, 0x0f0957)
            rect15 = Widgets.Rectangle(186, 124, 40, 25, 0xffffff, 0x0f0957)
            rect16 = Widgets.Rectangle(229, 124, 40, 25, 0xffffff, 0x0f0957)
            rect17 = Widgets.Rectangle(143, 152, 40, 25, 0xffffff, 0x0f0957)
            rect18 = Widgets.Rectangle(186, 152, 40, 25, 0xffffff, 0x0f0957)
            rect19 = Widgets.Rectangle(229, 152, 40, 25, 0xffffff, 0x0f0957)
            label7 = Widgets.Label("A", 159, 46, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label8 = Widgets.Label("B", 202, 46, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label9 = Widgets.Label("C", 243, 46, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label10 = Widgets.Label("K4", 112, 74, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label11 = Widgets.Label("K3", 113, 102, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label12 = Widgets.Label("K2", 113, 129, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            label13 = Widgets.Label("K1", 113, 157, 1.0, 0xffffff, 0x222222, Widgets.FONTS.DejaVu12)
            LA_4 = LabelPlus("0,0", 153, 74, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LA_3 = LabelPlus("0,0", 153, 102, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LA_2 = LabelPlus("0,0", 153, 129, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LA_1 = LabelPlus("0,0", 153, 157, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LB_4 = LabelPlus("0,0", 195, 74, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LB_3 = LabelPlus("0,0", 195, 102, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LB_2 = LabelPlus("0,0", 195, 129, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LB_1 = LabelPlus("0,0", 195, 157, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LC_4 = LabelPlus("0,0", 239, 74, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LC_3 = LabelPlus("0,0", 239, 102, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LC_2 = LabelPlus("0,0", 239, 129, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)
            LC_1 = LabelPlus("0,0", 239, 157, 1.0, 0x9aff00, 0x000000, Widgets.FONTS.DejaVu12, "http://", 3000, False, None, "error", 0xFF0000)

            init_all_out_pins_as_()
            all_out_pins_to_zero()
            i2c1 = I2C(1, scl=Pin(22), sda=Pin(21), freq=100000)
            t_values = bytearray(12)
            enc_mode = 0
            curr_value = 0
            INT_clock = 0
            encoder_0 = EncoderUnit(i2c1, 0x40)

            def loop():
            global label0, label1, label2, label3, BtnA, BtnB, BtnC, rect0, rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10, rect11, rect12, rect13, rect14, rect15, rect16, rect17, rect18, rect19, label7, label8, label9, label10, label11, label12, label13, LA_4, LA_3, LA_2, LA_1, LB_4, LB_3, LB_2, LB_1, LC_4, LC_3, LC_2, LC_1, pin3, pin1, pin2, pin5, i2c1, pin25, pin26, pin35, pin36, encoder_0, l_enc_inc, INT_clock, t_values, enc_mode, curr_value, loc_value
            M5.update()
            time.sleep_us(20)
            if INT_clock == 0:
            time.sleep_ms(99)
            INT_clock = INT_clock + 1
            relay_outs_pin_set()
            l_enc_inc = encoder_0.get_rotary_increments()
            if encoder_0.get_button_status():
            encoder_0.fill_color(0x990000)
            enc_mode = 1
            if l_enc_inc != 0:
            curr_value = curr_value + l_enc_inc
            while curr_value < 0:
            curr_value = curr_value + 12
            while curr_value > 11:
            curr_value = curr_value - 12
            else:
            encoder_0.fill_color(0x000066)
            enc_mode = 0
            if l_enc_inc != 0:
            loc_value = t_values[int(curr_value - 1)] + l_enc_inc
            if loc_value < 0:
            loc_value = 0
            if loc_value > 99:
            loc_value = 99
            t_values[int(curr_value - 1)] = loc_value
            if curr_value==0:
            LA_4.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==1:
            LA_3.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==2:
            LA_2.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==3:
            LA_1.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==4:
            LB_4.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==5:
            LB_3.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==6:
            LB_2.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==7:
            LB_1.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==8:
            LC_4.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==9:
            LC_3.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==10:
            LC_2.setText(str(((str((loc_value / 10))).strip())))
            elif curr_value==11:
            LC_1.setText(str(((str((loc_value / 10))).strip())))
            else:
            pass

            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")

            kurikoK 1 Reply Last reply Reply Quote 0
            • kurikoK
              kuriko @kmk68
              last edited by

              @kmk68
              Can you export .m5f2 file on UiFlow2?

              Good morning, and welcome to the Black Mesa Transit System.

              1 Reply Last reply Reply Quote 0
              • C
                Calvorotas
                last edited by

                Hi,

                I have problems with UiFlow 2.2.0.

                I could use BLE with UiFlow 2.1.8, but the same program doesn't run in 2.2.0.

                348a7ac3-3413-4555-ba25-0e196479e2fa-image.png

                74c1e933-1bcc-44f5-9594-8abd8e1e812d-image.png

                The progam can't start. The device return at Uiflow main menu.

                I have update UiFlow in the devices (Core M5stack and StickC, but I have the same problem.

                Thanks.

                C kurikoK 2 Replies Last reply Reply Quote 0
                • C
                  Calvorotas @Calvorotas
                  last edited by

                  @Calvorotas

                  Hi,

                  Another program without BLE.

                  31e147da-4a20-4af5-a587-800d7cfbf728-image.png

                  I am not using MQTT in this program.

                  Thanks.

                  1 Reply Last reply Reply Quote 0
                  • kurikoK
                    kuriko @Calvorotas
                    last edited by

                    @Calvorotas
                    can you provide the .m5f2 file? imma do a test to check out if it's a firmware problem

                    Good morning, and welcome to the Black Mesa Transit System.

                    nmstackN C 2 Replies Last reply Reply Quote 0
                    • _
                      _e3e6
                      last edited by

                      Same issue here with Atom Echo and the Web UIFlow 2.0

                      https://gist.github.com/e3e6/f8558f8487dad2fe8909c8dc17b80888

                      1 Reply Last reply Reply Quote 0
                      • nmstackN
                        nmstack @kuriko
                        last edited by

                        @kuriko

                        Hello,

                        There is a few days ago, I wrote a similar trouble. My message was…

                        Hello,

                        I didn't think that I could feel so interested about this system! Sorry for my questions about, because I'm very unexpert.

                        I'm math teacher in secondary in Spain, and I want to prepare a trigonometric practice very simple.

                        I've used a potenciometer (angle unit), PaHUB, PbHUB, 8servos unit, and two servos: one 360º limited, and another one, 360º unlimited. Until this moment, all was right. But, I've done some little changes, I wasn't conscient that, when I erased the PaHUB unit, and I added another one, some address changed. I reviewed all the program, and I think that it should run. But, I don't know why now, when my program is running, at the end of compilation, it appears this message "E (112496) i2c: i2c driver install error".

                        Thank you for your attention

                        Please, does someone aid me?

                        Thank you for my poor English. Best regards!

                        Neus

                        Neus Morlà

                        1 Reply Last reply Reply Quote 0
                        • C
                          Calvorotas @kuriko
                          last edited by

                          @kuriko

                          This is the file.

                          uiflow2_block_1736531673251.png

                          Thanks

                          1 Reply Last reply Reply Quote 4
                          • First post
                            Last post