<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>OpenMower v1 Documentation – Knowledge Base</title>
    <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/</link>
    <description>Recent content in Knowledge Base on OpenMower v1 Documentation</description>
    <generator>Hugo -- gohugo.io</generator>
    
	  <atom:link href="https://shop.devops.care/openmower-v1/docs/knowledge-base/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: Compatible Mowers</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/compatible-mowers/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/compatible-mowers/</guid>
      <description>
        
        
        &lt;p&gt;The project got started on a YardForce Classic 500(B) and there are (photo) guides at this documentation on how to dissassemble and assemble it again.&lt;br&gt;
So the YF Classics 500(B) is from a users perspective the &amp;ldquo;best supported&amp;rdquo; mower.&lt;/p&gt;
&lt;p&gt;The YF SA650ECO is the second model officially supported but there are no model specific guides yet.&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;&lt;strong&gt;Howerver there are more Mowers from the YardForce brand compatible:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In theory every YardForce model with the Core + Outer Frame Chassis (SA, SC, LUV, N and NX Line) that has a production year of 2019+ have compatible electronics to replace the stock mainboard by an openmower one.&lt;/p&gt;


&lt;div class=&#34;alert alert-warning&#34; role=&#34;alert&#34;&gt;


    As of today the YardForce Amiro, Compact, EasyMow, MowBest, XPower and MB series models are not (yet) compatible.&lt;br&gt;
The main reason is that the OpenMower mainboard does not fit in their chassis.

&lt;/div&gt;

&lt;h2 id=&#34;confirmed-convertable-mowers&#34;&gt;Confirmed convertable mowers&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;YardForce
&lt;ul&gt;
&lt;li&gt;Classic
&lt;ul&gt;
&lt;li&gt;500, 500B&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;SA
&lt;ul&gt;
&lt;li&gt;650ECO, 900ECO&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Configuring xESC</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/configure-xesc/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/configure-xesc/</guid>
      <description>
        
        
        &lt;p&gt;If you bought the kit the xESC are preconfigured with &lt;a href=&#34;https://github.com/vedderb/bldc&#34;&gt;VESC firmware&lt;/a&gt; 5.x&amp;quot;&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;device&lt;/th&gt;
