Azure SB Lite : access Azure Service Bus using AMQP on .Net Micro Framework

Hi all,

I have just uploaded on CodePlex my last project : Azure SB Lite (https://azuresblite.codeplex.com/)

I don’t know if you know the great AMQP .Net Lite library from Microsoft (http://amqpnetlite.codeplex.com/) that is great to access Azure Service Bus from .Net Micro Framework using AMQP protocol (avoiding HTTP).

To use AMQP .Net Lite library you need to know all AMQP protocol concepts like connection, session, link and so on.

On PC you can use Service Bus package from Nuget that exposes you a simplified API to access Azure Service Bus.

With my Azure SB Lite you have the same interface but using AMQP .Net Lite library under the hood. In this way you can access Service Bus in the same way either on PC or embedded device with .Net Micro Framework.

I hope you’ll enjoy it !

Thanks,
Paolo

12 Likes

@ ppatierno - NIce. Are you planning to have Nuget packages for the NETMF library, as you did with the M2MQTT library?

@ devhammer sure ! I’d like to have a more stable release first :slight_smile:

Feedbacks will be appreciated !

Paolo

I’m a bit pegged for the next two weeks then I’m planning on taking this for a test cruise. What I’d like to do is a AMQP demo like the MQTT demo I did where it was about sending messages between devices.

1 Like

I’m in the process of forking this source to create an ESP8266-friendly version. If that works out, I’ll put that up as as a Nuget package. It’s still early in the process, so I can’t say when I’ll finish or even if the outcome will be good, but I definitely want to see this working against the ESP block.

1 Like

@ mcalsyn you need to fork the underlying AMQP .Net Lite library to adapt the TCP transport layer to use ESP8266.
You don’t neef to do any changes in Azure SB Lite. The only one could be use the reference to your forked AMQP .Net Lite friendly with ESP.

@ Duke Nukem … look forward to see your great video !

Yup, but what I am doing is creating a single repo with two git submodules so that you don’t have to enlist in two projects, and so that compatible versions of the two projects will stay aligned. It looks like the changes will be minor, but I am exercising my git-fu right now and have not gotten into the code deeply.

1 Like

Current status :
There is a fork of amqpnetlite at GitHub - DotNetOpenAutomation/amqpnetlite: This is a fork of the amqpnetlite project from Codeplex. It exists here so that I can create a branch for serial-wifi hardware.. It has a ‘serialwifi’ branch where I am adding the serial wifi support.

There is a fork of azuresblite at GitHub - DotNetOpenAutomation/azuresblite. There is a ‘serialwifi’ branch here too, but I don’t expect to do anything beyond a ref change as ppatierno mentioned. However this repo has amqplite as a submodule so you can build from within a single project and from a known-good checkpoint. Just select the right branch before building.

Normally, I would like to offer a pull request to bring these changes back into the original projects, but that may be difficult because the submodule ref will be pointing to the wrong place for codeplex and the changes to amqpnetlite will be specific to my particular flavor of serial wifi stack (published earlier on codeshare) and not suitable for a generic lib like amqpnetlite.

I went through all these source-code gymnastics so that I could easily update the serial-wifi versions of amqpnetlite and azuresblite whenever changes come into the main versions on codeplex.

In any case, I will publish a nuget package with azuresblite for serial wifi when that work is finished.

2 Likes

(non-)progress report : The amqp library appears to be a bit on the fat side for a Molecule.Net Oxygen and GHI Cerbuino, and when I got my Spider, I neglected to get Gadgeteer breakout boards so I can’t attach my ESP8266 Neon modules (yet). I’ve made changes to the code, but haven’t been able to test anything. Cables are on the way and I will update here when I either break down and canabalize one of my kit cables, or when the package arrives from GHI.

In the meantime, making progress on AllJoyn and a tutorial on Azure Mobile Services for serial wifi on Oxygen and Neon.

1 Like