Skip to content

USB Serial on Android: responses are delayed and batched #24

@onimor

Description

@onimor

Hello,

I’m experiencing a strange behavior with the UsbSerialForAndroid.Net library on Android when reading from a USB-connected device (COM-over-USB).

details:
I poll pages of data from my controller every second.

All pages work correctly, responses come immediately.

Page 0x02 behaves differently: the controller does not respond immediately to the first few requests. After ~7–8 requests, it sends all the pending responses at once.

This happens regardless of the polling interval (tested 100 ms, 1 s, 5 s).

On Windows PC using the same device and same code, all pages respond immediately, including 0x02.

Other pages (0x01, 0x03, 0x04, 0x05, etc.) always respond normally on Android.

Observations:
It seems like the Android USB stack (or the library) is buffering the first few requests for page 0x02 and only dispatching them together.

The issue is specific to Android; PC COM ports work fine.

The device always sends correct data, it’s just delayed/batched on Android.

PC: page 0x02
18.02.2026 17:35:40
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF

18.02.2026 17:35:40
Read: FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-39-DE-AD-BE-EF

Android: page 0x02
18.02.2026 17:35:40
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:41
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:42
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:43
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:44
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:45
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:47
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF
18.02.2026 17:35:48
Write: FA-CE-01-02-00-00-03-39-DE-AD-BE-EF

18.02.2026 17:35:48
Read: FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-25-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-25-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-26-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-26-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-27-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-27-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-28-DE-AD-BE-EF-FA-CE-01-02-14-00-08-08-00-00-00-00-00-00-00-00-DF-DF-FF-FF-6F-7F-C7-57-FD-FE-94-28-DE-AD-BE-EF

Page 0x01( responds immediately)
Write: FA-CE-01-01-00-00-00-3A-DE-AD-BE-EF
Read: FA-CE-01-01-19-00-10-10-67-00-00-00-00-00-00-00-00-00-00-00-00-00-1B-01-00-00-00-01-00-00-00-65-3A-DE-AD-BE-EF

Page 0x03 (responds immediately)
Write: FA-CE-01-03-00-00-02-36-DE-AD-BE-EF
Read: FA-CE-01-03-12-00-10-08-01-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-09-36-DE-AD-BE-EF

Page 0x04 (responds immediately)
Write: FA-CE-01-04-00-00-05-34-DE-AD-BE-EF
Read: FA-CE-01-04-0A-00-08-08-FF-FF-FF-FF-FF-FF-FF-FF-0F-34-DE-AD-BE-EF

Page 0x05 (responds immediately)
Write: FA-CE-01-05-00-00-04-33-DE-AD-BE-EF
Read: FA-CE-01-05-0A-00-08-08-00-00-00-10-10-10-10-10-1E-33-DE-AD-BE-EF

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions