Guide to Installing Omada Software Controller on Raspberry Pi OS - V5
Update - 3 June 2023
The links listed below for OpenJDK-8 no longer works. Omada SDN Controller will run on OpenJDK-11, but that requires JSVC 1.1.0 which is not in the official Raspberry Pi OS repos. It is possible to solve the dependecies to install JSVC 1.1.0, but I have not had time to update the instructions
Also see this FAQ with good info about installing the Omada SDN Controller on a number of Linux distros.
Update - 22 January 2023
Bare metal install on 64 bit Raspberry Pi OS - no Ubuntu server, no Docker. Tested with version 4 and now the latest version 5.7.4 of the Controller software. I have it running on a Model 3B+ with 1G RAM. Also running on Model 4 w/ 4G RAM.
Links have been updated and verified on most recent install
Instructions:
1. Download & install latest 64 bit version of Raspberry pi OS to new sd card of your choice from the link below.
https://downloads.raspberrypi.org/raspios_arm64/images/
This is not a guide to installing Raspberry Pi OS so I won't provide detailed instructions on that.
2. Download and install version 4.4.18 of MongoDB mongodb-server from https://www.mongodb.com/download-center/community/releases/archive
wget https://repo.mongodb.org/apt/ubuntu/dists/focal/mongodb-org/4.4/multiverse/binary-arm64/mongodb-org-server_4.4.18_arm64.deb
sudo apt install /home/pi/mongodb-org-server_4.4.18_arm64.deb
Note this post explaining that MongoDB V4.4.19 will not work.
3. Mongodb server would normally be run as a service by doing the following commands
sudo systemctl daemon-reload
sudo systemctl enable mongod
sudo systemctl start mongod
In this case not required, as Omada controller starts the server as required.
4. Check that curl is installed
apt list curl
5. Download and install openjdk-8-jre
wget http://security.debian.org/debian-security/pool/updates/main/o/openjdk-8/openjdk-8-jre-headless_8u332-ga-1~deb9u1_arm64.deb
sudo apt install /home/pi/openjdk-8-jre-headless_8u332-ga-1~deb9u1_arm64.deb
6. Install jsvc
sudo apt install jsvc
6. If you install JSVC before OpenJDK-8-JRE then JSVC by default installs openjdk-11-jre, which does not work with Omada controller.
7. If you have both OpenJDK-8-JRE and OpenJDK-11-JRE installed then you need to tell system which java to use
sudo update-alternatives --config java
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-arm64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-arm64/bin/java 1111 manual mode
* 2 /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:
Now select Option 2 pointing to java-8
8. Download and install latest version Omada SDN controller
wget https://static.tp-link.com/upload/software/2022/202211/20221121/Omada_SDN_Controller_v5.7.4_Linux_x64.deb
sudo apt install /home/pi/Omada_SDN_Controller_v5.7.4_Linux_x64.deb
If all went well the controller should start and you should get the following message
Install Omada Controller succeeded!
==========================
Omada Controller will start up with system boot. You can also control it by [/usr/bin/tpeap].
check omada
Starting Omada Controller. Please wait.........................................................................................................................
Started successfully.
You can visit http://localhost:8088 on this host to manage the wireless network.
========================