Blynk, Arduino, Bluetooth and Android. Running into issues

Greetings,

I am brand new to Blynk but reasonably experienced with Arduinos. My current project needs an Arduino Uno communicating with an Android phone using Bluetooth. I followed the instructions here on the Blynk site, have received my code and am using the Blynky Blink example

However, nothing works:

  • The App / Project says that it :“Wasn’t online yet”. I don’t know what that means in context. Even without the Arduino, I assume that the App should connect to Blynk’s server?
  • I used the Blynky Blink example but don’t quite know which connection library supports my BT module. I tried them all but no success.

I had tested the Bluetooth->Arduino connection and it works fine using a BT sniffer App (BlueSerial Beta). The Phone and the Arduino can connect and exchange data.

My current hypothesis is that

  • I don’t quite know how success should look like just connecting the App on the phone to a server. What would I see if it worked? Is this a port issue, is this an Android / Version issue? My Wifi etc are fine (of course).
  • The specific BT module I am using, not sure whether its supported. It works fine for other projects on Arduino and I had assumed that all Blynk needs is a working serial port but maybe not?
  • I read that Blynk’s BT features are beta and flaky. If this is so, does anyone have an alternative for Blynk? Maybe Cayenne?

Many thanks in advance


Hardware: Arduino Uno RobotDyn clone
Bluetooth: JY-MCU / ArcBotics
IDE: 1.8.2
Phone: Samsung S5 without SIM card (wifi only). SM-G900V
Android version: 6.0.1 with kernel 3.4.0

Keep searching this forum for other BT related topics… Yes, BT/BLE still seems a bit BETA and can be a bit tricky at times to get working smoothly… (but Cayenne is a poor clone of Blynk… so that is a step backward :stuck_out_tongue_winking_eye: ) The prefered connection method is WiFi, either via ESP as WiFi shield to an Arduino MCU or preferably as standalone ESP MCU.

https://examples.blynk.cc/?board=Arduino%20Uno&shield=HC05%20or%20HC06&example=GettingStarted%2FBlynkBlink

This link (above) should be the correct example sketch for your hardware… But remember to create an account in your App, make a project (include the BT Widget) and use your Auth code in your sketch.

BT doesn’t use the server as a go-between as is normal:

APP (PHONE) <-network-> SERVER <-network-> DEVICE (UNO)

Rather it works directly with the UNO (through the BT link)… but the App still needs a server connection:

SERVER <-network-> APP (PHONE) <-BT/BLE-> DEVICE (UNO)

With BT, you DO need to FIRST pair the module with your phone, then connect to the module using the BT Widget in your App project before it will work properly…

http://docs.blynk.cc/#widgets-other-bluetooth

Thanks @Gunner, much appreciated. Was ready to throw in the towel. I want to like Blynk but it has to work for me. Unfortunately, WiFi is not an option.

I followed your steps but so far no success. The phone is paired with the BT module. With another Arduino sketch, I can send data without issues.
In the Blynk App, I select the “BLE” widget from the list. It does not allow me to connect to the paired JY-MCU device, it scans but doesn’t recognize it. The other widgets are labeled a little odd, there is a “Bluetooth” widget which says “Doesnt work with BLE. Yet.”. So, what is it, does Blynk work with BLE or not?

In addition the JY-MCU may not be ideal, happy to purchase another BT/BTLE module if someone can recommend one.

Many thanks again, I keep trying. Appreciate the help!

hi!

unfortunately blynk bluetooth and ble functionality doesn’t seems to work well (if at all). some time ago i did lots of experiments regarding bluetooth, tried at least 4-5 different bluetooth / ble modules and different mcus. some of them worked very unreliably some of them not at all.

despite lots of debugging, never figured out what the reason was, so i ditched all the bluetooth project and replaced with 433mhz rf modules.

regarding cayenne: afaik, they actually using the blynk library and server (both are open source) and they just built the app. so, i do not think it could have better bluetooth functionality. but i never tried.

the best long term stability with blynk and biggest info base is with esp8266/8285 modules + wifi. this use scenario is where blynk actually shows his strengths.

i also searched other alternatives for bluetooth connectivity, but didn’t find anything usable.

Hi @wanek, thanks for the advice. This does not sound good, I am a little surprised. I would have assumed that BT/BTLE is the primary mode for an arduino to communicate with a phone app.

My application will have to run outdoors, often without internet connection (e.g. on a boat). Data acquired from the arduino will be collected by the App, then uploaded (as data connection is available) to a cloud. I was looking to Blynk to allow me to write a quick/dirty App for that.

Sounds like this is the end of the road for Blynk for me and I’ll look for alternatives. Advice is very welcome!

considering the above use case you explained, even if the ble module could work flawlessly with blynk, you couldn’t use it without internet, because in the current version the blynk app is designed to use internet for authenticate the hw.

what i’ve done and it could work really good in your case too, is to create a “local” blynk server with wifi. thus you can use blynk + wifi in full potential, no internet needed!

read this:
Setup PI ZERO W as ultra portable server and AP (tutorial)

That seems strange… First, the BLE Widget (Bluetooth low energy v4.x) will not work with your module, which is BT (Bluetooth 2.1).

As for why the BT Widget is not available… either really old version of App or you are using an IOS phone (they don’t support BT AFAIK)… but you say you are using Android?

Check your App version.

@wanek is correct… The App still requires server access, both for login authentication and for the fact that all your projects are stored on the server, NOT in the App. So unless your phone has internet on the boat, you will need a portable Local Server solution.

Thanks guys, am showing my ignorance. I had convinced myself that the JY-MCU was BLE (its not) and that that one could use Blynk without access to the internet. Well, you live and learn.

Bottom line, Blynk won’t work for me, instead of setting up a BT/BLE link between an arduino and a smartphone or building a local server (interesting idea though!), I’ll go back to what I know how to do and use Xbee between two arduinos and figure out how to get it into the cloud later.

Thanks for all the help here and good luck! I hope I can come back some day and use Blynk, the concept is pretty cool.

Not sure what you intended to do, but sorry Blynk doesn’t seem to work for it… Blynk is primarily an IoT application… BT/BLE (by it’s design as a local, short range, interface) is not… which is why WiFi is the predominant interface option in Blynk.