MQTT Endpoints

1,966 views
Skip to first unread message

Carlo Dimaggio

unread,
Jul 31, 2015, 4:45:03 AM7/31/15
to Kaa project
Dear all,

is it possible to connect MQTT endpoints to kaa server without using a gateway Kaa SDK?

Someone uses Libelium (www.libelium.com) endpoints?

Regards,
CD

Andrew Kokhanovskyi

unread,
Aug 6, 2015, 9:07:24 AM8/6/15
to Kaa project
Hi!

I assume that by the "gateway SDK" you mean the Kaa endpoint SDK? In that case - not really. Kaa is designed to provide much more functionality for the endpoints than just MQTT. You can use MQTT as a transport level, if you like, but you would still need all of the SDK functionality in the endpoint to enable all of the Kaa services.

As far as Libelium: we looked at it, the C SDK integration should be very straightforward, but it is not readily available yet.

Andrew

Carlo Dimaggio

unread,
Aug 12, 2015, 9:17:34 AM8/12/15
to Kaa project
Hi Andrew, thanks.

However I would like to understand if there is a way to integrate different types of sensors in which I am unable to install custom code.
I have a WSN based on Zigbee protocol that sends measurements through a gateway that uses only MQTT over websockets or FTP csv files. Is there a way to integrate an MQTT broker to kaa platform (i.e. Mosquitto or HiveMQ) or an FTP engine? Should a Kaa endpoint (with SDK) be a bridge between those protocols (i.e. a kaa endpoint with an embedded mqtt broker)?
I don't want to focus on sensors but on the central platform and the event handling.

Regards,
Carlo

Andrew Kokhanovskyi

unread,
Aug 13, 2015, 5:33:28 PM8/13/15
to kaapr...@googlegroups.com
Hi Carlo,

thanks for a more in-depth explanation, now I see what you are looking to achieve. Yes, integrating Kaa into the gateway (which would simultaneously be an MQTT broker or an FTP server) is certainly possible. Even though Kaa works best when the SDK is directly integrated into the ultimate endpoint (sensor, MCU, any device) - providing numerous services to the device firmware / application, this is not always possible.

This is the most typical deployment scenario for Kaa:



The alternative option is when you integrate Kaa SDK into a gateway (we call it "actor gateway"). The actor gateway instantiates an endpoint actor per each physical device. The actor handles communication with the actual device and presents itself to the cloud as a virtual representation of the sensor, etc. Here is how this looks like:



Please let me know if this helps and if you have any further questions.

Andrew

Sumanth

unread,
Jan 28, 2016, 8:00:06 AM1/28/16
to Kaa project
Andrew,

  Unable to see the images from your post can you attach them as files?

Thanks,
Sumanth

Andrew Kokhanovskyi

unread,
Feb 8, 2016, 8:20:22 AM2/8/16
to Kaa project
Wow, weird... Sorry. Fixed in the post above.

There is also an update on this topic. We are working on the generic protocol adaptation and interpretation framework for Kaa that will allow connecting devices over MQTT, CoAP, and other protocols directly, without embedding the Kaa SDK. This is tentatively planned for Kaa Banana Beach. Stay tuned!

AK

Andrew Kokhanovskyi

unread,
Feb 8, 2016, 8:20:33 AM2/8/16
to Kaa project
Wow, weird... Sorry. Fixed in the post above.

There is also an update on this topic. We are working on the generic protocol adaptation and interpretation framework for Kaa that will allow connecting devices over MQTT, CoAP, and other protocols directly, without embedding the Kaa SDK. This is tentatively planned for Kaa Banana Beach. Stay tuned!

AK


On Thursday, 28 January 2016 15:00:06 UTC+2, Sumanth wrote:

Andrew Kokhanovskyi

unread,
Feb 16, 2016, 6:13:42 AM2/16/16
to Kaa project
Some extra comments and details in this thread.

AK

axuan

unread,
Feb 27, 2016, 5:35:23 PM2/27/16
to Kaa project
Dear Kaa team,

I am currently trying out the actor gateway with multiple endpoints inside a single Java app. I'm encountering issues.

Using the generated java SDK, I spawn multiple KaaClient instances, each filling out distinct profiles. When uploading logs, they all have the same endpoint key hash. Further, since 0.8.0 it seems a "state.properties" file is generated on first run which looks like so:

#Sat Feb 27 23:22:35 CET 2016
attached_eps=
PROFILE_HASH=pJW3NK5inhwOS/cVOb7XmNZSNhQ\=
properties.hash=7CZJUduLO742de10RaMg7VbHJmw\=
ENDPOINT_TOKEN=00e5a11b-9e59-46b4-83a1-26bc93525996
topic.list=
event.seq.num=0
nf_subscriptions=rO0ABXNyABFqYXZhLnV0aWwuSGFzaE1hcAUH2sHDFmDRAwACRgAKbG9hZEZhY3RvckkACXRocmVzaG9sZHhwP0AAAAAAAAB3CAAAABAAAAAAeA\=\=
is_registered=true

I've noticed that a second "state.properties_bckp" is there too, highlighting that the second KaaClient instance is overwriting the first. What am I missing in regards to managing multiple -- distinct -- endpoints inside a single actor gateway?

Best,
Christopher

Denis Kimcherenko

unread,
Feb 27, 2016, 6:04:48 PM2/27/16
to Kaa project
Hi,

You need to specify the separate working directory while creating each instance of a Kaa client.
The 'working directory' feature was added to Java SDK in Kaa 0.7.4.

Best regards,
Denis

axuan

unread,
Feb 27, 2016, 7:19:58 PM2/27/16
to Kaa project
Hi Dennis,

This fixes my issue. Thank you for your prompt help, it is greatly appreciated!

Best,
Christopher

Mahdieh Asiaban

unread,
Oct 23, 2017, 2:03:38 AM10/23/17
to Kaa project
Hello Mr. Andrew,

Unable to see the images from your post, please fix it as soon as possible.

Thanks

Taher Kawantwala

unread,
Apr 19, 2019, 6:11:00 AM4/19/19
to Kaa project
Hello Denis Kimcherenko,

Im Exploring Kaa IoT Community Edition for one of my IoT Project. I need to connect multiple Endpoints using A Gateway(RaspberryPi)

How to register Kaa Endpoints to Kaa clustor using Gateway?  

A little help will be appreciated.
Reply all
Reply to author
Forward
0 new messages