EvenIosGlassesClient
Even Realities G1 iOS adapter backed by CoreBluetooth.
The G1 exposes two Nordic UART peripherals. CoreBluetooth has no explicit MTU request API, so after each arm is connected this adapter checks maximumWriteValueLength(.withoutResponse) and warns if writes may be too small for display packets.
Mutable state is confined to the main GCD queue: CoreBluetooth delegates dispatch there because the central manager is created without an explicit queue, and every coroutine entry point runs on Dispatchers.Main. Do not move parsing/decoding off Main or pass a queue to CBCentralManager without adding real synchronization around every mutable BLE/session structure.