This document is a step-by-step tutorial on how to install osmocom-analog on Ubuntu.
It should work similar on Debian, Raspberry PI and similar distributions.
</p>
<p>
All osmocom-analog networks can run on sound card connected to radio transmitters and receivers.
This is quite heavy to handle and finding a usable transmitter and receiver - and this for each network and channel.
I highly suggest to use SDR.
In this tutorial I use LimeSDR (or LimeSDR Mini) to make things as easy as possible.
</p>
<pclass="toppic">
<aname="ins_vm"></a>
Installing in a Virtual Machine
</p>
<center><imgsrc="install_vm.png"/></center>
<p>
I do not recommend to use a virtual machine, especially for running C-Netz, which does not work, if there is a slight buffer underrun or overrun.
It might work with other networks.
You may try it out.
Skip this, if you want to install osmocom-analog on a real machine.
</p>
<p>
Download VirtualBox from <hhref="https://www.virtualbox.org/">https://www.virtualbox.org</a>.
Follow the installation guide there for your OS.
Be sure to install the extension package, so that you can use USB2.0 / USB3.0 which you need to pass through LimeSDR or LimeSDR Mini.
</p>
<p>
Create a virtual machine with the following settings:
</p>
<p>
<ul>
<li>Create a virtual machine with Ubuntu (64-bit)
<li>Choose memory size of at least 2 GB
<li>Create a virtual hard drive with at least 10 GB
<li>Emulate sound with output and input
<li>Select USB 3.0 (xHCI) Controller
</ul>
<p>
Your machine should now be able to boot and ask for an installation medium.
Choose the Ubuntu installation ISO as optical drive image.
</p>
<pclass="toppic">
<aname="ins_ubuntu"></a>
Installing Ubuntu
</p>
<center><imgsrc="install_ubuntu.png"/></center>
<p>
Download Ubuntu from <ahref="https://ubuntu.com/">https://ubuntu.com</a>.
You may choose to install the desktop or server version.
In this tutorial I will install the desktop version, because it is much easier.
Burn this ISO image onto a CD or create a bootable USB stick.
</p>
<p>
Start your machine and Ubuntu should load from installation image.
The installer will automatically start.
In this tutorial I select <b>"Install Ubuntu"</b> and do a <b>"Minimal installation"</b>.
In case you install it on a virtual machine, select <b>"Erase disk and install Ubuntu"</b>.
Please refer to the Ubuntu installation guide for more details.
</p>
<pclass="toppic">
<aname="ins_libs"></a>
Installing Libraries
</p>
<p>
osmocom-analog has very little dependencies on libraries.
No all are required, but you need to install libraries, depending on what you want to do.
</p>
<p>
Hint: Press "L-CTRL + L-ALT + T" to open a terminal.
</p>
<p>
If you want to connect analog radio equipment or just a headset to talk through the base station with the mobile use, you need Alsa Sound support.
If you don't have Alsa support, the mobile user will only hear a test music when calling.
Also if you want to bridge calls or use Osmo-CC interface, you do not need sound support.
</p>
<pre>
# sudo apt install libasound2-dev
</pre>
<p>
If you want to use SDR support, you need to install SoapySDR library and tools.
It is also possible to use UHD devices, but this is beyond the scope of this document.
To make things easy, I use LimeSDR or LimeSDR Mini.
Ubuntu also installs all drivers for SoapySDR, including "lime".
</p>
<pre>
# sudo apt install libsoapysdr-dev
# sudo apt install soapysdr-tools
</pre>
<p>
If you want to emulate the software clone of "Datenklo", an analog modem, you need (beside sound support) Fuse, for emulating a serial device in user space.
</p>
<pre>
# sudo apt install libfuse3-dev
</pre>
<p>
If you want to generate a TV signal, you can read PPM images. If you want other images to be read, you need Imagemagick 7, which is (currently) not available for Ubuntu.
Please refer to <ahref="https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux">https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux</a> on how to install it manually.
</p>
<pclass="toppic">
<aname="ins_osmocom"></a>
Installing osmocom-analog
</p>
<p>
Use GIT to clone latest source repository. First you need to install GIT.
Before you can compile, you need to install <b>"autoconf"</b>, <b>"gcc"</b> and <b>"make"</b>.
</p>
<pre>
# sudo apt install autoconf
# sudo apt install gcc
# sudo apt install make
</pre>
</pre>
<p>
Change to the repository directory and run <b>"autoconf -if"</b> once. This is only needed the first time compiling. It will generate the configure script.