Service and Characteristic are not published by the connected device { Arduino Nano 33 BLE Sense }

Helo All, i am create the app with inventor but when i using my app i have the problem like this :

Can anyone help me, please !

Hello Iclin, the error message is pointing to an issue communicating with your Arduino (Sketch). Check that the declared characteristics in the Sketch are the same as those in the App and that they are bonafide BLE characteristics values.

thanks ChrisWard.

i have checked and the characteristics are the same. i dont know when i click monitoring and then like that. do you think the block I made is correct?

when i use nRF app , app can display data from system.

We would need to see your Sketch to see that it is sending correctly to the App and that the App will receive correctly. However, sorry to say but we have had a lot of trouble with the Nano 33 Sense. Although it was released in 2018, it still has incompatibilities with the Arduino Libraries and we have struggled to get it work with App Inventor.

To upload an image of your Blocks (not necessary because this time we will look at your uploaded Project):

Right-mouse in the Blocks work area and select "Download Blocks as image"

To upload your Sketch, re-name the extension from .ino to .txt

this is my block, can you see the problem from my block ?

Hello Iclin

This is quiet an ambitious Project. It would pay you to make a very simple "Hello World" Project first to get things going.

Where did you get the Sketch from? It has a never-ending loop on BLE.begin() failure, if you turn that inside out you could have more elegant code that does not lock-up.

Also:
1)You want to send data to the App, dataService characteristics necessary, not greetings..
2) Try a baud rate of 9600.
3) There is a lot of bad practice in the Sketch - in particular, declaring variables in the Loop! Declare them all together at the top of the code.
4) [bug] Your values for Serial.print() must not include a \n (newline), instead, use Serial.println().
5) The Loop is controlled via elapsed milliseconds (very good). Try 1000 to begin with. Note that elapsed time between sending data should be as long as is practical. The human eye cannot tolerate fast changing values. From the nrf App screen, I can see your data could run out of allocated memory.
6) BLE.setLocalName() - the name should be max 8 characters

The App is very reliant on the User pressing the right buttons at the right time, prompted by the messages in a Label. It's your code, so make sure you pay attention to that Label :zipper_mouth_face, but it's possible to touch the buttons more than once, which could lead to failure.

I can't see your declared characteristic values in the Blocks shown - in addition to being identical in both the App and the Sketch, they have to be the right ones for App Inventor to collect the data correctly.

oke, i will try to fix my sketch. thanks for hep me @ChrisWard. :slight_smile:
I am permission to delete my sketch because I'm making a final project and I can't have simmiliarity on the internet. very thank you. if i can fix my project i will send my block in here

Well that's not really fair on you, because everyone has to use the same library with the Nano and therefore all solutions for a given data collection set would be nearly identical. On the App Inventor side, it is similar - some Apps have stage-by-stage buttons as per your design and others automate everything between start and end. So again, only two different approaches and the code for each would be practically identical. This has much to do with the standardisation of Bluetooth, it dictates how the code needs to be to work with it.