Rob Miles


Rob Miles University Lecturer and Microsoft MVP. And tall.

Blog posts

Self destructing setting storage

It turns out that creating useful embedded devices seems to be around 80% setting storage and management. I’ve created a nice little setting manager that exposes the settings as C structures, stores them in EEPROM and allows settings to be updated via JSON messages or via direct commands. Settings are bound to the process or sensor that needs them and it works well. I thought it might be nice to b… Read more →

Using SSL security with ESP32 and ESP8266

The story so far…..Robert has been trying to connect an ESP8266 embedded device to an Azure IoT Hub, something he has done many times with no problems. Except it no longer works. Having spent a day failing, perhaps it is time for Robert to have some success. Now read on…..Yesterday was not a good day. Today was better. To summarise my problem: I want to use my embedded devices with Azure IoT hub s… Read more →

Azure IoT Hub for Free

Everything I achieved today I achieved before 9:30. It was all downhill after that. But I did achieve quite a bit. I’m making a bunch of connected devices and I want to use MQTT to link them together. I could set up my own MQTT broker on a local Raspberry Pi but that would only work around my house and I want these to work around the world. My weapon of choice for these things is Azure IoT hub whi… Read more →

Fun with Fish Eyes

So I took the Fish Eye Lens for a walk. The hard bit is making sure that you don’t end up with your feet in the picture…. Read more →

It's the hope that kills you...

Today I saw the ultimate in error messages. I wasn’t doing anything particularly adventurous, just trying to play a video file. However, the error really scared me. I wish I’d taken a picture of it. The error said:This video cannot be played. Please try again later. Such evil in 9 words. The video file was eminently playable, this device just couldn’t play that particular format. One of the things… Read more →

New MacBook Air First Impressions

Don’t try and download the PC migration tool from the Apple site. I got this. It is always a bit of a worry when a new device becomes available just after I’ve got paid for some writing. That has just happened with the new MacBook Air. I was thinking of getting a new tablet and this would work out at around the same price once I’d bought a keyboard and everything else you seen to need. I also fanc… Read more →

New Garage Door

We have a new garage door. Hold the front page. Only minutes after I’d told number one wife that the previous door (which was the same age as the house - i.e. very old indeed) was absolutely fine I went outside to fetch something from the garage and one of the door support wires snapped. The effect was most impressive. The door jumped out of my hands and slammed shut. It was as if the thing was po… Read more →

Detecting different ESP devices in Arduino Code

This is one of these “Rob writes a blog post about something so that he can find it later when he forgets how to do it” moments. I’m writing some code using the Arduino platform that I’d like to run on both the ESP32 and the ESP8266. They both run C++ and have a lot in common. But some things are just different. For example they have different commands to ask a device for its unique ID is getFuseM… Read more →

FreeCad Simulator is now on GitHub

I’ve made this horrible hack to make it easier to debug my Python macros that run inside FreeCad and design little boxes. It means that I can use all the lovely debugging features of Visual Studio Code to find out why my code don’t work. The hack takes the form of a few simple Python objects that fake part of the FreeCad ones and allows your macros to run in any Python environment you fancy. If yo… Read more →