I had a look around the BLexAR examples. If there is any documentation or source code page I could not find it. That would send me running before purchasing it.
There are at least two plotting examples presented. I think the app must use a time out to delimit values. Here is one of them:
#include "DHT.h"
#include <SoftwareSerial.h>
#define DHTPIN 2 // what digital pin we're connected to
//#define DHTTYPE DHT11 // DHT 11
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
DHT dht(DHTPIN, DHTTYPE);
SoftwareSerial ble_device(0,1); // HM-10 TX/RX pins
void setup() {
dht.begin(); // prepare DHT sensor
ble_device.begin(9600); // prepare BLE module
}
void loop() {
delay(2000); // delay in-between readings
//float f = dht.readHumidity(); // uncomment to send humidity
float f = dht.readTemperature(true); // send temperature data
char f_str[6]; // prepare character array to send
dtostrf(f,2,1,f_str); // format data into char array
ble_device.write(f_str); // send to BLExAR
}
The data sent to the BLexAR app for plotting, is send without any new line or other delimiter. The only way the app could possibly sort out the values is by the in-between reading delay of 2000 ms.
They made it tiresome to navigate around for plotting examples so I won't post the others I found and lost (it's a very showy site). But of the ones I saw, all used inter-reading delays which obscures any definite answer about how packets are delimited, leaving it only to guesswork. However as the examples (except for one) did not send any delimiting characters at all, it would not be a stretch to believe that the ioS app does use timing for that.
Which means, the Maker Portal rep is probably wrong, it is likely a problem with the app. None of the examples send more than 20 bytes, so there is no possibility of seeing a problem with them. I guess you could see it as a bug, or a limitation. But if it's not acknowledged behaviour, I would call it a bug, because the API should come down on the side of temporal or EOL delimitation, in a definite way. Since the packetization will affect any BT traffic and this is a BT app, it should rely on EOL or some other delimitation. Really, it looks like a serious design flaw.
If the designer wishes to continue using temporal delimitation in the ioS app, they should at least make the implications imposed by BT clear to all to all its users. But it would obviously be better to use EOL instead, it would be much more robust and easier to define and control on the Arduino side.