Ble thunkable app on android crashes when receive data fails

I have the BLE module working fine when connected to my Arduino app. However, if the Arduino ever fails to respond to a read request then the thunkable app simply crashes. Is there any way to detect that a receive failed? The same thing happens if the BLE connect fails. It would be nice to be able to handle failure exceptions, but I haven’t seen anything yet about how to do that with the BLE module.

Hey @martinnohr76p3z9, :wave:

welcome to the community! We’re hoping to dedicate a bit of time to the BLE component in the coming weeks, can you share a screenshot of the blocks you are using and which platform (iOS/Android and Installed or Live Testing) you are on that would be really helpful for us.


This is the project.

I’m using Android for testing, on a Samsung Galaxy 10.

A really useful addition would be:
A test to see if the BLE connection is live or not.

BTW, I’m a recently retired software engineer that worked on embedded systems for many years. I’ve also done some website design and Windows applications/services. I have been a beta tester for a few products over the course of my career.

I was starting to write the app I needed in Android Studio when I stumbled across Thunkable. I decided it was interesting enough to try. I think it has great potential but from a software developers point of view it does lack a few things.

  1. Is there no undo command? I didn’t see one and ^Z doesn’t work.
  2. It is ok to make copies on the web, but many of us would feel much safer if we could make local copies of our work.
  3. Integration with GitHub, VCS, or BitBucket, etc would also be great, but having done that before I know it is not a trivial task. However, allowing local copies of our project would allow for archiving versions.


I sent you the link to the project, but here is a screen shot of the part that causes the crash,

You can remove the get current filename function and it still crashes if the BLE device is not available.
That function executes a receive call from BLE. I have removed it and the app still crashes when the BLE device is not there. If it would be really useful I can send you a programmed Arduino that can be used for testing. It is actually an ESP32 with the built-in Bluetooth. Or it you have a Heltec ESP32 Devkit with the OLED display I can just send you a link to the GitHub repository.