Intel_Galileo

How to post to a Microsoft Azure Service Bus using Intel Galileo

In my previous post, I walked you through on how to Install Python Azure SDK on Intel Galileo.

Let’s now put that Python SDK into some work and post something to an Azure Service Bus Queue.

It’s really rather straight forward:

The only thing is to Base64 encode your string to be compatible with the other Azure SDK’s, in case you want compatibility with WIndows/Android/iOS etc.

But before we run this, you would need to set the on board clock on the Intel Galilelo, otherwise you will get this error:

So, they easiest way is to synchronise the clock against a time server:

You will need to do this every time after you have shut down the board, since the clock is not battery backed up. So it might be a good idea to put this in a script and have it run at startup.

There you have it.

 

 

Intel_Galileo

Install Python Azure SDK on Intel Galileo

This  post walks you through the steps to install Python Azure SDK on Intel Galileo.

 

Requirements:

  • An Intel Galileo board (Gen 1 or 2)
  • The full Linux boot image
  • Internet connection (either using the built in Ethernet port or using a mini-PCIe WiFi board)
  • CURL with SSL/TLS support

Step 1 Get the big Linux image

You will need to boot in to the full Linux image, which you can download from Intel’s  download page.

Step 2 Boot into Linux

Extract the contents of that compressed file onto a SD card and boot the Galileo from it.

Step 3 Install prerequisites

SSH into your Galileo board as root (no password by default)

Make sure the latest CURL and OpenSSL are installed

latest_installed

The Linux image I was using at the time of this writing did not have any Root CA certificates installed. Sure, one could bypass certificate validation using Curl’s -k option, but that’s cheating.

First, create the default certificate directories:

Download the latest CA certificates

(Yes yes, I know about -k, but this is a catch 22 moment, we need to get the certs down  from an SSL/TLS connection in the first place)

Step 4 Download and install PIP

Download and install the Python PIP

install_pip

 Step 5 Install the Python Azure SDK

pip_install_azure

 

 Step 6 Verify

Now we can verify that Python can access the Azure SDK

 

verify_azure

There you have it. So, what cool things can we do with Microsoft Azure and an Intel Galileo? Let me know in the comments below.

Reset button on the Blend Micro

Arduino based Blend Micro gives error: Device Descriptor Request Failed in Device Manager

So I started to fiddle around with the Red Bear Lab Blend Micro. All seemed ok, but after I had uploaded a sketch, the device stopped being recognized properly.

The Device Manager in Windows gives me an error message saying Device Descriptor Request Failed:

Device Descriptor Request Failed

Device Descriptor Request Failed

Well, several other blog posts suggests that re-installing the device drivers will help. But that’s really not helping.

The issue seems to be that the device is not responding and communicating properly with the connected USB host for whatever reason when the sketch is running. Let’s see if we manage to revert back to an empty default sketch. The Blend Micro device has a window of 8 seconds from booting until it starts running the loaded sketch. During that time frame, we should be able to upload a default sketch.

First, make sure that the Blend Micro is the selected board in the Arduino IDE:

Blend Micro is selected

Blend Micro is selected

Prepare a sketch with the base minimum code:

Then reboot the Blend Micro device by pressing the reset button.

Reset button on the Blend Micro

Reset button on the Blend Micro

The timing can be critical, so you probably have to try multiple times to get it right. A tip is to click the Upload first, wait a half of a second and then press the reset button.