<spanid="hardware-main"></span><h1>Communications Hardware<aclass="headerlink"href="#communications-hardware"title="Permalink to this headline">¶</a></h1>
<p>One of the truly valuable aspects of Reticulum is the ability to use it over
almost any conceivable kind of communications medium. The <aclass="reference internal"href="interfaces.html#interfaces-main"><spanclass="std std-ref">interface types</span></a>
available for configuration in Reticulum are flexible enough to cover the use
of most wired and wireless communications hardware available, from decades-old
packet radio modems to modern millimeter-wave backhaul systems.</p>
<p>If you already have or operate some kind of communications hardware, there is a
very good chance that it will work with Reticulum out of the box. In case it does
not, it is possible to provide the necessary glue with very little effort using
for example the <aclass="reference internal"href="interfaces.html#interfaces-pipe"><spanclass="std std-ref">PipeInterface</span></a> or the <aclass="reference internal"href="interfaces.html#interfaces-tcpc"><spanclass="std std-ref">TCPClientInterface</span></a>
in combination with code like <aclass="reference external"href="https://github.com/simplyequipped/tcpkissserver">TCP KISS Server</a>
by <aclass="reference external"href="https://github.com/simplyequipped">simplyequipped</a>.</p>
<p>While this broad support and flexibility is very useful, an abundance of options
can sometimes make it difficult to know where to begin, especially when you are
LoRa development boards. This approach can be boiled down to two simple steps:</p>
<olclass="arabic simple">
<li><p>Obtain one or more supported development boards</p></li>
<li><p>Install the RNode firmware with the automated installer</p></li>
</ol>
<p>Once the firmware has been installed and provisioned by the install script, it
is ready to use with any software that supports RNodes, including Reticulum.
The device can be used with Reticulum by adding an <aclass="reference internal"href="interfaces.html#interfaces-rnode"><spanclass="std std-ref">RNodeInterface</span></a>
to the configuration.</p>
</div>
<divclass="section"id="supported-boards">
<spanid="rnode-supported"></span><h3>Supported Boards<aclass="headerlink"href="#supported-boards"title="Permalink to this headline">¶</a></h3>
<p>To create one or more RNodes, you will need to obtain supported development
boards. The following boards are supported by the auto-installer.</p>
<divclass="section"id="lilygo-lora32-v2-1">
<h4>LilyGO LoRa32 v2.1<aclass="headerlink"href="#lilygo-lora32-v2-1"title="Permalink to this headline">¶</a></h4>
<spanid="rnode-installation"></span><h3>Installation<aclass="headerlink"href="#installation"title="Permalink to this headline">¶</a></h3>
<p>Once you have obtained compatible boards, you can install the <aclass="reference external"href="https://github.com/markqvist/RNode_Firmware">RNode Firmware</a>
using the <aclass="reference external"href="https://github.com/markqvist/rnodeconfigutil">RNode Configuration Utility</a>.
Make sure that <codeclass="docutils literal notranslate"><spanclass="pre">Python3</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">pip</span></code> is installed on your system, and then install
the config utility with <codeclass="docutils literal notranslate"><spanclass="pre">pip</span></code>:</p>
<p>The utility will guide you through the installation process by asking a series of
questions about your hardware. Simply follow the guide, and the utility will
auto-install and configure your devices</p>
<p><strong>Important Note!</strong> It is currently recommended to use the v1.x line of the RNode firmware,
even though the v2.x line is available for early testing. The v2.x line should still be
considered an experimental pre-release. Only use the v2.x firmware line if you want to test
out the absolutely newest version, and don’t care about stability.</p>
</div>
<divclass="section"id="usage-with-reticulum">
<spanid="rnode-usage"></span><h3>Usage with Reticulum<aclass="headerlink"href="#usage-with-reticulum"title="Permalink to this headline">¶</a></h3>
<p>When the devices have been installed and provisioned, you can use them with Reticulum
by adding the <aclass="reference internal"href="interfaces.html#interfaces-rnode"><spanclass="std std-ref">relevant interface section</span></a> to the configuration
file of Reticulum. For v1.x firmwares, you will have to specify all interface parameters,
such as serial port and on-air parameters. For v2.x firmwares, you just need to specify
the Connection ID of the RNode, and Reticulum will automatically locate and connect to the
RNode, using the parameters stored in the RNode itself.</p>
</div>
<divclass="section"id="suppliers">
<spanid="rnode-suppliers"></span><h3>Suppliers<aclass="headerlink"href="#suppliers"title="Permalink to this headline">¶</a></h3>
<p>Get in touch if you want to have your RNode supplier listed here, or if you want help to
get started with producing RNodes.</p>
</div>
</div>
<divclass="section"id="wifi-based-hardware">
<h2>WiFi-based Hardware<aclass="headerlink"href="#wifi-based-hardware"title="Permalink to this headline">¶</a></h2>
<p>It is possible to use all kinds of both short- and long-range Wifi-based hardware
with Reticulum. Any kind of hardware that fully supports bridged ethernet over the
WiFi interface will work with the <aclass="reference internal"href="interfaces.html#interfaces-auto"><spanclass="std std-ref">AutoInterface</span></a> in Reticulum.
Most devices will behave like this by default, or allow it via configuration options.</p>
<p>This means that you can simply configure the physical links of the WiFi based devices,
and start communicating over them using Reticulum. It is not necessary to enable any IP
infrastructure such as DHCP servers, DNS or similar, as long as at least Ethernet is
available, and packets are passed transparently over the physical WiFi-based devices.</p>