Guide to Installing Omada Software Controller on Raspberry Pi OS - V5
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
@kilovar Solid guide. I am getting stuck on the very last part. When I put in
sudo apt install /home/pi/Omada_SDN_Controller_v5.7.4_Linux_x64.deb
I receieve the following output:
Reading package lists... Done
E: Unsupported file /home/pi/Omada_SDN_Controller_v5.7.4_Linux_x64.deb given on commandline
Any assitance here would be appreciated.
- Copy Link
- Report Inappropriate Content
Howdy @kilovar
What version of the Pi OS do you have?
Can you run the following - $ uname -m and $ lsb_release -a
It should show 64 bit "aarch64" and "Debian bullseye"
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
Have you tried:
$ sudo dpkg -i Omada_SDN_Controller_v5.7.4_Linux_x64.deb
I don't think it will work back it may give more details on what the problem is.
You may also want to try installing it in Debian for Ras Pi I installed 5.9.31 and on 64 bit Debian and it works 100%
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
64 bit Debian 11 on a Pi 4B /w 4 Gig. It runs flawlessly with Omada, Pi-Hole (a great dns sinkhole) and PI-VPN all installed.
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
- Copy Link
- Report Inappropriate Content
Hi everyone,
Thanks for this thread! Anyone interested in a raspbery pi image for omada? If so Ive just made one. Highlights:
- MongoDB 4.4.26
- OpenJDK 17
- Plug and play - just burn the image ssh in on ethernet (look for IP address on router)
- For raspberry pi 4
Build is based on pi-gen so you get a full bookworm raspbery pi OS.
So far it boots through to the login page but I havent used it yet - any volunteers to help me test?
Docs: https://github.com/GeoffWilliams/omadapi
Image: https://github.com/GeoffWilliams/omadapi/releases/tag/v5.12.7-0 (broken release)
Update:
Image: https://github.com/GeoffWilliams/omadapi/releases/tag/v5.13.22
Has been working good since deployed. Able to backup, restore, setup APs, update firmware, etc...
- Copy Link
- Report Inappropriate Content
Thank you so much for this thread.
I was able to successfully install v5.13.23 on Raspberry Pi OS Bookworm (Debian 12).
However, in attempting to migrate from my old controller (2011 Mac Mini running Ubuntu 22.04.3 LTS), I've consistently run in to errors on the upload.
The first errors in the Omada log look like this:
01-18-2024 17:56:59.899 ERROR [restore-work-group-0] [] c.t.s.o.b.c.r.d(): omadacId=OmadacId(20e0d6f42df8f6f5214762661cde22fa) restore failed with Exception
java.lang.reflect.InaccessibleObjectException: Unable to make field private static final long java.util.LinkedHashMap.serialVersionUID accessible: module java.base does not "opens java.util" to unnamed module @1a942c18
As I was only running java-17-openjdk-arm64 on the raspberry pi I decided to go an try to install java-11-openjdk-amd64 through bullseye oldstable repo.
I've been playing around with different permutations of java 17, 11, and 8 on the two machines to see if I can get them to export/import properly, but still no luck.
Adding here in case you, or others, come across this and have a solve or an idea.
Thanks!
- Copy Link
- Report Inappropriate Content
Information
Helpful: 8
Views: 79036
Replies: 122