SpacetimeOS is an innovative platform designed for crafting applications that come to life within physical spaces.
Developers are empowered with the flexibility to design applications using JavaScript, validate them with the provided development kit, and subsequently deploy them across various locations.
Once developed, these applications can be shared and marketed to other developers via the Marketplace.
Primary project assumptions include:
* To maintain compliance with the confidentiality agreement, I have omitted and obscured sensitive information in this case study.
Client:
Estimote, Inc.
Role:
UX / Product Designer
Responsibilites:
Interaction design
Visual design
Testing
Project management
Website development
Duration:
May 2021 - February 2022
Collaborators:
Jakub Krzych - CEO/PM
Łukasz Kostka - CTO
Marcin Książek - Full Stack Dev
Bartek Słysz - Software Engineer
Ireneusz Guzik - Embedded Engineer
Natalia Stokłosa - Industrial Designer
Arek Płatek - Designer
Magdalena Chojnacka - Illustrator
From May 2021 to February 2022, I led the product design, and I remain involved as I continue to support the team in ongoing development efforts.
As is often the case, design theory frequently diverges significantly from reality.
The design process was loosely based on the Reversed Double Diamond approach, with elements of the Lean UX method.
My involvement in the project spanned from initial conceptual sketches to information architecture and wireframing, culminating in the detailed visual design phase. Additionally, I managed the development and was actively involved in testing.
In a nutshell, the challenge is accessing data inside buildings.
While technologies like GPS make real-time outdoor object tracking easier, tracking and detecting objects within enclosed spaces present both technological and logistical challenges.
For nearly a decade, Estimote has been dedicated to researching technologies that could support sensors working similarly to satellites.
After years of experimenting with technologies like BLE, UWB, and LTE, the company successfully developed devices that could pave the way for the creation of an operating system for the physical world.
The hardware team developed devices that can detect each other and accurately determine the distance between them to within a few centimeters.
We called them Anchors.
The concept was simple in theory:
Following this, a developer gains access to a digital canvas, allowing them to draw zones. They can then design and deploy simple applications within these zones that activate based on interactions in the physical world.
For more details go to the Sketches and Ideas section.
Before diving deep into each phase of the design process, let me briefly introduce our user profiles.
Estimote has positioned itself as a pioneer in Beacon-based technology, collaborating with thousands of specialists across diverse industries.
We meticulously examined user profiles, from the moment a customer orders a dev kit for experimentation, to decision-makers who determine large-scale implementations.
We focused on two primary personas during the design process: the Innovator and the Champion.
These individuals typically have an engineering background and embody the DIY enthusiast, reveling in experimenting with novel technology.
They employ the latest (and sometimes imperfect) technologies to address real-world challenges, often opting for non-standard, unconventional solutions.
They might be the same individuals as the Innovators, but they often hold higher positions in the company's organizational hierarchy.
They make decisions regarding the adoption of specific technologies to address challenges and secure financial support from higher-level management.
Innovators and Champions serve as the principal change agents within large organizations.
Their boundless curiosity and innate scientist nature drive them to experiment with technologies like Beacons and subsequently curate solution demonstrations for upper-level executives.
After consulting with the founders about their vision and ideas, and gathering information about the users, I delved into the conceptual work.
Below are some of the major design challenges I encountered:
One of the principal project assumptions was ensuring that the customer could begin programming and testing swiftly and effortlessly.
Ensuring a quick sense of user success was our goal.
Natalia, in collaboration with the hardware prototyping team, developed a housing design that allowed the device to be placed in various locations, such as on a table or in room corners.
Upon receiving the dev kit, users could immediately begin installing devices in their room.
After setting up the devices, the user is guided through an onboarding process where we display a top-down view of the floorplan, similar to architectural designs.
Upon successfully completing the setup and auto-mapping, the user receives a mapped equivalent of their floor plan.
On the main dashboard, my intention was to present the concepts of two worlds: Digital and Physical, in an intuitive way for non-technical users:
Widgets serve as an interpretation of real-world data acquired from sensors located in the floorplan, allowing for unlimited forms of data interpretation, vital for a multitude of real-world use cases.
Each widget is essentially a JavaScript program that can be edited, configured, or uninstalled from the location.
Programming is carried out via the Editor. Using an intuitive toolkit, the user can create zones and then assign the relevant JS code to them, which is triggered during interactions.
In short, the user: 1) draws zones, 2) assigns the appropriate code to the created zone, and, for testing, 3) adds autonomous assets that traverse the floor plan, triggering digital actions.
As an illustration, one can test a logistics solution by simply creating a few zones within one's home, adding forklifts and pallets, and then initiating programmed interactions.
To expedite and simplify the programming process, zones, and assets come with templates for popular interactions.
Users simply select the appropriate interaction (Events), and a code snippet is automatically injected into the code.
Customers' complex problems can be solved and presented in numerous ways. The concept of using widgets grants creators unlimited freedom in data interpretation.
Depending on the chosen use case, data can be presented in various forms - such as charts, trends, alerts, or specific actions.
In the editor, we included the most popular data presentation formats in the form of templates, which can be quickly utilized for testing their applications.
During our work on the SpacetimeOS project, we were open to experimenting with new technologies.
When OpenAI announced ChatGPT and the possibility of integrating their API, we decided to create an experimental feature leveraging the potential of AI.
Drawing inspiration from solutions like Github Copilot, we built an assistant for application development within the Editor. For instance, when a user enters a prompt like:
"Display a pie chart of interactions for all assets over the past week,"
it would generate a JS application with the correct chart and data.
Despite some errors and limitations during the experiment, AI technology holds immense potential for the future in accelerating application development.
To gain a better understanding of how users will navigate through the user interface and the decisions they make, I have developed user flows for the primary usage scenarios.
Early in the interface concept development phase, we sought rapid verification of technical constraints. Post-creating lo-fi wireframes, we immediately transitioned to building a functional interface, utilizing straightforward UI components.
Highlighted below are selected excerpts and interface screens, complete with UI elements and icons.
A few words of summary from me.
The SpacetimeOS project was a bold and innovative attempt to combine cutting-edge sensor technologies with software to create a programming environment for a new generation of applications.
Merging software and hardware is no easy task. Working on this project required constant verification of assumptions. On one hand, there was the vision of the founders; on the other, technological constraints communicated by engineers.
More than once, we had to build things that, in theory, shouldn't work, yet reality often proved us otherwise - and vice versa.
Working on such non-obvious projects required all team members to seek unconventional paths.
And these unconventional paths often led to challenging terrains.
However, a culture of innovation, eagerness to learn, not avoiding challenges but confronting them head-on, allowed us to navigate through and successfully complete the SpacetimeOS project.
SpacetimeOS primarily attracts customers interested in large-scale implementations. We've managed to inspire some of the world's largest clients in the logistics, retail and aviation industries.
We have been involved in deployments and the design of solutions tailored specifically to particular sectors.
Work is ongoing.
While the project requires further investment, it holds immense potential for the near future, especially in the context of Digital Twin solutions and the development of 5G technology.