While ECG is quite a simple signal, surprisingly few devices provide raw data, and none of them seems to be able to stream raw data on a phone while running.
So we decided to make our own.
uECG can stream data via BLE at 125 Hz or via custom radio protocol to PC at 1 kHz - for this option we developed a USB stick that captures radio signal and translates it into virtual COM port data stream.
Our main goals are low cost, low weight and high signal quality. And it seems we are hitting all of them - system is based on MCP3911 front-end originally developed for energy metering, but it performs nicely for our case too. Also we have buffer precision opamp, NRF52832 as MCU+radio, and some minor stuff.
The system requires relatively low power - without LED indication, device uses less than 10mA even during BLE transmission at 125 Hz (final number isn't clear yet - firmware has many places to optimize power consumption). That allows to use a tiny 120 mAh battery - so weight is also low, about 9 grams.
Signal quality of this setup is quite high - but there will be more on that in logs.