What's New in TinyPilot's November 2021 Update
November 23, 2021
TinyPilot's latest release focuses on performance, stability, and security.
There are no new features in this version. As much as we love adding useful features, we focused on improving TinyPilot's overall quality based on feedback from our users.
Improved macOS compatibility
TinyPilot uses the Linux USB gadget driver to emulate USB devices. This is a mature and widely-used driver, but some target systems fail to recognize it properly.
Over the past few months, users with Apple Mac systems have reported inconsistent behavior with their TinyPilot. Their macOS systems would fail to accept keystrokes from TinyPilot during the lock screen or recovery mode, or keystrokes would only work after plugging in a secondary keyboard.
Recent changes to the Linux USB gadget driver have improved compatibility, so this TinyPilot update integrates those fixes. macOS users should now see their hardware recognize TinyPilot at the lock screen and during recovery mode.
Special thanks to Maxim Devaev for his work investigating this issue and contributing fixes to the Linux kernel.
Faster video and mouse performance
We know that performance is important to TinyPilot users, especially those who access their devices over the Internet.
A user reported to us that when they configured their video for a lower frame rate, they would occasionally observe their mouse cursor lag for a few seconds:
We discovered two root causes for this behavior.
The first issue was that our request orchestration system was buffering video frames, preventing them from reaching the user as quickly as possible. We solved that with a simple fix to TinyPilot's configuration.
The second issue was in our mouse throttling system. When you move your mouse, you generate dozens of input events per second. TinyPilot processes these events strategically to minimize the number of events it sends over the network.
We previously used a general-purpose, third-party library to throttle mouse events, but the library forced us to choose between performance and precision. In this release, we wrote our own custom throttling logic that optimizes for mouse movement. The result is faster mouse performance, greater accuracy, and lower network bandwidth.
Detection of insecure credentials
TinyPilot devices include SSH access to give users complete control over their devices. The quick-start instructions direct users to change their default SSH credentials after initial setup, but some of our users are so excited to begin using their TinyPilots that they forget to change the default password.
TinyPilot's security screen now warns if your device is still using the insecure default SSH credentials, and it includes instructions for how to fix the issue.
In a future release, TinyPilot's web interface will allow you to disable SSH access entirely to minimize your device's security-sensitive interfaces.
Full changelog
For the full list of changes in TinyPilot Pro 2.3.1, see the changelog.
Updating to the latest version
You can update to the latest version of TinyPilot by clicking System > Update in the navigation bar:
Don't see an update option? For older versions of TinyPilot, SSH into your device and update with the following command:
/opt/tinypilot/scripts/upgrade && sudo reboot
Written by Michael Lynch, TinyPilot Founder and CEO