I want to stream ADC data from the MDBT42 module via web bluetooth. The sampling & DMA part works nicely (thanks for the low-level library Gordon!). With 256x oversampling, I have a theoretical 781 effective sample / second. Each sample is an Uint16 value.
I have seen the Web bluetooth and Web Bluetooth Dashboard tutorials, and looks like that can work.
Need to fiddle with serialization, because JSON feels inefficient - 6 characters (worst case) to transfer 2 bytes of data. And the communication wasn't really happy at 160ms intervals :/
My questions:
any better solution than the "UART" between a browser and and nRF?
any better serialization format for Uint16 array? Current idea: convert to hex, transfer without separator, and reassemble from 4 byte chunks. That's roughly 2/3 data usage compared to JSON, not sure about the CPU usage. And 😴
I guess bluetooth layer itself takes care about data integrity & ordering. Right? :) Or should I add my own CRC or other error check?
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
I want to stream ADC data from the MDBT42 module via web bluetooth. The sampling & DMA part works nicely (thanks for the low-level library Gordon!). With 256x oversampling, I have a theoretical 781 effective sample / second. Each sample is an Uint16 value.
I have seen the Web bluetooth and Web Bluetooth Dashboard tutorials, and looks like that can work.
Need to fiddle with serialization, because JSON feels inefficient - 6 characters (worst case) to transfer 2 bytes of data. And the communication wasn't really happy at 160ms intervals :/
My questions: