Posts: 5
Threads: 4
Joined: Nov 2024
Institution: 无
The project I’m working on requires transmitting seven sets of data, which exceeds the five-set limit imposed by phyphox. I’m wondering if there’s a way to bypass this restriction? I’m currently exploring the use of arrays or strings to address this issue and would appreciate any suggestions.
Posts: 2
Threads: 1
Joined: Apr 2025
Institution: Bordeaux university
Hey,
I have exactly the same problem.
I just post a new thread...
Posts: 622
Threads: 26
Joined: Apr 2020
Institution: RWTH Aachen University
04-17-2025, 12:21 PM
(This post was last modified: 04-17-2025, 12:22 PM by Jens Noriʇzsɔɥ.)
Five floats, i.e. 20 bytes, is a (current?*) limitation of the Arduino BLE stack and it does not exist for ESP32 based microcontrollers. So, depending on the architecture, there are different approaches that, however, require a “handwritten” .phyphox file (check the CO2 demo, for instance, how to include it in your sketch):
- use a float array in phyphox::write (esp32 only),
- use a byte array in phyphox::write and convert your data appropriately. Two byte integers (and a scaling factor in the .phyphox file) might provide sufficient accuracy for your purpose. You could also use different sizes for different data,
- if rate is not that much of an issue, you could use one of the channels as a data index, so you could have eight floats in two data packages – leading to half the rate.
* Arduino is switching from mbed to zephyr. We have not looked into the first beta yet, though.