Unofficial Ubiquiti AirOS SDK 5.3.3

Hello,

This post is for all the people waiting for ubiquiti to release the SDK 5.3.3 for the AirOS Firmware.

At Ninux.org we run a 100+ ubiquiti powered wireless network, which has proved to be very stable and performing. In our network we use OLSRD and IPv6, so we normally flash our devices with a version of the Ubiquiti firmware derived from the SDK.

The last 5.3 SDK of the Ubiquiti firmware was buggy, as we all know. Ubiquiti promptly released a 5.3.3 firmware to correct the bug but, despite our continuos efforts and their very same declaration of availability on demand, they ignored our requests to obtain the 5.3.3 SDK. For it I resolved to create by myself an unofficial but working 5.3.3 SDK, which is presented in this article.

Of course my hope and interests are that ubiquiti will soon come back to the godwill policy of public avalilability of their official SDK. Up to that (very welcomed) moment, the Open Source community will make its best efforts to grant the widest performance of Ubiquiti’s excellent products.

The SDK for 5.3.3 can be downloaded here: http://goo.gl/An4fk

Now I will describe how I created this unofficial SDK. Of course I assume the reader is a little familiar with the SDK and the OpenWRT toolchain.

I started from the following 3 files:

  • GPL.UBNT.v5.3.3.tar.bz2
  • XM-v5.3.3.build9634.bin (b72c73be64f32d6da57db9e061c3fff1)
  • SDK.UBNT.v5.3.tar.bz2 (not available anymore on ubnt.com, find it here)

At the byte 943973 of the file XM-v5.3.3.build9634.bin you fill find the header of the SquashFS root partition of the firmware. So I used the hex editor bless to cut the binary image and start from the squashfs header.

At this point using the command line tool “unsquashfs” I was able to have a folder with the files.

After this step the rest of the work was very easy,
I unpacked the 5.3SDK, and I ported the ubnt-base-files and ubnt-web packages to the GPL.UBNT.v5.3.3 GPL archive. After porting, I upgraded all the binary files with the new ones that were inside the SquashFS partition of the firmware image of 5.3.3

I cleaned up everything and repacked. Make sure with “make menuconfig” you select the ubnt-base-files package.

I tested successfully this SDK with NanoStationM5. Feedback on other devices is highly appreciated, either commenting on this blog or writing an email to contatti@ninux.org

If you want to know how we use this SDK at Ninux to improve the firmware with IPv6 and olsrd you can have a look to our wiki.

Saverio

This entry was posted in Uncategorized and tagged , , , , , , , , . Bookmark the permalink.

20 Responses to Unofficial Ubiquiti AirOS SDK 5.3.3

  1. Sunya says:

    The ubnt-web content have the hard code “/110726.1142″ in many files.
    It should be replace with “FULL_VERSION_LINK”.
    I’m testing with Nano loco M5.

  2. Saverio says:

    Thanks ! I think this bug will not affect the functionality of the device, however is better to fix.

    If you can provide a patch to fix the ubnt-web package please share it with the community :)

  3. Saverio says:

    I found that just running:

    sed -i s/110726.1142/FULL_VERSION_LINK/g *

    in the ubnt-web/src directory should be enough to fix the problem

    I’m now repacking the SDK with this fix

  4. rene says:

    Thanks for your work. Now you must replace “/FULL_VERSION_LINK” with “FULL_VERSION_LINK” (without the slash) in the ubnt-web/src directory and it will work perfect. Otherwise the web-frontend will not work.

    Regards, Rene

  5. Saverio says: