I am very excited to introduce the ability to synchronize a filtered version of all your robot data to the cloud and access the data both programmatically and with clean visualizations from anywhere.
Freedom provides scalable sensor, log, and full-stack monitoring of robots in a clean package designed for one to hundreds of thousands of devices and everything from a few low-bandwidth sensors to multiple lidar and video streams with hundreds of topics.
Logging Has Been Extremely Challenging At Scale
Before we get into the details, why does this matter?
While Protobuf, ROS, and many other process control and message passing frameworks work well for a single device when you have multiple terminals, local 3d viewers, and custom scripts running, having high quality development tools to easily aggregate, store, search, and visualize the high-dimensional data of robots has been difficult.
On the flip side, standard IoT remote frameworks such as MQTT or systems hosted by AWS and Azure are focused on transactional and low bandwidth data such as temperatures and event triggers. These frameworks are not built to capture full telemetry due to the reality of real-world connectivity: weak cell connections, shared data, caps in connectivity, crashes because of battery failures, etc.
Therefore, companies like Tesla, Fetch Robotics, Cruise, NVIDIA, and others have had to build full, end-to-end infrastructure just to get logs, location data, and the state of their devices back to a central location. They then have to build out viewers, analyzers, APIs, and other tools just to start understanding their system as it is deployed. Usually, teams outgrow their current systems as they scale. Their teams are trying to be efficient with resources and time, so when they have 20 robots, they are not designing for 100, and at 100 robots, they may not yet be thinking about global distribution.
We spoke with the visualization team at one of these companies and they said they were spending about $2M per year on salaries just for visualizing and using the data that was captured by their fleet.
What is interesting about all of this is that the functionality each company has to implement is basically the same across industries. Whether you are rolling out a new manipulator, a delivery robot, or a medical robot in a hospital, 95% of what your team and customers will need is identical.
Frameworks like ROS have some visualizers such as Gazebo. However, they are built for local developer interactions on a closed network and do not scale well to fleets or distributed locations.
Introducing Easy Cloud Logging And Visualization
I am pleased to announce Freedom’s support for cloud-based monitoring of sensors and logs for ROS, Protobuf, Python, and REST interfaces.
Single Line Install
Paste the curl command from the Freedom App into your terminal and your robot automatically synchronizes all your data with clean security credentials and customizable features.
A single-line install allows you to easily add Freedom to any device.
Simple Programming Interfaces
Python, Protobuf, ROS, REST APIs, and other interfaces allow you to easily upload your data to the cloud, whichever way you want. The simple getting started guide walks you through setup in just a few minutes.
The system automatically compresses and down samples data to allow it to be synchronized with the cloud.
Message And Topic Filtering
While having 1000 Hz data and 60 Hz 4k video on a robot makes sense, sending it across a remote connection is not currently feasible. Therefore, you can select which topics you want to upload, at what rate you want to filter, and can exclude data you want to never reach the cloud (because it is not worth it, you don’t want it to leave the device, or the size is prohibitive).
You can easily define filtering of topics, exclusion of groups of topics, and specific maximum rates to upload data across your devices.
Offline, Local Buffering
Robots never stay connected. That said, you still need to know what happened when they were offline. Therefore, the system caches data and uploads it later, allow for connectivity drops and offline periods without data loss.
When you access your data through the Freedom App, all your topics are visualizable in multiple ways - from raw data to 3d visualizers to customizable graphs.
Freedom automatically visualizes your data while allowing you to tune, save dashboards, share key views, and review data over time.
Here is an example replay of an autonomous vehicle driving in Palo Alto.
Historical Robot Replays
When your data is uploaded to the cloud, you can keep it for as long as you need - whether that’s forever, or just for a month. You can also easily share the data through a link with your colleagues or review the logs from anywhere.
In the Freedom App, click “Share Link” in the bottom right of your stream page to create a link.
You get direct access to paged data for integration into your own systems. Everything from real-time streaming to downloading a terabyte of data for data mining are supported. Freedom's API docs let you easily integrate the API into your own applications.
# Set your HTTP headers with your API token and secret
# Request the data
You can easily access the system with API tokens to retrieve any section of data you want across all your devices.
Full Security Access
Endpoint level security allows you to fully lock down who can see what data. You can also allow specific time windows for access and many other dimensions of tuning for who, how, and when people or scripts can access data.
Install In One Line Of Code
As always, you can try this out for free and install in one line of code.