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
@MJan
The OC200's hardware is vastly inferior to a new RPi 5, including only having 1GB of ram which is quite insufficient for the newest controller versions. Just boot time alone tells a story with the OC200 taking over 7 minutes while an RPi 5 boots to a usable web GUI in just over 1 minute. Navigating page to page is also very slow due to the very low spec processor and insufficient RAM.
The RPi 3b+ has 4x A53 at 1.4 GHz, which makes even it faster than the OC200.
The OC200 also runs in an extremely low power state if powered by USB instead of PoE resulting in even slower responsiveness to use the web GUI.
But if it works for you, it works.
- Copy Link
- Report Inappropriate Content
Wow, that's a quick reply. That's sad, I was really hoping for a proper solution and a better user interface. I'll see how it functions and otherwise I'll just send it back and get a refund.
- Copy Link
- Report Inappropriate Content
@MJan
I went through the entire circle - I first bought an OC200 before knowing just how slow and ragged it is run in simple operation. I returned it for an OC300 due to better spec, but it was still a bit of a dog in the web interface. After I was able to see the exact specs it made sense why.
I did kind of go all out with an NVME hat and an Optane M.2 drive, but the price still was reasonably between OC200 and OC300 in the end for just how much more powerful and responsive it ended up (for me, anyway).
The following tests were done on 5.13.xx
Pi 5 + P1600X 58GB (4x A76 @ 2.4 GHz, 8GB LPDDR4X-4267) - $165 Boot To Login: 1:20 Login To Global View: 1:30 Navigate To Site View: 1:38 Pi 5 + MicroSD (4x A76 @ 2.4 GHz, 8GB LPDDR4X-4267) Boot To Login: 1:54 Login To Global View: 2:07 Navigate To Site View: 2:12 Pi 4 + MicroSD (4x A72 @ 1.8 GHz, 2GB LPDDR4-3200) Boot To Login: 3:15 Login To Global View: 3:40 Navigate To Site View: 3:50 OC300 (4x A72 @ 1.2GHz, 2GB DDR4) - $200 Boot To login: 4:40 Login To Global View: 5:05 Navigate To Site View: 5:20 OC200 (2x A53 @ 1.2 GHz, 1GB DDR3) - $110 Boot To login: 6:30 Login To Global View: 7:48 Navigate To Site View: 8:15 Edit: Tested a Pi 5 with a MicroSD card to see how much the Optane/NVME drive helped. More than I expected.
- Copy Link
- Report Inappropriate Content
Good discussion as I wondered in the past how well the OC200/300 controller would do.
Simple observation from my end as I run two sites - one on a 4GB RPi4 and one on a 4GB RPi5. Even though both run on 4GB Pis the responsiveness of the RPi5 is way better than the RPi4. Just on startup, the RPi4 takes 3 minutes from boot to login compared with the 1:20 for the RPi5 measured by @MrAdministrator.
Its all very usable but the SDN controller is a beast and needs processing horsepower and memory - just a fact
- Copy Link
- Report Inappropriate Content
@Hank21 Hank, it looks like recent controller builds have exceeded the specs of the hardware controllers per recent posts in this thread. I think you need to fork the controllers to basic and full builds, where basic is missing things like DPI and other resource intensive features that have been added recently, but is enough to run a few sites efficiently. Or take the OpenWRT approach and allow people to build their controllers with the modules they actually need/want/use.
Anyone requiring the full suite of functionality will run the software controller in a VM, or a Pi5 or other suitable compute platform. Everyone else, would likely appreciate a controller that can run comfortably in the 1G range...as they have for the last couple of years until quite recently.
Otherwise the OC200 is effectively obsolete already and there's no OC400 in the wings as yet.
- Copy Link
- Report Inappropriate Content
d0ugmac1 wrote
@Hank21 Hank, it looks like recent controller builds have exceeded the specs of the hardware controllers per recent posts in this thread. I think you need to fork the controllers to basic and full builds, where basic is missing things like DPI and other resource intensive features that have been added recently, but is enough to run a few sites efficiently. Or take the OpenWRT approach and allow people to build their controllers with the modules they actually need/want/use.
Anyone requiring the full suite of functionality will run the software controller in a VM, or a Pi5 or other suitable compute platform. Everyone else, would likely appreciate a controller that can run comfortably in the 1G range...as they have for the last couple of years until quite recently.
Otherwise the OC200 is effectively obsolete already and there's no OC400 in the wings as yet.
Hi @d0ugmac1
Thanks for your kindly feedback. I will mark down your request and forward to the developer department. Please keep an eye on our official website and forum about the updates of the controller.
Please also note that we cannot guarantee the implementation of all requests due to technical limitations, resource constraints, and compatibility issues.
- Copy Link
- Report Inappropriate Content
Information
Helpful: 8
Views: 71842
Replies: 116