Guide to Installing Omada Software Controller on Raspberry Pi OS - V5
![](/avatar/default.png)
Update - 16 January 2024
Instructions below updated to most current Raspberry Pi OS, installed and tested on Raspberry Pi 5, with Omada SDN Controller v5.12.7. Confirmed that OpenJDK-17 work, which is installable through apt and for which the install instructions have been updated.
Update - 26 December 2023
Instructions below updated to most current Raspberry Pi OS, installed and tested on Raspberry Pi 5, with Omada SDN Controller v5.12.7. Note that the JAVA runtime installation instructions has been updated to OpenJDK-11.
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 LITE version of Raspberry pi OS to new sd card of your choice from the link below. Note - the legacy version of Raspberry Pi OS will not work
https://downloads.raspberrypi.org/raspios_lite_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/<username>/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-17-jre
sudo apt install openjdk-17-jre-headless
6. Install jsvc
sudo apt install jsvc
7. If you have multiple versions of OpenJDK 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 the option pointing to the version of OpenJDK you want to use.
8. Download and install latest version Omada SDN controller
wget https://static.tp-link.com/upload/software/2023/202309/20230920/Omada_SDN_Controller_v5.12.7_Linux_x64.deb
sudo apt install /home/<username>/Omada_SDN_Controller_v5.12.7_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.
========================
Now you can access the web interface of the Omada Controller by pointing you web browser from any PC on the same network to
http://<IP_address_of_Omada_Controller>:8088
- Copy Link
- Subscribe
- Bookmark
- Report Inappropriate Content
Thank you.. I did search through the 9 pages but nothing jumped out at me - my appoligies and appreciate the reply..
and succesfully updated to 5.13.30.8 and running smoothly so far!
Sugestion - add that info to the first page for new comers so it's easier to find..
Where do I send beer/coffee money!?!
Jesse
- Copy Link
- Report Inappropriate Content
Hi,
I have tried installing it on a RPI3 B+. I have followed the steps but in the end, no matter what I do I always get the " Please wait.Cannot find any VM in Java Home /usr/lib/jvm/java-11-openjdk-arm64/". I tried many solutions, none worked, At this point I am not sure what I am doing wrong. I have tried with Java 11, and java 17 with the same results.
I have created the symbolic links:
# mkdir /usr/lib/jvm/java-11-openjdk-amd64/lib/amd64
# ln -s /usr/lib/jvm/java-11-openjdk-amd64/lib/server /usr/lib/jvm/java-11-openjdk-amd64/lib/amd64/
The results are the same.
Does anyone else experienced this, where should I look next?
Thanks!
- Copy Link
- Report Inappropriate Content
Couple of point to consider
1. RPi3+ really does not work well for anything other than novelty - just not enough memory
2. Please run the following command and post your output
sudo update-alternatives --config java
3. The paths you posted about creating symlinks indicating AMD64 binaries, so I dont know what you are trying to do there
- Copy Link
- Report Inappropriate Content
Thanks!
to answer quickly:
1. I am not using it really, just want to install it an play with it, this is for a future project and I am getting aquainted with the system. I have no EAP for now.
2. This is the output of the update-alternatives:
octavg@OmConPi3:~ $ sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-17-openjdk-arm64/bin/java 1711 auto mode * 1 /usr/lib/jvm/java-11-openjdk-arm64/bin/java 1111 manual mode 2 /usr/lib/jvm/java-17-openjdk-arm64/bin/java 1711 manual mode Press <enter> to keep the current choice[*], or type selection number:
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
I'm with kilovar above, 1G RAM is just not enough for 5.13 controllers. Try installing a 5.8 or older controller.
I run mine in containers, but to put things in perspective, you need at least 1.2G and the below examples are small sites :
x86 based NAS, v5.13
S905 Pi Clone 2G 4core, v5.13
- Copy Link
- Report Inappropriate Content
Run the follow command
ls -l /usr/bin/java
Expected output
/usr/bin/java -> /etc/alternatives/java
If your output matches the expected output above run the following
ls -l /etc/alternatives/java
Expected output
/etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-arm64/bin/java
If your output from the second command is not as expected please post it for review
- Copy Link
- Report Inappropriate Content
Hi Kilovar,
The output is as expected:
octavg@OmConPi3:~ $ ls -l /usr/bin/java lrwxrwxrwx 1 root root 22 Mar 21 09:40 /usr/bin/java -> /etc/alternatives/java octavg@OmConPi3:~ $ ls -l /etc/alternatives/java lrwxrwxrwx 1 root root 43 Mar 21 09:44 /etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-arm64/bin/java octavg@OmConPi3:~ $
- Copy Link
- Report Inappropriate Content
Did you start with a clean install of raspberry pi OS Lite?
I retested the install procedure on a fresh install on a RPi 3A+ and had no problem following the steps described in the first post
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
![](/avatar/default.png)
Information
Helpful: 8
Views: 69200
Replies: 116
Voters 3
![voter's avatar](https://static-community.tp-link.com/icon/57d94885dda247099ec65a4e7e1ec261.jpeg)
![voter's avatar](/avatar/avatar-20.png)
![voter's avatar](https://static-community.tp-link.com/icon/a8413ef3836c427db6c14636fc73059f.jpeg)