This app is using BLE to talk to an HM-10 module on arduino. When I scan, I find my device. When I connect, it reports that it is connected. When I try to send a string I get the error: “Can’t write the characteristic provided”.
I attached screen shots of my block, lightblue screen shot, error message.
I used lightblue to find the Advertised Service UUIDs. Is that the correct ID?
You need to ensure the device has READ, WRITE characteristics, and possibly NOTIFY and INDICATE.
You normally have separate UUID characteristics for TX and RX.
In you first UUID I assume that is the service UUID, you may also need additional ones so add TX and RX characteristic ids as below, I’ve indicated the first block, keep the rest the same.
ISSUE:
I can’t get any value in the label except a simple comma from Device Names when I do a device scan
BACKGROUND
I have a design that I implemented in AI2 and Android Studio but there are many features that ThX has that would expedite my schedule. So, I made the transition.
I’m using a ESP32 with BLE.
The issue that I’ve had for the last 2 days is that I can’t get past the initial scan…possibly you could lead me in the right direction.
I’ve created a very small test program. The Design is a scan button and a label, that’s it. The blocks section is basically what you have in your design, that is:
That’s all there is to the test app, there is no more.
Question
when you do a scan with the above block do you see device names in the lbl_BlueToothCon?
Use a list to hold the returned devices, a list will be populated with BLE as text, some empty entries I assume are standard Bluetooth.
I am currently working on a controller that I have produced for Android, much simpler and better handling, there is no disconnect, which means that the device you are connecting to has to be reset to clear the connection. Big omission in my opinion, you should be able to gracefully disconnect for any device.
From [device names] (a list viewer) set text to [Device Names]
This issue was causing me so much grief, it would be great if they explained that the returned values could be directly input to a list viewer.
And they’d like me to spend $200 for a limited program generator. Maybe if they fixed these basic options, or at least give a time line for such.
I can connect, but cannot send data as it refuses to accept the Characteristic ID
Ive added a text to speech to give audible feed back, you can ignore those.
The important line is in the then do last line to populate the device_list text items.
place a list viewer on the screen first, then in blocks you can populate it.
I’m having this issue as well “Can’t write the characteristic provided”. Its odd how i can’t find any forum post of people having these issues, So i’m either missing something or there is a massive void in forum post.
#include <bluefruit.h>
#include <Adafruit_NeoPixel.h>
#define NUM_LEDS_CH1 160 // Number of LEDs in channel 1
#define NUM_LEDS_CH2 160 // Number of LEDs in channel 2
#define NUM_LEDS_CH3 80 // Number of LEDs in channel 3
#define NUM_LEDS_CH4 80 // Number of LEDs in channel 4
#define NUM_LEDS_CH5 60 // Number of LEDs in channel 5
#define DATA_PIN_CH1 13 // Data pin for channel 1
#define DATA_PIN_CH2 11 // Data pin for channel 2
#define DATA_PIN_CH3 8 // Data pin for channel 3
#define DATA_PIN_CH4 6 // Data pin for channel 4
#define DATA_PIN_CH5 4 // Data pin for channel 5
Adafruit_NeoPixel strip_ch1 = Adafruit_NeoPixel(NUM_LEDS_CH1, DATA_PIN_CH1, NEO_GRB);
Adafruit_NeoPixel strip_ch2 = Adafruit_NeoPixel(NUM_LEDS_CH2, DATA_PIN_CH2, NEO_GRB);
Adafruit_NeoPixel strip_ch3 = Adafruit_NeoPixel(NUM_LEDS_CH3, DATA_PIN_CH3, NEO_GRB);
Adafruit_NeoPixel strip_ch4 = Adafruit_NeoPixel(NUM_LEDS_CH4, DATA_PIN_CH4, NEO_GRB);
Adafruit_NeoPixel strip_ch5 = Adafruit_NeoPixel(NUM_LEDS_CH5, DATA_PIN_CH5, NEO_GRB);
BLEDis bledis;
BLEService ledControlService = BLEService(0x180A);
BLECharacteristic patternChar = BLECharacteristic(0x2A57); // Pattern selection
BLECharacteristic colorChar = BLECharacteristic(0x2A58);
Hello @rhino-led
Thank you again for your patience. I would like to let you know that we have now officially released a fix for this bug.
Please keep in mind that you may need to do a hard refresh of your browser for the changes to take effect in your project. If you experienced any of these issues on the Thunkable Live app, you will need to update to the latest version through the App Store and/or Google Play Store before any changes will occur. If your downloaded or published app is affected by any of these issues, you will need to re-download or re-publish your app for these changes to take effect.