July Update - All about firmware

Hi Guys,

First I'd like to say a big thanks for the messages of support that I got over the last week or so. I had been feeling quite unwell and I lost a lot of days to it last month. I'm pleased to say that I'm well on the road to recovery now, and I have some new stuff to release today.

The first is the v3.1 firmware, for the Romeo-based OSR2s out there. I was very pleased with v3.0 as a clean total rewrite of the original firmware. I wanted it to be the definitive version, just like the OSR2.1. Unfortunately it turned out to have a couple of bugs. In particular, it would stop responding if used with certain functions on certain apps, for example the random mode on MOSA.

I am pleased to be able to report that I have been able to fix this problem, so I am releasing version 3.1 of the OSR2 firmware with this post. I will package this up with the OSR2.1 and this will become the definitive version of the OSR2. I am pleased about this, because I want to move on and turn my attention to the ESP32 and SR6.

My subscribers who have seen my recent video about microcontrollers will recall that the ESP32 DevKit v1 is a vastly more powerful microcontroller than the Romeo BLE mini v2.0. It is also somehow cheaper and more easily available. Its only downside is that it isn't plug-and-play like the Romeo. However, as the SR6 requires a power bus anyway, I think adopting it is a complete no-brainer.

I have put a lot of hours over the last month into creating an official ESP32 firmware for SR6, which can also be used on OSR2. I will be releasing this later today. I will also be releasing an official ESP32 tray for the SR6 Alpha.
SR6 ESP32 tray, with a power bus.

With the SR6 comes the capability to control high-end servos at their maximum command frequency of 330Hz. This has the potential to make the servo movements a lot smoother, improving the user experience and reducing wear.

In order to take advantage of this I have had to address a problem with "live" commands. The short version of this is that it's no good commanding servos 330 times a second if the target position (live from something like Virt-a-Mate) is only being updated 60 times a second. The result is still a sort of grinding effect or "staircasing", which is not pleasant. I have put a lot of work into resolving this issue, and what I have added into the firmware is an automatic smoothing protocol for live commands. It works great, and requires no external changes.

For my $2 tier I have an inside-look video blog post coming in the next week or so. I've recently revisited some of my oldest ideas because I think I might be able to put them to use on OSR2/SR6. I think you'll find it interesting.

These are, of course, what I wanted to get out in June, and I had some other cool stuff planned for July. I'm going to be playing catch-up and we'll see if I can also get any of that out in the next three weeks or so. 

Happy building!
Tempest