Superchart and BT ->CSV export not working, no email

Maybe i misunderstood the way of how to use Superchart and csv export, but in my opinion something is not working as it should.
Using this modified “Push Data” example:

#define BLYNK_PRINT Serial

#include <SoftwareSerial.h>
SoftwareSerial SwSerial(10, 11); // RX, TX
    
#include <BlynkSimpleSerialBLE.h>
#include <SoftwareSerial.h>

char auth[] = "YourAuthToken";

SoftwareSerial SerialBLE(10, 11); // RX, TX

BlynkTimer timer;

void myTimerEvent()
{
  Blynk.virtualWrite(V9, random(0, 255));
}

void setup()
{
  // Debug console
  Serial.begin(9600);

  SerialBLE.begin(9600);
  Blynk.config(SerialBLE, auth);

  Serial.println("Waiting for connections...");

  // Setup a function to be called every second
  timer.setInterval(1000L, myTimerEvent);
}

void loop()
{
  Blynk.run();
  timer.run(); // Initiates BlynkTimer
}

I created a project with a “Superchart” and “Email” widget and the the code is running on an Arduino pro mini with an hc05 BT module connected to my Phone (with internet connection available).
This happens:

  • data is visible on live Chart
  • other timbases are not working (no data yet forever)
  • csv export to email is not resulting in an actual email
  • tryed different email addresses and checked spamfilter but nothing

Any Ideas what went wrong?

Tonkenplonk

I don’t use Bluetooth but as far as I’m concerned, SuperChart retrieves data from the Cloud, if you’re not connected to it. It doesn’t record neither send report.

Thus you’ll only see Live data, ie. When phone is connected to the hardware.

2 Likes

ok, that sounds plausible but also very negative for my planned application.

Are there any other ways to extract Data from the App localy? Or maybe parse Data from the app back to the cloud?

Does your app have internet while connected to the BT? Do you use Android?

Hi Dimitriy

I am using Android 8 and BlynkApp has internet connection during BT connection.

So it should work. @BlynkAndroidDev right?

not sure if it is related, but I can’t export CSV too.
It used to work some updates ago.
In the log file (debug on) I see
13:59:11.498 ERROR- Error making csv file for data export. Reason Could not convert socket to TLS
Local server, app & server up to date
No BT involved.

Can you plead advice?

Thanks, we’ll check on our side this issue. Blynk app should send Bluetooth data to the cloud, but it could do that only while it is active and there is a connection to Bluetooth device.

You need to install Oracle/OpenJVM and not libertica JVM. As it has those bug. This is JVM issue, not Blynk.

Both is the case in my situation…
Thanks for checking!

Could you also add your Android app’s version and if you are on local server - it’s version.

BlynkApp 2.26.3
Blynk Library 0.5.3
no local Blynk Server

1 Like

How can I be sure about the installed JVM?
I tried

apt list|grep jvm

And got

uwsgi-plugin-jvm-openjdk-8/stable 2.0.14+20161117-3 armhf

Not sure if it is significant, I’m not Linux geek… :roll_eyes:

… while, issuing

apt list|grep jdk

I get

default-jdk/stable 2:1.8-58+b2 armhf
default-jdk-doc/stable 2:1.8-58+b2 armhf
default-jdk-headless/stable 2:1.8-58+b2 armhf
gcj-4.4-jdk/stable 4.4.7-1 armhf
gcj-4.8-jdk/stable 4.8.5-4 armhf
gcj-4.9-jdk/stable 4.9.3-14 armhf
gcj-5-jdk/stable 5.4.1-4 armhf
gcj-6-jdk/stable 6.3.0-18+rpi1 armhf
gcj-jdk/stable 4:6.3.0-4 armhf
libconcurrentlinkedhashmap-java/stable 1.1~jdk5-1 all
libconcurrentlinkedhashmap-java-doc/stable 1.1~jdk5-1 all
libhtsjdk-java/stable 2.8.1+dfsg-1 all
libhtsjdk-java-doc/stable 2.8.1+dfsg-1 all
openjdk-8-dbg/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-demo/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-doc/stable 8u141-b15-1~deb9u1 all
openjdk-8-jdk/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-jdk-headless/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-jre/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-jre-headless/stable 8u141-b15-1~deb9u1 armhf
openjdk-8-source/stable 8u141-b15-1~deb9u1 all
oracle-java7-jdk/testing 7u60 armhf
oracle-java8-jdk/testing,now 8u65 armhf [installato]
uwsgi-plugin-jvm-openjdk-8/stable 2.0.14+20161117-3 armhf
uwsgi-plugin-jwsgi-openjdk-8/stable 2.0.14+20161117-3 armhf
uwsgi-plugin-ring-openjdk-8/stable 2.0.14+20161117-3 armhf
uwsgi-plugin-servlet-openjdk-8/stable 2.0.14+20161117-3 armhf

I found RPi was running Java 10 instead of 8.
Now it works. Thanks for the hint

We reproduced this issue, after our test I’ll send you a logging build to check if it works on your side.

Great! Looking forward to test your solution.

I found another issue which could be related to the same problem. (if not, i could start a new thread)

Using the very same setup, i tried using the functions:
BLYNK_CONNECTED()
BLYNK_APP_CONNECTED()
BLYNK_APP_DISCONNECTED()

Only BLYNK_CONNECTED() is called when App is running an BT connection established. Both BLYNK_APP* functions are never called.

#define BLYNK_PRINT Serial

#include <SoftwareSerial.h>
SoftwareSerial SwSerial(10, 11); // RX, TX

#include <BlynkSimpleSerialBLE.h>
#include <SoftwareSerial.h>

char auth[] = "d1e6304d977647e7a0348905b1aff9a8";

SoftwareSerial SerialBLE(10, 11); // RX, TX

BlynkTimer timer;
int i = 0;
int ii = 0;
int iii = 0;

BLYNK_CONNECTED() {
  Serial.println("---------------------Blynk is connected-------------");
  Blynk.syncAll();
  Blynk.virtualWrite(V4, i);
  i++;
}

BLYNK_APP_CONNECTED() {
  Serial.println("###################Blynk-APP is connected ##################");
  digitalWrite(LED_BUILTIN, LOW);
  Blynk.virtualWrite(V11, ii);
  ii++;
}

BLYNK_APP_DISCONNECTED() {
  Serial.println("!!!!!!!!!!!!!!!!!!!!!!  Blynk-APP is disconnected!!!!!!!!!!!!!!!!!!!!!!!");
  digitalWrite(LED_BUILTIN, LOW);
  Blynk.virtualWrite(V14, iii);
  iii++;
}

void myTimerEvent()
{
  // You can send any value at any time.
  // Please don't send more that 10 values per second.
  Blynk.virtualWrite(V9, random(0, 255));
}

void setup()
{
  pinMode(LED_BUILTIN, OUTPUT);

  // Debug console
  Serial.begin(115200);

  SerialBLE.begin(9600);
  Blynk.config(SerialBLE, auth);

  Serial.println("Waiting for connections...");

  // Setup a function to be called every second
  timer.setInterval(1000L, myTimerEvent);
}

void loop()
{
  Blynk.run();
  timer.run(); // Initiates BlynkTimer
}



This are only for non-BT connections.

Ok, Thanks for clearing this up!

We had uploaded 2.26.4 build to Google Play - it should fix this issue.