&lt;th&gt;xESC&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;/dev/ttyAMA2&lt;/td&gt;
&lt;td&gt;drive motor&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;/dev/ttyAMA3&lt;/td&gt;
&lt;td&gt;mow motor&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;/dev/ttyAMA4&lt;/td&gt;
&lt;td&gt;drive motor&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;the config of the mow motor differs from the config of the drive motors, the configs of the two drive motors are equal&lt;/p&gt;
&lt;p&gt;Configurations for each xESC can be found at  https://github.com/ClemensElflein/OpenMower/tree/main/configs/xESC&lt;/p&gt;
&lt;h2 id=&#34;configuring-the-xesc&#34;&gt;Configuring the xESC&lt;/h2&gt;
&lt;p&gt;Prereqs:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VESC Tool (&lt;a href=&#34;https://vesc-project.com/vesc_tool&#34;&gt;https://vesc-project.com/vesc_tool&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Connecting to the xESC:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;sudo systemctl stop openmower&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;socat tcp-listen:65102,reuseaddr,fork file:/dev/ttyAMAx,raw&lt;/code&gt; &amp;lt;- replace &lt;code&gt;x&lt;/code&gt; with devicenumber&lt;/li&gt;
&lt;li&gt;start VESC Tool&lt;/li&gt;
&lt;li&gt;Go to &lt;code&gt;Connection -&amp;gt; TCP&lt;/code&gt; and insert openmower IP, leave port at 65102&lt;/li&gt;
&lt;li&gt;Connect&lt;/li&gt;
&lt;/ol&gt;


&lt;div class=&#34;alert alert-primary&#34; role=&#34;alert&#34;&gt;


    To change xESC just &lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;C&lt;/kbd&gt; in the openmower terminal replacing &lt;code&gt;ttyAMAx&lt;/code&gt; with a new device number and reconnect in VESC Tool.

&lt;/div&gt;

&lt;p&gt;Loading XML motor configuration:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Download XML configuration files from &lt;a href=&#34;https://github.com/ClemensElflein/OpenMower/tree/main/configs/xESC&#34;&gt;repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;File&amp;gt;Load Motor Configuration XML&lt;/li&gt;
&lt;li&gt;Select file named motor for the xESC you connected to&lt;/li&gt;
&lt;li&gt;On the right toolbar click &amp;ldquo;Write Motor configuration&amp;rdquo; (the M with a arrow pointing down)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Loading XML app configuration:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Download XML configuration files from &lt;a href=&#34;https://github.com/ClemensElflein/OpenMower/tree/main/configs/xESC&#34;&gt;repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;File&amp;gt;Load App Configuration XML&lt;/li&gt;
&lt;li&gt;Select file named app for the xESC you connected to&lt;/li&gt;
&lt;li&gt;On the right toolbar click &amp;ldquo;Write App configuration&amp;rdquo; (the A with a arrow pointing down)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Finally hit &lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;C&lt;/kbd&gt; in the openmower terminal and start the openmower service again. &lt;code&gt;sudo systemctl start openmower&lt;/code&gt;&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Firmware Update</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/firmware-update/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/firmware-update/</guid>
      <description>
        
        
        &lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;p&gt;This update guide assumes that you have the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;A mower with the OpenMowerOS running on it.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; verified that the &lt;code&gt;/boot/openmower/mower_config.txt&lt;/code&gt; file has the correct hardware version set (&lt;code&gt;OM_HARDWARE_VERSION&lt;/code&gt;). If this is wrong, the wrong firmware will be installed on your device. Check the &lt;a href=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/knowledge-base/manual-firmware-installation/&#34;&gt;Manual Firmware Installation&lt;/a&gt; guide on how to find that value.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The Raspberry Pi is running, and you are able to connect to it via &lt;code&gt;ssh&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The mower is connected to the internet&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;step-1-run-the-firmware-update-script&#34;&gt;Step 1: Run the Firmware Update Script&lt;/h2&gt;
&lt;p&gt;The OpenMowerOS image contains a firmware update script which will download and install the latest firmware version for you.&lt;/p&gt;
&lt;p&gt;In order to run the script, execute the following commands:



&lt;ul class=&#34;nav nav-tabs&#34; id=&#34;tabs-1&#34; role=&#34;tablist&#34;&gt;
  &lt;li class=&#34;nav-item&#34;&gt;
      &lt;a class=&#34;nav-link disabled&#34;
          id=&#34;tabs-01-00-tab&#34; data-toggle=&#34;tab&#34; href=&#34;#tabs-01-00&#34; role=&#34;tab&#34;
          aria-controls=&#34;tabs-01-00&#34; aria-selected=&#34;false&#34;&gt;
        &lt;strong&gt;OpenMowerOS version&lt;/strong&gt;:
      &lt;/a&gt;
    &lt;/li&gt;&lt;li class=&#34;nav-item&#34;&gt;
      &lt;a class=&#34;nav-link active&#34;
          id=&#34;tabs-01-01-tab&#34; data-toggle=&#34;tab&#34; href=&#34;#tabs-01-01&#34; role=&#34;tab&#34;
          aria-controls=&#34;tabs-01-01&#34; aria-selected=&#34;false&#34;&gt;
        0.1.0
      &lt;/a&gt;
    &lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;tab-content&#34; id=&#34;tabs-1-content&#34;&gt;
    &lt;div class=&#34;tab-body tab-pane fade&#34;
        id=&#34;tabs-01-00&#34; role=&#34;tabpanel&#34; aria-labelled-by=&#34;tabs-01-00-tab&#34;&gt;
        
    &lt;/div&gt;
    &lt;div class=&#34;tab-body tab-pane fade show active&#34;
        id=&#34;tabs-01-01&#34; role=&#34;tabpanel&#34; aria-labelled-by=&#34;tabs-01-01-tab&#34;&gt;
        &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Make sure that you are in your home directory (the script is located there):&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;cd&lt;/span&gt; ~/
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Execute the script:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;~/fetch_and_upload_firmware.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;If everything works as expected, the output should look like this:&lt;/p&gt;
&lt;div class=&#34;container&#34;&gt;
&lt;div class=&#34;row justify-content-md-center&#34;&gt;
&lt;div id=&#34;player&#34; class=&#34;&#34;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;script&gt;
    AsciinemaPlayer.create(
        &#39;538389.cast&#39;,
        document.getElementById(&#39;player&#39;),
        { cols: 100, rows: 24, autoplay: true, loop: true }
    );
&lt;/script&gt;
&lt;h2 id=&#34;step-2-done-&#34;&gt;Step 2: Done 🎉&lt;/h2&gt;
&lt;p&gt;That&amp;rsquo;s everything you need to do.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: GPS / Coordinate System</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/rtk-gps/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/rtk-gps/</guid>
      <description>
        
        
        &lt;h2 id=&#34;positioning--coordinate-system&#34;&gt;Positioning / Coordinate System&lt;/h2&gt;
&lt;p&gt;Positioning in the Open Mower project is done in a local 2D coordinate system. This means that the robot&amp;rsquo;s current position can be described by the coordinates (X / Y) of the VRP and the current orientation.&lt;/p&gt;
&lt;p&gt;The origin of the coordinate system can either be chosen freely by the user or can be set to the base station. If an external correction service is used, the origin has to be specified manually.&lt;/p&gt;
&lt;p&gt;Open Mower uses a right-handed ENU coordinate system.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: GPS Base Setup</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/rtk-base-setup/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/rtk-base-setup/</guid>
      <description>
        
        
        &lt;p&gt;This part of the documentation is work in progress. There are many ways of setting up the RTK base, here is one using RPi 0W, ZED-F9P and a web based software RTKBase. On discord you may ask karl.ranseier for support.&lt;/p&gt;
&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://amzn.to/48sGCVP&#34;&gt;Raspberry Pi 0W&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;µSD card&lt;/li&gt;
&lt;li&gt;Power supply for RPi&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/&#34;&gt;Ardusimple ZED-F9P&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A cable or combinatin of cables to connect micro usb male to micro usb male:
&lt;ul&gt;
&lt;li&gt;A) Direct like &lt;a href=&#34;https://amzn.to/3K7kfMs&#34;&gt;this&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;B) Adapter (&lt;a href=&#34;https://amzn.to/4ifLYqG&#34;&gt;like this&lt;/a&gt;) + micro usb to usb-a cable&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;A windows PC&lt;/li&gt;
&lt;li&gt;Stable internet connection (no disconnection within one hour)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;installation&#34;&gt;Installation&lt;/h2&gt;
&lt;p&gt;If you know about RPi and have already a functional OS, you may head on to &amp;ldquo;Software&amp;rdquo;, but in my case it did not work using an older image.&lt;/p&gt;
&lt;h3 id=&#34;preparing-sd-card&#34;&gt;Preparing sd card&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Download &lt;a href=&#34;https://www.raspberrypi.com/software/&#34;&gt;RPi Imager&lt;/a&gt; for windows&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Start Imager:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;Imager1.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Choose your RPI (in my case RPi 0W, choosing wrong RPi will most probably result in many problems)&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager2.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Choose Operating system &amp;ldquo;Raspberry Pi OS Lite (32-bit)&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager3.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager4.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select your sd card:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager5.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Press next so this will appear:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager6.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Edit settings like the following (and use your personal WiFi settings and country), where you set a good password for your Pi account. Username and password are case sensitive!&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./OSCustom1.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;activate SSH:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./OSCustom.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Press save to see this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./OSCustom2.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Click on YES and allow to overwrite the data on your sd card (if you are sure, that you will not miss them). It will start downloading and writing the data:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Imager7.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Wait until it is finished, it may take half an hour, depending on your internet connection ;-)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;start-your-rtkbase-rpi&#34;&gt;Start your RTKBase RPi&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Put your sd card into your RPi&lt;/li&gt;
&lt;li&gt;Connect ZED-F9P via usb to your RPi (NOT after the installation, it will be configured during installation).&lt;/li&gt;
&lt;li&gt;Power your RPi&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;connect-to-rpi&#34;&gt;Connect to RPi&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Get from your router the IP of your RPi&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Start &lt;a href=&#34;https://putty.org&#34;&gt;PuTTY&lt;/a&gt; and connect to RPi, where you enter the local IP of your RPi&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Putty1.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enter your Username Pi, press enter and than enter your password:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Putty2.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt; &lt;img src=&#34;./Putty3.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;software&#34;&gt;Software&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Is your ZED-F9P connected? Do it!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;We will use &lt;a href=&#34;https://github.com/Stefal/rtkbase&#34;&gt;RTKBase&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;To install it, you can use the following lines, which you can copy and paste at once. The original recommendation is no sudo in front of chmod. That did not work for me.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;cd&lt;/span&gt; ~
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;wget https://raw.githubusercontent.com/Stefal/rtkbase/master/tools/install.sh -O install.sh
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo chmod +x install.sh
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo ./install.sh --all release
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;A very long output should follow. It ends with:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;GNSS Configuration: &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;done&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;STARTING SERVICES
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Created symlink /etc/systemd/system/multi-user.target.wants/str2str_tcp.service → /etc/systemd/system/str2str_tcp.service.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Job &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;for&lt;/span&gt; gpsd.service failed because the control process exited with error code.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;See &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;systemctl status gpsd.service&amp;#34;&lt;/span&gt; and &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;journalctl -xe&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;for&lt;/span&gt; details.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;END OF INSTALLATION
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;You can open your browser to http://192.168.178.34 &lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;(&lt;/span&gt;here the editor deleted IPV6&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Pi@RTKBase:~ $
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Installation finished, go on and configure your RTKBase&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;h2 id=&#34;configuring-your-rtkbase&#34;&gt;Configuring your RTKBase&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Start a browser and enter the IP address of your RTKBase. You will get this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase01.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enter as password admin. On the following site press the copy symbol right to PPP.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase02.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Go to settings and press &amp;ldquo;options&amp;rdquo; right to &amp;ldquo;Main Service&amp;rdquo;, than paste your coordinates to &amp;ldquo;Base coordinates&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase03.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Press on options again, than on options right to &amp;ldquo;Caster Service&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase04.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Here you have to enter the setting set up in your mower, standard is: username gps and password gps. Select the right mount point. I have named it like my city, in mower config and here.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Save the config&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Switch on &amp;ldquo;Caster Service&amp;rdquo; and &amp;ldquo;File Service&amp;rdquo;, it should look like this:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase05.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Eventually change your password below these options.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;At logs you should find at least two files:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase06.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;find-the-position-of-your-rtkbase&#34;&gt;Find the position of your RTKBase&lt;/h3&gt;
&lt;p&gt;There are several ways to find your position. To use openmower you do not need the perfect position. Therefore the first option should be your choice, if you want a fast and good result for openmower.&lt;/p&gt;
&lt;h4 id=&#34;easy-and-good-way&#34;&gt;Easy and good way&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Click on the symbol right to PPP to copy the values to the clipboard:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase02.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enter these values to your options at MainService.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase03.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Save&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ReActivate Ntrip Service&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Finished!&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;more-complicated-and-more-exact-way&#34;&gt;More complicated and more exact way&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;You have to set up the logging of your position as mentioned above by activating &amp;ldquo;file service&amp;rdquo;. You should wait for a day to average all the values to get a high precision position.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;After midnight you find a zip-file at logs. This you can convert to a Rinex file. To understand this file you may check &lt;a href=&#34;http://walter.bislins.ch/bloge/index.asp?page=Understanding+GPS%2FGNSS+RINEX+Files+and+Relevant+Parameters&#34;&gt;RINEX-File&lt;/a&gt; , but you don&amp;rsquo;t need it.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Press on the pencil right to the zip-file:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase07.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&amp;ldquo;Create Rinex file&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase08.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Download it when finished (may take a while, some minutes or longer)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Go to &lt;a href=&#34;https://rgp.ign.fr/SERVICES/calcul_online.php&#34;&gt;Calculator&lt;/a&gt;, upload your Rinex file and enter your email address. Don&amp;rsquo;t forget to enter the &amp;ldquo;no robot&amp;rdquo;-verification.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./ignfr.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When you received the email, look at &amp;ldquo;ITRF2014&amp;rdquo; (or search for &amp;ldquo;longitude&amp;rdquo;) and see your values like LONGITUDE 6.XXXXXXXXX°  LATITUDE 51.XXXXXXXXX° HELL 79.9041&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./averaged.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You enter these values to your options at MainService. Be aware that the order of LONGITUDE and LATITUDE is switched!&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;./RTKBase03.png&#34; width=&#34;120&#34;&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Save&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ReActivate Ntrip Service&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Finished!&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;Thanks to Stefal and all the contributors of RTKBase and the used resources.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Manual Firmware Installation</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/manual-firmware-installation/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/manual-firmware-installation/</guid>
      <description>
        
        
        

&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Info&lt;/h4&gt;

    You only need to do this if there is no firmware in your mainboard yet. If you have the mower already running or have
received the hardware kit, you should be able to automatically update the firmware.&lt;br&gt;
Check the guide here: &lt;a href=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/knowledge-base/firmware-update/&#34;&gt;Firmware Update&lt;/a&gt;

&lt;/div&gt;

&lt;p&gt;In order for ROS to talk to your mainboard, it needs to be programmed with a Firmware. Don&amp;rsquo;t worry, the process is straightforward.&lt;/p&gt;


&lt;div class=&#34;alert alert-warning&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Warning&lt;/h4&gt;

    It&amp;rsquo;s very important that you get the correct firmware for your hardware version. Using the wrong firmware will cause the
device to malfunction and in the worst case, destroy the hardware.

&lt;/div&gt;

&lt;h2 id=&#34;step-1-download-the-latest-firmware-bundle&#34;&gt;Step 1: Download the Latest Firmware Bundle&lt;/h2&gt;











&lt;figure&gt;
    &lt;img src=&#39;https://shop.devops.care/openmower-v1/docs/knowledge-base/manual-firmware-installation/firmware-download.png&#39; alt=&#39;Firmware Download&#39;  class=&#34;img-thumbnail&#34;&gt;
&lt;/figure&gt;
&lt;p&gt;The first step is to download and extract the latest firmware bundle. The zip file contains all the firmwares supported
by the OpenMower project.
You can get the latest version here: 🔗
 &lt;a href=&#34;https://github.com/ClemensElflein/OpenMower/releases&#34;&gt;https://github.com/ClemensElflein/OpenMower/releases&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;step-2-find-the-firmware&#34;&gt;Step 2: Find the Firmware&lt;/h2&gt;
&lt;p&gt;In order to find the correct firmware file, you will need two pieces of information:&lt;/p&gt;
&lt;h3 id=&#34;21-the-hardware-version-of-your-mainboard&#34;&gt;2.1: The hardware version of your mainboard&lt;/h3&gt;
&lt;p&gt;The version of your mainboard is printed on the lower left side of your mainboard:&lt;/p&gt;
&lt;div&gt;&lt;img src=&#39;mainboard-version.jpg&#39; width=400 /&gt;&lt;/div&gt;
&lt;h3 id=&#34;22-the-type-of-imu-you-are-using&#34;&gt;2.2: The type of IMU you are using:&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;IMU Name&lt;/th&gt;
&lt;th&gt;Image&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;WT901&lt;/td&gt;
&lt;td&gt;&lt;img src=&#39;wt-901.jpg&#39; width=200 /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MPU9250&lt;/td&gt;
&lt;td&gt;&lt;img src=&#39;mpu-9250.jpg&#39; width=200 /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LSM6DSO&lt;/td&gt;
&lt;td&gt;&lt;img src=&#39;lsm6dso.jpg&#39; width=200 /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;33-select-firmware&#34;&gt;3.3: Select Firmware:&lt;/h3&gt;
&lt;p&gt;Now you can select the firmware according to this table:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mainboard Version&lt;/th&gt;
&lt;th&gt;IMU&lt;/th&gt;
&lt;th&gt;Firmware File&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;0.13.x&lt;/td&gt;
&lt;td&gt;LSM6DSO&lt;/td&gt;
&lt;td&gt;0_13_X/firmware.uf2&lt;/td&gt;
&lt;td&gt;If you have bought the 0.13.x kit in Vermut&amp;rsquo;s shop, this is your version.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.12.x&lt;/td&gt;
&lt;td&gt;LSM6DSO&lt;/td&gt;
&lt;td&gt;0_12_X/firmware.uf2&lt;/td&gt;
&lt;td&gt;If you have bought the 0.12.x kit in Vermut&amp;rsquo;s shop, this is your version.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.11.x&lt;/td&gt;
&lt;td&gt;MPU9250&lt;/td&gt;
&lt;td&gt;0_11_X_MPU9250/firmware.uf2&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.11.x&lt;/td&gt;
&lt;td&gt;WT901&lt;/td&gt;
&lt;td&gt;0_11_X_WT901/firmware.uf2&lt;/td&gt;
&lt;td&gt;If you have bought the 0.11.x kit in Vermut&amp;rsquo;s shop, this is your version.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.10.x&lt;/td&gt;
&lt;td&gt;MPU9250&lt;/td&gt;
&lt;td&gt;0_10_X_MPU9250/firmware.uf2&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.10.x&lt;/td&gt;
&lt;td&gt;WT901&lt;/td&gt;
&lt;td&gt;0_10_X_WT901/firmware.uf2&lt;/td&gt;
&lt;td&gt;If you have bought the 0.10.x kit in Vermut&amp;rsquo;s shop, this is your version.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.9.x&lt;/td&gt;
&lt;td&gt;MPU9250&lt;/td&gt;
&lt;td&gt;0_9_X_MPU9250/firmware.uf2&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.9.x&lt;/td&gt;
&lt;td&gt;WT901&lt;/td&gt;
&lt;td&gt;0_9_X_WT901_INSTEAD_OF_SOUND/firmware.uf2&lt;/td&gt;
&lt;td&gt;WT901 gets soldered instead of the sound module, since this mainboard does not have a WT901 header&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;0.9.x&lt;/td&gt;
&lt;td&gt;WT901&lt;/td&gt;
&lt;td&gt;0_9_X_WT901/firmware.uf2&lt;/td&gt;
&lt;td&gt;IMU Connected on the MPU9250 Slot using SerialPIO&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;step-3-install-firmware&#34;&gt;Step 3: Install Firmware&lt;/h2&gt;
&lt;p&gt;In order to not draw too much current from your computer&amp;rsquo;s USB port, make sure that no modules (Raspberry Pi, GPS, ESCs)
are plugged into your mainboard. Then connect the Raspberry Pi Pico with a micro USB cable to your PC.&lt;/p&gt;
&lt;p&gt;Your PC should show a new mass-storage device. Copy the UF2 file identified above onto the mass-storage and wait for the
Pico to reboot. The process takes about 10 seconds.&lt;/p&gt;
&lt;h2 id=&#34;step-4-done-&#34;&gt;Step 4: Done 🎉&lt;/h2&gt;
&lt;p&gt;Your mainboard now has the latest firmware and is good to go. You can plug all modules into the mainboard now.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Neopixel LED Colors</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/neopixel-led-colors/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/neopixel-led-colors/</guid>
      <description>
        
        
        






&lt;figure class=&#34;card rounded p-2 td-post-card mb-4 mt-4&#34; style=&#34;max-width: 260px&#34;&gt;
	&lt;img class=&#34;card-img-top&#34; src=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/knowledge-base/neopixel-led-colors/neopixel-status-led_hu70ef149a4bb48905604289e195ae28e0_38939_250x0_resize_q75_catmullrom.jpg&#34; width=&#34;250&#34; height=&#34;188&#34;&gt;
	
&lt;/figure&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Color&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;boot sequence&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;dim red&lt;/td&gt;
&lt;td&gt;firmware booted&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;bright red&lt;/td&gt;
&lt;td&gt;RPi powered on&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;blinking blue&lt;/td&gt;
&lt;td&gt;halt, IMU not found&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;turquoise (blue+green)&lt;/td&gt;
&lt;td&gt;starting sound initialization&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;blue&lt;/td&gt;
&lt;td&gt;setting sound volume&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;brown (red+green)&lt;/td&gt;
&lt;td&gt;sound volume is set&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;blinking blue&lt;/td&gt;
&lt;td&gt;warning, sound not available&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;end of boot sequence&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;orange - red flashing&lt;/td&gt;
&lt;td&gt;emergency mode and ros is disconnected&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;green - red flashing&lt;/td&gt;
&lt;td&gt;emergency mode and ros is connected&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;steady green&lt;/td&gt;
&lt;td&gt;ros is connected and no emergency mode is detected&lt;br/&gt;(all voltages are OK, wheels aren&amp;rsquo;t lifted, emergency button is not pressed)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Shopping List</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/shopping-list/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/shopping-list/</guid>
      <description>
        
        
        &lt;p&gt;&lt;em&gt;If you make a purchase through the links marked with an Asterisk (*), I may earn a small commission at no extra cost to you. Thank you for supporting this project!&lt;/em&gt;&lt;/p&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Build Notes&lt;/h4&gt;

    Review &lt;a href=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/getting-started/#important-info&#34;&gt;Getting Started&lt;/a&gt; before ordering or installing parts.

&lt;/div&gt;

&lt;h2 id=&#34;parts-for-the-robot-and-the-charging-station&#34;&gt;Parts for the Robot and the Charging Station&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Quantity Required&lt;/th&gt;
&lt;th&gt;Source Link&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Mower&lt;br&gt;(YardForce Classic 500(B))&lt;/td&gt;
&lt;td&gt;The mower to modify.&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://amzn.to/3NWgIxk&#34;&gt;Amazon*&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Check the &lt;a href=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/knowledge-base/compatible-mowers/&#34;&gt;Compatible Mowers&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OpenMower v1 Hardware Kit&lt;/td&gt;
&lt;td&gt;The electronics mounted inside the robot and the charging station. Also includes the small parts that make the documented build easier.&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://shop.devops.care/10-openmower&#34;&gt;Gadgets by Vermut shop&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;The shop kit is assembled, tested, and flashed before shipping.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ardusimple RTK2B GPS + Antenna&lt;/td&gt;
&lt;td&gt;Positioning system for the robot&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/&#34;&gt;ArduSimple&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Some users use &lt;a href=&#34;https://wiki.openmower.de/index.php?title=Unicore_GPS_modules&#34;&gt;UM9XX chips&lt;/a&gt; (available from &lt;a href=&#34;https://witmotion-sensor.com/products/rtk-gps-gnss-modules-centimeter-level-um982-um980-um960&#34;&gt;WitMotion&lt;/a&gt; and &lt;a href=&#34;https://aliexpress.com/item/1005007177629130.html&#34;&gt;AliExpress&lt;/a&gt;) as alternative. Compared to ArduSimple, they&amp;rsquo;re a bit cheaper and support triple-band frequencies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Raspberry Pi 4&lt;/td&gt;
&lt;td&gt;The brain of the robot.&lt;br&gt;&lt;br&gt;RAM: 2GB+ for running the software&lt;br&gt;4GB+ for development&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://rpilocator.com/?cat=PI4&amp;amp;instock&#34;&gt;RPi Locator&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Yes, it has to be the Raspberry Pi 4, because we need all the UARTs.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;µSD Card&lt;/td&gt;
&lt;td&gt;The absolute minimum capacity you should buy is 16GB. But better buy a 32GB one&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://amzn.to/3EeWBXj&#34;&gt;Amazon*&lt;/a&gt; or your local hardware store&lt;/td&gt;
&lt;td&gt;A Gucci option would be a &lt;a href=&#34;https://www.uugear.com/product/raspikey-plug-and-play-emmc-module-for-raspberry-pi/&#34;&gt;RasPiKey&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Optional:&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Optional:&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;USB Wi-Fi Dongle&lt;/td&gt;
&lt;td&gt;For better Wi-Fi reception&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;Check for Linux Support&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Left-Angle USB adapter&lt;/td&gt;
&lt;td&gt;If you want to keep Wi-Fi dongle inside the mower. RPi USB is really close to the mower side wall&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://amzn.to/3ukNAIj&#34;&gt;Amazon*&lt;/a&gt; or your local hardware store&lt;/td&gt;
&lt;td&gt;The kit contains the wire to connect external USB port. That may be enough if Wi-Fi dongle is waterproof.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;parts-for-the-gps-base-station&#34;&gt;Parts for the GPS Base Station&lt;/h2&gt;


&lt;div class=&#34;alert alert-info&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Info&lt;/h4&gt;

    You only need a GPS base station if you don&amp;rsquo;t have access to an external NTRIP service. There are multiple free services available, so check before buying this.

&lt;/div&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Name&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Quantity Required&lt;/th&gt;
&lt;th&gt;Source Link&lt;/th&gt;
&lt;th&gt;Notes&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Raspberry Pi&lt;br&gt;+ SD Card&lt;br&gt;+ Power Supply&lt;/td&gt;
&lt;td&gt;You can basically use any Raspberry Pi for this. No special requirements.&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://amzn.to/4a904YP&#34;&gt;e.g. Raspberry Pi 4&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ardusimple RTK2B GPS + Antenna&lt;/td&gt;
&lt;td&gt;Positioning system for the base station&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;&lt;a href=&#34;https://www.ardusimple.com/product/simplertk2b-basic-starter-kit-ip65/&#34;&gt;ArduSimple&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;See above&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;For the setup check the &lt;a href=&#34;https://shop.devops.care/openmower-v1/openmower-v1/docs/knowledge-base/rtk-base-setup/&#34;&gt;GPS Base Setup Guide&lt;/a&gt;&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: The Map</title>
      <link>https://shop.devops.care/openmower-v1/docs/knowledge-base/the-map/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://shop.devops.care/openmower-v1/docs/knowledge-base/the-map/</guid>
      <description>
        
        
        &lt;h2 id=&#34;the-map&#34;&gt;The Map&lt;/h2&gt;
&lt;p&gt;The most important information for the Open Mower is its map. The map tells the robot in which areas the robot is allowed to drive &lt;strong&gt;(= Navigation Area)&lt;/strong&gt;, which areas need to be mowed &lt;strong&gt;(= Mowing Area)&lt;/strong&gt; and where the docking station is located. Using this information, the robot is able to do its work automatically.&lt;/p&gt;
&lt;p&gt;Each area consists of &lt;strong&gt;one outline&lt;/strong&gt; and &lt;strong&gt;multiple obstacles&lt;/strong&gt;. The mower is allowed to drive inside the outline of all areas, except for the obstacles. This way you can exclude some parts of your lawn and prevent the mower from entering them.&lt;/p&gt;
&lt;p&gt;The map is stored in the &lt;code&gt;map.bag&lt;/code&gt; file that is located on the mower at &lt;code&gt;/root/ros_home/.ros&lt;/code&gt;&lt;/p&gt;

      </description>
    </item>
    
  </channel>
</rss>
