Your message has been sent.
We’ll process your request and contact you back as soon as possible.
The form has been successfully submitted.
Please find further information in your mailbox.

Select language

Innowise robotics department developed a proprietary smart robot to navigate office premises and water plants without human intervention.
Real office routing around people and furniture
Multi-height watering for desks, shelves, and racks

Innowise is a global full-cycle software development provider with 3,500+ IT specialists on board. The company has delivered 1,600+ projects for customers from 70 countries, covering software engineering, product development, and technology consulting across multiple industries. For this case, Innowise acted as both the customer and the development team, as the project was created as an internal R&D initiative.
Innowise was using a mix of HubSpot CRM, Jira, spreadsheets, and documents to manage data. As the company grew quickly, this approach led to chaotic processes, with information scattered across systems and often duplicated. We needed a unified solution to centralize data, standardize processes, and provide secure access across teams.
The team started by defining what the robot had to do in an office environment. IRIS (Innowise Robotics Irrigation System) needed to move through rooms, detect plants, understand whether they needed watering, reach them at different heights, and complete the task without constant human input.
At the planning stage, the team mapped out the main technical blocks: indoor navigation, plant detection, QR-code-based plant records, the moving platform, the water tank, the elevator mechanism, and the software components needed to process routes, sensor data, and watering history.
Our vetted robotics developers designed IRIS as an autonomous IoT robot combining hardware, embedded components, computer vision, and software. The hardware part included a moving platform, battery, water tank, elevator mechanism, sensors, cameras, and a watering rod.
For navigation, the robot uses SLAM, ROS, LiDAR, and computer vision to map office spaces and build routes around furniture, employees, and other obstacles. For plant detection, the system combines camera input, object detection models, QR codes, and watering history records, so the robot can identify each plant and check whether watering is needed.
Our robotics experts started by mapping office spaces to create a detailed IoT plant monitoring system, identifying plant locations, obstacles, furniture, and other objects that could affect the robot’s movement. We used SLAM technology to support predictable routing across office rooms. SLAM determines the robot’s location while creating an environment map using computer vision algorithms, LiDAR laser scanners, and other sensor tools.
We used LiDAR connected to the Raspberry Pi microcomputer mounted directly on the robot to detect obstacles and identify plants. ROS, the Robotic Operating System, and the main computer use this visual information to process navigation data, calculate routes, and map the office surroundings.
During this stage, our team had to deal with limited visibility when detecting plain objects such as tables, shelves, chairs, and other interior items that could block the robot’s view or be misidentified. The robot also had to handle dynamic obstacles in an office environment, where employees and moving objects can suddenly change position and direction. To reduce the risk of collisions, our team used computer vision and machine learning algorithms, including image segmentation, object detection, noise filtering, and other methods. We also equipped the robot with motion planning algorithms such as Rapidly-exploring Random Trees (RRT) and A* (A-star), which consider the position and shape of obstacles when identifying the best path in real time.
Initially, we planned to use stereoscopic cameras to determine the plants’ location, calculate their position, and create a route. After brainstorming sessions, we developed an alternative scheme where the robot took a picture and recorded its coordinates in space. Robotics engineers used a neural network to find the plant in the frame, calculate its bounding box, and determine the flower’s direction.
In image processing projects, bounding boxes serve as reference points for object detection and create collision boxes for detected objects. Based on the robot’s coordinates, the camera’s orientation, and the flower’s location, we drew a ray connecting the robot’s position with the plant. After repeating this process many times, we obtained multiple rays intersecting at one point, which allowed the robot to detect the plant that needed watering.
Our engineers relied on models trained on COCO and ImageNet datasets to identify flowers in pots. Based on this model, we filtered out unnecessary classes and developed a custom detector that synchronizes the bounding box direction with the robot’s coordinates. To determine the precise spatial coordinates of the watering rod, we used a bundle of cameras and LiDAR.
Once the robot detects a plant, it identifies its accurate position in space and determines whether it should be watered. For this purpose, we labeled all office pots with QR codes connected to databases where the watering history of all plants is stored.
For the hardware, the robotics team chose a modular system that included a moving platform with electronics, a water storage tank, a battery, and a two-level elevator system. We used a V-Slot aluminum profile to assemble the robot’s frame because it is durable and lightweight, which supports better maneuverability and lower energy consumption.
Instead of standard differential drives, we placed omni-wheels at the corners of the robot to support smooth navigation. Omni-wheels, or omnidirectional wheels, have small rollers around the circumference that can rotate on their own axis or perpendicularly. So, the robot moves in any direction without rotating the main structure, using only the difference in velocity between each wheel.
Flowers are placed on employees’ desks, shelves, racks, high bookcases, and other spots that are hard to reach. To avoid building a bookcase-high robot, our experts assembled a lifting mechanism based on sliding rollers. With OpenBuilds V-Slot profile parts, we fixed the elevator steps rigidly to each other with carriages and rollers that slide along the lifting mechanism. The carriages are moved by a belt stretched between a motor and a tensioning unit mounted on the other side.
At the top of the last elevator step, we installed a servo motor that unfolds a carbon fiber rod for watering flowers. The rod is connected to a peristaltic pump installed in the water tank. Standard rotary pumps are sensitive to the volume of liquid, so we used peristaltic pumps, which squeeze an elastic tube through rollers on the circumference and push the liquid out. Compared to standard pumps, these mechanisms have a much slower pumping speed, but they can lift liquid to a much greater height.
We treated IRIS as an R&D project and tested the robot in real office conditions from the start. Robotics engineers, firmware developers, backend and frontend specialists, ML experts, and DevOps engineers worked closely, shared progress often, and shaped next steps based on test results. Regular meetings, brainstorming sessions, and retrospectives kept the work organized. The team discussed blockers, adjusted priorities, and fixed design issues before preparing the robot for demos.
My main takeaway from IRIS is that office robotics depends on small engineering decisions. A robot can have a good route on the map, but the real test starts when it moves near desks, shelves, people, and plants placed at different heights. This project pushed us to think about behavior, mechanics, sensors, and software as one system, because one weak link changes the whole result.

Python, Django REST Framework, FastAPI, AWS IoT Core, pandas, Loki, Prometheus, Grafana, API Gateway, AWS;
JavaScript, TypeScript, React, Redux, Leaflet, Webpack, Axios, Material UI, Cube.js, AWS CloudFront;
AVR, Raspberry Pi, SPI, UART, USB, I2C, HTTP, SolidWorks, ROS, SLAM, LiDAR, Altium Designer;
OpenCV, TensorFlow, TFLite, ONNX, NumPy;
Terraform, Weave, Docker Compose, Kubernetes, Bitbucket Pipelines;
PostgreSQL, AWS Timestream.

Innowise built IRIS, an autonomous IoT robot that can navigate office spaces, detect plants, reach them at different heights, and water them without manual work. The team brought together hardware, embedded components, computer vision, navigation logic, and software into a working prototype tested in real office conditions.
The robot made office plant care more regular and reduced the need for manual watering. For Innowise, the project also became a practical demo of robotics expertise, showing how a physical robot can handle a routine office task using navigation, plant detection, and an integrated irrigation mechanism.
Your message has been sent.
We’ll process your request and contact you back as soon as possible.