Hi. I usually use M5 products with esphome. I an completely novice with UIflow2 and mycropython. I would like some help using the unit IR to decode a ac remote. I followed the video example on m5docs, and I have an error.
Here is the code:
import os, sys, io
import M5
from M5 import *
from unit import IRUnit
ir_0 = None
data = None
addr = None
def ir_0_rx_event(_data, _addr, _ctrl):
global ir_0, data, addr
data = _data
addr = _addr
print(data)
def setup():
global ir_0, data, addr
M5.begin()
ir_0 = IRUnit((1, 2))
ir_0.rx_cb(ir_0_rx_event)
data = 0
addr = 27
def loop():
global ir_0, data, addr
M5.update()
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")
I get error:
Traceback (most recent call last):
File "<stdin>", line 25, in <module>
File "<stdin>", line 17, in setup
File "unit/ir.py", line 24, in rx_cb
File "driver/ir/nec.py", line 116, in __init__
File "driver/ir/nec.py", line 67, in __init__
File "driver/ir/receiver.py", line 47, in __init__
ValueError: invalid Timer number
The only thing that is different from the YouTube video is instead of setting a label to print the data value I am printing it to console, could this be the problem?