1. Home
  2. /
  3. Projects
  4. /
  5. Autonomous Robotic Lawn Mower
Integra Sources home button.


Autonomous Robotic Lawn Mower

Computer vision Consumer electronics Embedded hardware development Embedded software development Firmware development R&D Robotics

Mowing the lawn is tedious work. And it's a year-round project. But it doesn't seem so tedious once there is a robotic lawn mower ready to do the job for you.

Autonomous robotic lawn mower


A company in the consumer robotics industry was working on a robotic mower. They needed a professional company that could provide an independent design review for their first version of the printed circuit board that had been created by another electronics design company. Integra Sources' expertise and our ability to predict possible risks impressed the client so he decided to continue the development of the robotic mower with our company.

We were chosen to build peripheral device drivers for the first version of the lawn mower and then continued working on the second, more advanced version of the circuit board.


Our major goal was to develop a machine that could independently cut grass in specified areas of home gardens with minimal supervision. We achieved it by doing research, designing a robotic movement mechanism with electronic control circuitry and programming the controller.

We went through several iterations to build the electronics and develop firmware for the robot so it could meet the customer's expectations. The main challenge was to keep within the budget for hardware components. Our client wanted to make the lawn mower accessible to the mass market. Therefore, it needed to be cheaper than its competitors.

Components of the robotic lawn mower, including the main circuit board
Main PCB and other parts of the robot lawn mower

Technologies Used

  • STM32F4 series MCU with Cortex-M4 core was used for this project.
  • FreeRTOS was used for firmware development.
  • Microsoft Visual Studio with Visual GDB plugin was used for firmware implementation.
  • CMOS sensor (camera) with DVP bus was used.
  • The device can connect to the cloud (server) using WiFi or 3G connection.
  • The first prototype of the device has a wireless module NRF24L01 to communicate with the base station and LCD with touchscreen for GUI.
  • For precision positioning, GPS, accelerometer, gyroscope, compass (magnetometer) and computer vision algorithms are used.
  • Altium Designer IDE was used for Schematics and PCB design.
  • The firmware was implemented using C/C++.


Integra Sources managed to put the project on solid technical footing while lowering the estimated cost of the development effort required. We provided hardware design, prototyping, firmware development, and testing.

The delivered result is a fully completed hardware solution for an autonomous robot that doesn't need any supervision. The robotic lawn mower is equipped with algorithms and sensors – camera, accelerometer, gyroscope – that allow the robot to map the area it's about to work on. It's also equipped with a charger and a Wi-Fi and 3G module.

To set up the area of operation, you just need to walk around the lawn with the robot so it remembers where to work. After that, it is ready to cut the lawn’s grass 24/7 and will charge itself when it runs out of battery.

Scope of work

Embedded hardware development

This project is based on STM32F4 microcontroller and runs on RTOS. The robot has a lot of peripherals including WiFi, GPS, GSM, camera, IMU, wireless module NRF24L01, and LCD display.

Firmware development

We implemented low-level firmware programming for the circuit board.

Embedded software development

The OpenCV based computer vision autonomous navigation system allows the lawn mower to detect and identify obstacles and boundaries.

Prototype assembly process

The functionality of the lawn mower

We implemented low-level firmware programming, prototyping and higher-level logic such as computer vision and visual odometry. The robot has a graphical interface, it charges in an hour and has a smart autonomous workflow. Its functionality includes:

  • State monitoring. In the event somebody decides to steal the robot, it will send an alert through Wi-Fi or 3G about the incident. The robot will also send notifications if the knife is hooked or stuck.
  • Object detection. The robot is equipped with a proximity sensor, so it can detect objects and people. It turns off when a person is detected within the field of its operation.
  • Obstacle avoidance. The robot avoids obstacles around the yard. If any of its sensors pinpoint a hindrance, the robot will immediately stop and then pivot in a different direction.
  • Visual odometry. The robot is able to detect the surface it's working on. It will
    recognize the grass and its color using computer vision algorithms.
  • Positioning system. We developed a Kalman filter algorithm for a multi-sensor system consisting of an accelerometer, gyroscope, magnetometer, and GPS for detecting the position of the lawn mower.
  • Magnetic key. To stop the robot in case of an emergency you can use a magnetic key.

Integra delivers what they say they’re going to deliver. I’d say their flexibility is their most impressive feature. They can do the whole stack, from very low-level analog circuits all the way up to and through complex digital circuits and software.

CEO of Robotics company