Refactoring and modification of user application and UI for smart workstations
The customer is a Canadian company that designs and manufactures innovative office furniture solutions. With the embedded philosophy of NEAT/NEPA, their dynamic workstations bring healthier atmosphere into the everyday office environment.
The client turned to us with an innovative technology targeted at increasing employee productivity and healthiness. Our client outlined the objective of creating a user-friendly UI to ensure the user interaction with robotic office furniture.
Another challenge was to develop a custom application for tracking physical activity and stimulating employees to move more. The system was expected to calculate burnt calories and control motor activity, provide end-users with fitness challenges and reward them with virtual prizes for health-related achievements.
The client also challenged us to enhance personalized settings and synchronize them with users profiles. It was expected to let consumers use common settings for different environments, e.g. at work and at home.
We had to solve the following tasks:
- Develop a modern user-friendly interface
- Do code refactoring
- Develop serial port communication layer
- Create a user profile system and ensure its synchronization
- Design a system to control motor activities, fitness challenges and user motivation for physical activity
As the starting point, we analyzed all the technical aspects of the client’s product. It was a complicated tech item equipped with a great number of servo drives managed by Arduino-based controllers. The main functionality was to change working elements in an actual environment, e.g. to raise or lower the working surface, move functional parts of furniture left/right, etc.
We needed to create the app that would increase employees’ non-exercise physical activity, making them move more by adjusting the elements of their workspaces. The system had to ensure easy and fast manipulations going smooth and under user control.
Our specialists conducted code refactoring of the programming part of all the devices within Smartpods system. We implemented modern programming architecture that enabled the following features:
- Low-level operations with controllers Arduino no Serial Port
- Current .NET environment
- Online and Offline synchronization
- API for activity tracking challenges and results sharing
Using .NET platform as the basis, we introduced the needed functionality and flexibility into the development and modification processes. On top of that, we armed the client with an opportunity to further modify and improve the system.
For customer convenience, we created a user profile system that enables the storage of personalized settings, schedules of furniture position changes and activity information. In order to synchronize user profiles, we linked the system to the Azure Cloud. We empowered users to interact with the system in both online and offline modes by using USB flash drives to upload personal settings to Smartpods.
Our company gained significant perks from working on this project. We acquired real-life experience programming Arduino controllers to interact with other low-level controllers, sensors and servo drivers through Serial Port.
Our expert team came up with the state-of-the-art solution for the enhancement of an innovative custom system that provides such functionalities as:
- Device configuration management
- Synchronization of user profiles
- Calculation of motor activity, burnt calories and fitness challenges
The cooperation with OCSICO allowed our client to lead the product to a brand new, absolutely better-quality level. A number of innovative features became available due to the programming updates that gave client’s product the edge, made it competitive and engaging for corporate users.