Holiday Weekend Firmware Update

Notes on the new Pluot firmware that went live on September 5th.

Kwindla Hultman Kramer
Everywhere, by Pluot
6 min readSep 8, 2016

--

At Pluot, we make video conferencing tools. Our goal is to offer the highest quality, easiest to use, and most affordable video collaboration products. You can use our software any time, for free. And you also can get free Pluot hardware for your TV. Plug Pluot hardware into your TV for always-available, friction-free presentations & remote collaboration on a big screen.

This past weekend, we released a new version of the low-level software that runs on each Pluot — the firmware. Below we talk about what firmware is, and describe what’s changed in the new version: improvements to our audio stack, updated support for 4k TVs, additional logging and call statistics, and updates to the boot process. Thanks to all our customers for providing feedback and suggestions about these things!

Firmware. What’s that?

Our Pluot device — like many hardware products these days — runs several different kinds of software. At a high level, we divide these into firmware, which is installed locally on the Pluot, and application code, which is downloaded from our servers each time you join a video call.

When you press the power button on your Pluot, the firmware is doing the work of starting up the device, initializing all the on-board hardware, checking to make sure the speaker/microphone and camera are plugged in, configuring the network connection, and finally connecting to our servers in the cloud. Our firmware is a specially tailored variant of the Linux operating system.

The application code is downloaded from our servers and takes over to manage the tasks you actually use your Pluot for: screen sharing and video calls. Everything you see on screen once a Pluot is fully up and running is displayed by the application-level code.

We update the application code every few days to add features, fix bugs, and improve the user interface. That’s easy to do because it’s downloaded and “restarted” each time it’s used.

The firmware is a little trickier to update, because it’s always running in the background, managing low-level, hardware-specific tasks on a Pluot box. You have to reboot your Pluot for new firmware to take effect. Also, because the firmware is responsible for booting up the Pluot and connecting to the network, a major bug in a firmware update could cause real problems!

So we update the firmware less often (and test very heavily each time we push new firmware).

The September 5th firmware: features and fixes.

This is the first time we’ve updated the firmware since we declared Pluot “out of beta” and publicly available, in March. So it’s a milestone!

Every Pluot periodically checks if new firmware is available and, if so, downloads it, saves it, and sets up to use it next time the Pluot is power cycled. If your Pluot is online, it will have downloaded the new firmware, so feel free to reboot to make use of the new features and bug fixes.

Here are the major things we added and changed in this release.

Audio stack improvements

Our biggest source of customer complaints over the past few weeks has been “sound is not working.” We traced this back to two issues.

First, if you ever unplugged and replugged the Jabra speaker/mic that comes with your Pluot, you had to reboot to get sound working again. When we launched Pluot in March we weren’t happy about this and planned to fix it, but we also didn’t anticipate that it would be a problem very often. Our beta testers tended to leave their Pluots and speaker/mic devices in one place and not unplug things very often. It turns out, though, that with a greatly expanded user base, we’re seeing people use Pluots in lots of different ways. Some people move the speaker/mic around a lot, so unplugging and replugging needs to “just work.”

Second, we upgraded both our hardware-level audio drivers and code. You should see improved reliability — fewer or no calls where you lose audio unexpectedly.

In case you are interested, here is an old school ascii diagram of our audio stack:

All those pieces have to work well together for Pluot to give you the best possible audio experience. In particular, the Jabra 410 speaker/microphone hardware that we ship with every Pluot has excellent echo cancellation, which is really important!

4K TVs

There are lots of new 4K televisions available on the market, at very affordable prices. We got reports from a few customers that they had to fiddle with the menu settings on new TVs in order for their Pluots to display correctly.

An example of a 4K TV issue reported by a customer, tracked down and reproduced by Jami on a Vizio floor unit at Best Buy, and fixed in the new firmware.

Jami went to Best Buy and connected a hard-working Pluot to every TV on the sales floor. We bought several for our garage test lab.

HDMI testing. There are 15 official HDMI standards/revisions!

Pluot now displays correctly on every TV we’ve tested. We do expect to see occasional issues crop up — there have been 15 revisions of the HDMI specification since HDMI 1.0 in 2002. Manufacturer implementations aren’t perfect. So if you have a TV that your Pluot doesn’t work perfectly with, please let us know and we’ll figure out what’s going on and fix it.

More logging and call statistics.

Our goal is for every Pluot call to always work perfectly. But when that doesn’t happen, we want to help out and improve your Pluot experience, as quickly as possible.

We’re always available via the live chat button that’s on every Pluot interface screen, or at help@pluot.co. Please don’t hesitate to reach out. We can often diagnose problems live, while we talk to you, and suggest fixes. (For example, we might be able to tell that your Wifi is dropping packets, in which case we would recommend that you either move closer to your router, or plug into Ethernet.)

We added more logging to this firmware release, to further improve our ability to diagnose problems and suggest fixes.

Updates to the boot process.

Most of our customers leave their Pluots on all the time. But we know that when your Pluot is turned off and you need to turn it on, you want it to power up and be ready for action quickly.

We speeded up the boot process by a few seconds, in this firmware release. We also made some of the boot screens prettier and more informative. Previously, we displayed a blank, black screen while we downloaded the Pluot application code at the end of the boot sequence. That was confusing. (“What happened,” you’d probably be wondering — “did my Pluot turn itself off?”)

Now your Pluot tells you that it’s “thinking,” while it finishes up the final hardware initialization steps and downloads its application code.

Your Pluot now tells you it’s “thinking,” and then “thinking a little more …” while it connects to our servers and downloads application code at the end of the boot process. This is an improvement over just showing you a blank screen!

Please reboot your Pluot!

If you haven’t turned your Pluot off since September 6th, please do that at your earliest convenience. Next time your Pluot powers up, it will boot using the new firmware.

And, as always, please let us know if you have any problems, questions, suggestions, or feature requests.

--

--