I have noticed that after a macro runs, there is a delay of about a second where no commands are sent. I have macros that are connected to my Apple TV 4k that do this. I have used both the BLE connection to the Apple and IR, and created the macro with both, and in both cases there is that delay. Is there a way to get rid of that second where the remote won’t send commands?
What containsy the Macro?
Ralf
Very simple,
- Skip right
- 50ms delay
- skip right
After it runs, there is about 1 second where the remote won’t send any command
Did you look at the log to get a hint?
Brand new to the remote 3, and learning. that is a great tip. I will take a look at the log, thanks!
I realize the log is hard to read in this format, but here is the section. At the bottom is the first button press (CHANNEL_DOWN), and then you can see the macro named ‘Apple Skip 20’ is run. When it completes at 2026-01-02 21:15:21.185569, I then press the button again somewhat quickly at 2026-01-02 21:15:21.701137, but you can see that it registers the button press, but does not run the ‘Apple Skip 20’ macro again.
2026-01-02 21:15:24.014871 +00:00 core NOTICE [BT] profile 2 disconnected (SUCCESS, 8)
2026-01-02 21:15:24.012042 +00:00 bt INFO I | socket_server.c:186 | Bluetooth status: ON
2026-01-02 21:15:24.012042 +00:00 bt INFO I | socket_server.c:1648 | BT connection count change: 0
2026-01-02 21:15:24.012042 +00:00 bt INFO D | hci.c:8230 | BTSTACK_EVENT_NR_CONNECTIONS_CHANGED 0
2026-01-02 21:15:24.012042 +00:00 bt INFO D | hci.c:1284 | Connection closed: handle 0x40, C4:F7:C1:32:DC:A3
2026-01-02 21:15:24.012042 +00:00 bt INFO I | kbd_profile.c:357 | [2] disconnected (0x40)
2026-01-02 21:15:24.012042 +00:00 bt INFO I | hog_keyboard.c:1114 | Disconnected, status=0, device_index=14, con_handle=0x40, reason=0x08
2026-01-02 21:15:24.012042 +00:00 bt INFO D | gatt_client.c:1817 | GATT Client: HCI_EVENT_DISCONNECTION_COMPLETE
2026-01-02 21:15:24.012042 +00:00 bt INFO I | socket_server.c:398 | daemon_remove_gatt_client_helper for con_handle 0x0040
2026-01-02 21:15:24.012042 +00:00 bt INFO D | hci.c:1673 | Num LE Peripheral roles: 0 of 5
2026-01-02 21:15:24.012042 +00:00 bt INFO D | hci.c:1667 | state 7, role 1, le_con 1
2026-01-02 21:15:24.012042 +00:00 bt INFO D | att_server.c:364 | encrypted key size 0, authenticated 0, secure connection 0
2026-01-02 21:15:24.012042 +00:00 bt INFO D | sm.c:4097 | event handler, state 26
2026-01-02 21:15:24.012042 +00:00 bt INFO D | sm.c:4095 | Encryption state change: 0, key size 0
2026-01-02 21:15:22.894596 +00:00 ui INFO uc.ui.input: RELEASE CONTROL BACK TO → “Activity_QMLTYPE_236(0x559ea2f410)”
2026-01-02 21:15:22.690787 +00:00 ui WARN uc.ui.resources: Empty ID passed to getIcon()
2026-01-02 21:15:22.281741 +00:00 core NOTICE [BT] profile 2 connected: C4:F7:C1:32:DC:A3 (LE_PUBLIC), status=SUCCESS
2026-01-02 21:15:22.274555 +00:00 bt INFO I | kbd_profile.c:328 | [2] connected (0x40)
2026-01-02 21:15:22.274555 +00:00 bt INFO I | hog_keyboard.c:1084 | Connection complete, status=0, device_index=14, con_handle=0x40, role=1, peer_address=C4:F7:C1:32:DC:A3 LE_PUBLIC, sm_peer_addr: C4:F7:C1:32:DC:A3 LE_PUBLIC
2026-01-02 21:15:22.274555 +00:00 bt INFO I | socket_server.c:186 | Bluetooth status: ACTIVE
2026-01-02 21:15:22.274555 +00:00 bt INFO I | socket_server.c:1648 | BT connection count change: 1
2026-01-02 21:15:22.274555 +00:00 bt INFO D | hci.c:8230 | BTSTACK_EVENT_NR_CONNECTIONS_CHANGED 1
2026-01-02 21:15:22.274555 +00:00 bt INFO D | att_server.c:415 | SM_EVENT_IDENTITY_RESOLVING_SUCCEEDED
2026-01-02 21:15:22.274555 +00:00 bt INFO D | sm.c:1349 | peripheral: pairing request local 0, have_ltk 1 => trigger_security_request 0
2026-01-02 21:15:22.274555 +00:00 bt INFO D | le_device_db_tlv.c:338 | LE Device DB encryption for 14, ediv x0000, keysize 16, authenticated 1, authorized 0, secure connection 1
2026-01-02 21:15:22.274555 +00:00 bt INFO D | sm.c:1325 | ADDRESS_RESOLUTION_SUCCEEDED, index 14
2026-01-02 21:15:22.274555 +00:00 bt INFO D | sm.c:2293 | LE Device Lookup: found by { addr_type, address}
2026-01-02 21:15:22.274555 +00:00 bt INFO D | sm.c:2287 | LE Device Lookup: device 14 of 16 - type 0, C4:F7:C1:32:DC:A3
2026-01-02 21:15:22.274555 +00:00 bt INFO D | att_server.c:404 | SM_EVENT_IDENTITY_RESOLVING_STARTED
2026-01-02 21:15:22.269015 +00:00 bt INFO D | hci.c:3517 | New connection: handle 64, C4:F7:C1:32:DC:A3
2026-01-02 21:15:22.269015 +00:00 bt INFO D | hci.c:1673 | Num LE Peripheral roles: 1 of 5
2026-01-02 21:15:22.269015 +00:00 bt INFO D | hci.c:1667 | state 4, role 1, le_con 1
2026-01-02 21:15:22.269015 +00:00 bt INFO D | hci.c:329 | create_connection_for_addr C4:F7:C1:32:DC:A3, type 0
2026-01-02 21:15:22.269015 +00:00 bt INFO D | hci.c:3387 | LE Connection_complete (status=0) type 0, C4:F7:C1:32:DC:A3
2026-01-02 21:15:21.901892 +00:00 ui INFO uc.ui.input: Key released: “CHANNEL_DOWN” “LoadingScreen_QMLTYPE_42(0x559dd97d20)”
2026-01-02 21:15:21.701137 +00:00 ui INFO uc.ui.input: Key pressed: “CHANNEL_DOWN” “LoadingScreen_QMLTYPE_42(0x559dd97d20)”
2026-01-02 21:15:21.492317 +00:00 ui INFO uc.ui.input: TAKE CONTROL FROM “Activity_QMLTYPE_236(0x559ea2f410)” → “LoadingScreen_QMLTYPE_42(0x559dd97d20)”
2026-01-02 21:15:21.185569 +00:00 ui INFO qml: Macro state changed to: Completed
2026-01-02 21:15:21.184097 +00:00 ui INFO qml: Current step changed: undefined
2026-01-02 21:15:21.183157 +00:00 ui WARN uc.ui.resources: Empty ID passed to getIcon()
2026-01-02 21:15:21.182696 +00:00 ui INFO qml: Macro state changed to: Running
2026-01-02 21:15:21.168225 +00:00 core NOTICE Removed standby inhibitor: macro ‘Apple Skip 20’ (run) (max 65s)
2026-01-02 21:15:21.167968 +00:00 core NOTICE [Apple Skip 20] macro finished
2026-01-02 21:15:21.167252 +00:00 bt INFO W | socket_server.c:930 | [2] UCR command UCR_KBD_SEND_USAGE 1 error: 2
2026-01-02 21:15:21.167252 +00:00 bt INFO E | hog_keyboard.c:863 | [2] Invalid profile or no connection (0xffff) for sending next HID input 2
2026-01-02 21:15:21.167252 +00:00 bt INFO D | hog_keyboard.c:997 | [2:2] send native report, state=0
2026-01-02 21:15:21.167252 +00:00 bt INFO D | socket_server.c:916 | [2] UCR command UCR_KBD_SEND_USAGE 1: 0x0045
2026-01-02 21:15:21.164883 +00:00 core NOTICE [Apple Skip 20] macro command: uc_bt.main.profile2:CONSUMER_MENU_RIGHT
2026-01-02 21:15:21.134110 +00:00 ui INFO qml: Current step changed: undefined
2026-01-02 21:15:21.132740 +00:00 ui INFO qml: Macro state changed to: Running
2026-01-02 21:15:21.130762 +00:00 ui INFO qml: Current step changed: undefined
2026-01-02 21:15:21.129657 +00:00 ui INFO qml: Macro state changed to: Running
2026-01-02 21:15:21.114976 +00:00 core NOTICE [Apple Skip 20] macro delay: 50 ms
2026-01-02 21:15:21.113107 +00:00 bt INFO W | socket_server.c:930 | [2] UCR command UCR_KBD_SEND_USAGE 1 error: 2
2026-01-02 21:15:21.113107 +00:00 bt INFO E | hog_keyboard.c:863 | [2] Invalid profile or no connection (0xffff) for sending next HID input 2
2026-01-02 21:15:21.113107 +00:00 bt INFO D | hog_keyboard.c:997 | [2:2] send native report, state=0
2026-01-02 21:15:21.113107 +00:00 bt INFO D | socket_server.c:916 | [2] UCR command UCR_KBD_SEND_USAGE 1: 0x0045
2026-01-02 21:15:21.111007 +00:00 core NOTICE [Apple Skip 20] macro command: uc_bt.main.profile2:CONSUMER_MENU_RIGHT
2026-01-02 21:15:21.110734 +00:00 core NOTICE Added standby inhibitor: macro ‘Apple Skip 20’ (run) (max 65s)
2026-01-02 21:15:21.110360 +00:00 core NOTICE Started macro ‘Apple Skip 20’ (uc.main.fa14f968-4f1a-42b2-b604-a8346c50726f) with timeout of 60s
2026-01-02 21:15:21.105735 +00:00 ui INFO uc.ui.input: Key released: “CHANNEL_DOWN” “Activity_QMLTYPE_236(0x559ea2f410)”
2026-01-02 21:15:20.929008 +00:00 ui INFO uc.ui.input: Key pressed: “CHANNEL_DOWN” “Activity_QMLTYPE_236(0x559ea2f410)”