Yakut slcan not working

Hello. I have a problem with yakut on Windows 10:

set UAVCAN__CAN__IFACE='slcan:COM2'
set UAVCAN__NODE__ID=10
yakut monitor

After selecting slcan protocol and run, I have a problem on yakut side:

InvalidMediaConfigurationError: Interface not supported yet: 'slcan

yakut version is 0.11.1

This should not be possible:

Please re-run with -vv.

Hi all,

i have the same issue:

yakut>set UAVCAN__CAN__IFACE='slcan:COM7'

yakut>set UAVCAN__CAN__MTU=8

yakut>set UAVCAN__NODE__ID=127

yakut>set UAVCAN__CAN__BITRATE=500000 500000

yakut>yakut -vv mon
2023-03-05 21:51:13,158 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module fcntl as DSDL
2023-03-05 21:51:13 0006284 DEB yakut: Path: ()
2023-03-05 21:51:13 0006284 DEB asyncio: Using proactor: IocpProactor
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module scipy.linalg._cblas as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module scipy.linalg._fblas_64 as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module scipy.linalg._clapack as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module scipy.linalg._flapack_64 as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module scikits as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module uavcan as DSDL
2023-03-05 21:51:13 0006284 DEB pycyphal.dsdl._import_hook: Found root namespace uavcan in DSDL source directory C:\Elektronik\Projekte\public_regulated_data_types\uavcan
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Initialized with registers: KeysView(StaticBackend(':memory:', persistent=False))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.node.id' <- ValueProxy(uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.node.id' = uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.node.id' <- Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Update from env: 'uavcan.node.id' <- b'127'
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.node.id' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.node.id' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.node.id' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[65535])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.node.id' <- Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[127])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.node.id' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[127])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.udp.iface' <- ValueProxy(uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.udp.iface' = uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value=''))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.udp.iface' <- Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.udp.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.udp.mtu' <- ValueProxy(uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[1200])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.udp.mtu' = uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[1200]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.udp.mtu' <- Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[1200])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.udp.mtu' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[1200])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.udp.duplicate_service_transfers' <- ValueProxy(uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.udp.duplicate_service_transfers' = uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.udp.duplicate_service_transfers' <- Entry(value=uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.udp.duplicate_service_transfers' -> Entry(value=uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.serial.iface' <- ValueProxy(uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.serial.iface' = uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value=''))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.serial.iface' <- Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.serial.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.serial.duplicate_service_transfers' <- ValueProxy(uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.serial.duplicate_service_transfers' = uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.serial.duplicate_service_transfers' <- Entry(value=uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.serial.duplicate_service_transfers' -> Entry(value=uavcan.register.Value.1.0(bit=uavcan.primitive.array.Bit.1.0(value=[False])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.serial.baudrate' <- ValueProxy(uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[0])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.serial.baudrate' = uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[0]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.serial.baudrate' <- Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[0])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.serial.baudrate' -> Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[0])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.can.iface' <- ValueProxy(uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.can.iface' = uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value=''))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.iface' <- Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Update from env: 'uavcan.can.iface' <- b"'slcan:COM7'"
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value='')), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.iface' <- Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value="'slcan:COM7'")), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.iface' -> Entry(value=uavcan.register.Value.1.0(string=uavcan.primitive.String.1.0(value="'slcan:COM7'")), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.can.mtu' <- ValueProxy(uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.can.mtu' = uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.mtu' <- Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Update from env: 'uavcan.can.mtu' <- b'8'
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.mtu' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.mtu' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.mtu' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[64])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.mtu' <- Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[8])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.mtu' -> Entry(value=uavcan.register.Value.1.0(natural16=uavcan.primitive.array.Natural16.1.0(value=[8])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create 'uavcan.can.bitrate' <- ValueProxy(uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000])))
2023-03-05 21:51:13 0006284 DEB pycyphal.application._registry_factory: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Create static 'uavcan.can.bitrate' = uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000]))
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.bitrate' <- Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register._registry: SimpleRegistry([StaticBackend(':memory:', persistent=False), DynamicBackend('', persistent=False)]): Update from env: 'uavcan.can.bitrate' <- b'500000 500000'
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.bitrate' -> Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.bitrate' -> Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.bitrate' -> Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[1000000,4000000])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Set 'uavcan.can.bitrate' <- Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[500000,500000])), mutable=True)
2023-03-05 21:51:13 0006284 DEB pycyphal.application.register.backend.static: StaticBackend(':memory:', persistent=False): Get 'uavcan.can.bitrate' -> Entry(value=uavcan.register.Value.1.0(natural32=uavcan.primitive.array.Natural32.1.0(value=[500000,500000])), mutable=True)
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module pkg_resources.extern.jaraco as DSDL
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module pkg_resources.extern.more_itertools as DSDL
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module pkg_resources.extern.appdirs as DSDL
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module win32com.gen_py as DSDL
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module pkg_resources.extern.packaging as DSDL
2023-03-05 21:51:14 0006284 DEB pycyphal.dsdl._import_hook: Attempting to load module pkg_resources.extern.pyparsing as DSDL
2023-03-05 21:51:14 0006284 DEB yakut: Event loop finalization with exc=(<class 'pycyphal.transport._error.InvalidMediaConfigurationError'>, InvalidMediaConfigurationError("Interface not supported yet: 'slcan"), <traceback object at 0x0000023FC48F9F40>)
InvalidMediaConfigurationError: Interface not supported yet: 'slcan
2023-03-05 21:51:14 0006284 DEB yakut: EXCEPTION InvalidMediaConfigurationError: Interface not supported yet: 'slcan
Traceback (most recent call last):
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\main.py", line 261, in main
    status = _click_main.main(prog_name="yakut", standalone_mode=False)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\core.py", line 1055, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\core.py", line 760, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\decorators.py", line 84, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\click\core.py", line 760, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\main.py", line 311, in proxy
    return loop.run_until_complete(f(*args, **kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.11_3.11.752.0_x64__qbz5n2kfra8p0\Lib\asyncio\base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\cmd\monitor\_cmd.py", line 133, in monitor
    with purser.get_node("monitor", allow_anonymous=allow_anonymous) as node:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\main.py", line 88, in get_node
    tr = self.get_transport()
         ^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\main.py", line 81, in get_transport
    self._transport = self._f_transport()
                      ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\yakut\param\transport.py", line 49, in factory
    result = make_transport(purser.get_registry())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\pycyphal\application\_transport_factory.py", line 226, in make_transport
    transports = list(itertools.chain(*(f(registers, node_id) for f in _SPECIALIZATIONS)))
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\pycyphal\application\_transport_factory.py", line 303, in _make_can
    media = PythonCANMedia(iface, br_arb if br_arb == br_data else (br_arb, br_data), mtu)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\pycyphal\transport\can\media\pythoncan\_pythoncan.py", line 203, in __init__
    bus_options, bus = _CONSTRUCTORS[self._conn_name[0]](params)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\AI3X\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\pycyphal\transport\can\media\pythoncan\_pythoncan.py", line 557, in _construct_any
    raise InvalidMediaConfigurationError(f"Interface not supported yet: {parameters.interface_name}")
pycyphal.transport._error.InvalidMediaConfigurationError: Interface not supported yet: 'slcan
2023-03-05 21:51:14 0006284 DEB yakut: EXIT 1

It was working with an older version of yakut.

OK Found the error. Its the “” or ‘’

set UAVCAN__CAN__IFACE='slcan:COM7' does not work

set UAVCAN__CAN__IFACE=slcan:COM7  # Works
1 Like

I think single quotes do not work in cmd.exe. Regardless, I strongly suggest using PowerShell instead, as the native shell is virtually unusable in all but simplest scenarios.

You may also want to try Yukon.

I was trying Yukon but for now it looks like my node is not correctly answering the getnodeinfo. Need to fix the Chibios can-fd driver for stm32-g4 for cyphal first.