cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 4 MCU

FaBi_2763241
Contributor II

Dear all,

I 'd like to read characteristic value (say a sensor) from any of the peripheral devices according to their store address.

In a similar method of writing to a specific peripheral, could it be feasible with the same directed methodology used in the project, relaying the data back from a addressed peripheral to the Cysmart app?

Thanks

F

0 Likes
Reply
1 Solution
GyanC_36
Employee

Hi,

   These examples available for PSoC 4 BLE in Github are based on custom BLE mesh approach and were developed before Mesh specification was out by SIG. These examples are not compatible to standard BLE Mesh spec and doesn't have SIG defined message format.

If you are looking for standard BLE Mesh examples , please visit the below link.

https://www.cypress.com/products/ble-mesh

-Gyan

View solution in original post

7 Replies
GyanC_36
Employee

Hi,

    Data can be transferred from BLE Peripheral to BLE Central ( Cysmart) in forms of Notifications or Indications. Please refer page #66 of below Application Note for possible data transfer operations between a Client/Central and a Server/Peripheral device.

            https://www.cypress.com/file/141171/download

The project you mention works as both Client/Central and Server/Peripheral role to communicate between different nodes and you can perform the data transfer in any of the forms ( Read/Write/Notification/Indication) mentioned at page #66 of above application note.

-Gyan

FaBi_2763241
Contributor II

Hello

I will look into it , the trick in this case is to relay it back to the client through the network of nodes.

regards

Fausto

0 Likes
Reply
FaBi_2763241
Contributor II

I figured some logic to reach a node to request notifications:

from client app:

write a packet of 3 bytes to a new custom characteristic, that is the destination address and a flag to pass to CCCD.

if address_rx mismatches the node_address of server:

switch role to central , scan and connect to relay the same packet to a neighbour

if address_rx matches the node_address of peripheral:

pass the flag to the CCCD of that node to enable notifications

but how would the notifications be routed back to the client app from that node?

any hint if that can be done?

Thanks

0 Likes
Reply
GyanC_36
Employee

Hi,

   Now the last node which wants to send notification should behave as peripheral and connect to the Client App to send notification.

Here , the client app should scan and connect to that node.

-Gyan

0 Likes
Reply
FaBi_2763241
Contributor II

Hello,

that I can do already but it is the same as a normal point-to-point BLE connection, what I was hoping to achieve is getting the message remotely by hopping from a node far in the range back to the client app, but the client app can connect only to one of those close in range...

I don't know how it works in the compliant mesh v1, but my project uses psoc 4.

Thank you.

0 Likes
Reply
FaBi_2763241
Contributor II

It might be an idea to add a source address in the message along with the destination address, that seems the approach taken in the mesh specs by Bluetooth SIG.

0 Likes
Reply
GyanC_36
Employee

Hi,

   These examples available for PSoC 4 BLE in Github are based on custom BLE mesh approach and were developed before Mesh specification was out by SIG. These examples are not compatible to standard BLE Mesh spec and doesn't have SIG defined message format.

If you are looking for standard BLE Mesh examples , please visit the below link.

https://www.cypress.com/products/ble-mesh

-Gyan

View solution in original post