Raspberry Pi (2011) model B as Unifi Controller

I have setup new networking equipment to provide a large upgrade to my home network. One component that was required was a small server to manage the access point, a Unifi AP AC Pro.

One option is to purchase a small device from Ubiquiti called a Cloud Key that has the management software pre-loaded. Another option is to install the management software on a Mac, PC, or Linux machine. However, that requires your personal computer to be on anytime you could want to use the software and is a lot of overhead.

I opted to go with a third option – using an old (generation 1) Raspberry Pi model B from 2011 and run the management software from that. I had one just sitting in my desk drawer unused, so it was a perfect opportunity!

To build my UnifiPi Controller (as I am calling it), I took information from two guides and merged them together as described below. This made for a very responsive dedicated device that works quite well!

  1. Begin by downloading and installing the latest Raspbian image from the Raspberry Pi website. This is outside of the scope of this article, but it is fairly trivial to do.
  2. Setup the Raspberry Pi using the raspi-config script. I highly recommend setting the proper keyboard layout for your region first, reboot, then change your passwords and configure the rest of the device defaults. I did the keyboard last and had issues logging in over ssh since the special characters on the default UK keyboard are in a different order than on a US keyboard layout!
    1. TIP: set the memory split to 16MB for the GPU. We’re using this in a headless environment, so wasting memory on the GPU is just going to hurt you.
  3. Fully update the Pi
    sudo aptitude update; sudo aptitude upgrade
  4. reboot
  5. Next fully update the firmware for your Pi
    sudo aptitude install rpi-update; sudo rpi-update
  6. reboot
  7. Set ssh to run on boot
    systemctl enable ssh
    systemctl start ssh
  8. Install and configure the Unifi software
    1. Add the repository
      echo 'deb http://www.ubnt.com/downloads/unifi/debian unifi5 ubiquiti' | sudo tee -a /etc/apt/sources.list.d/ubnt.list > /dev/null
      sudo apt-key adv --keyserver keyserver.ubuntu.com --recv C0A52C50
      sudo aptitude update
    2. Install the software
      sudo aptitude install unifi
    3. Disable the default MongoDB or you’ll have two databases running wasting resources!
      echo 'ENABLE_MONGODB=no' | sudo tee -a /etc/mongodb.conf > /dev/null
    4. Update the Snappy Java Library as Unifi’s version is quite old
      cd /usr/lib/unifi/lib
      sudo mv snappy-java-1.0.5.jar snappy-java-1.0.5.jar.old
      sudo wget http://central.maven.org/maven2/org/xerial/snappy/snappy-java/1.1.2.6/snappy-java-1.1.2.6.jar
      sudo ln -s snappy-java-1.1.2.6.jar snappy-java-1.0.5.jar
    5. Remove the Unifi Cloud Library (ONLY NEEDED FOR ARMv6 devices – basically anything prior to the 3rd generation Pi)
      sudo rm /usr/lib/unifi/lib/native/Linux/armhf/libubnt_webrtc_jni.so
    6. Switch to the official Java client instead of OpenJDK. OpenJDK is horrible and resource intensive
      sudo aptitude install oracle-java8-jdk
      sudo update-alternatives --config java
      #Select Java8 - was item 2 for me
      java -showversion (to confirm it's set properly)
  9. reboot

You can now access the Raspberry Pi via the IP address pulled from DNS:
https://192.168.1.100:8443
ssh pi@192.168.1.100

Using the web interface running on port 8443 you can also configure any new Unifi APs.  You can also connect the Unifi iPhone app to manage your AP from your mobile device.  However, as I do not have a Unifi Secure Gateway, I am unable to get WAN/LAN stats.  But, I can get those separately through the EdgeRouter web UI.

Notes:

  • I decided to not setup a static IP address as I will use functions in my EdgeRouter Lite to set a static IP via MAC address.
  • I currently only have one Unifi AP but can expand to more as needed. However, given the size of my house and the location I was able to place the AP, that is unlikely to be needed.

Sources:
http://www.lowefamily.com.au/2016/06/02/installing-ubiquiti-unifi-controller-5-on-raspberry-pi/
https://www.youtube.com/watch?v=aZYGiZI48oc
https://www.raspberrypi.org/forums/viewtopic.php?f=81&t=101543

Tickle The Ivories

20131209-095244.jpg

This past weekend, we became the new home for a beautiful vintage piano. A coworker of Justin’s is moving to a new opportunity and we were able to provide a great home for this beautiful piece.

The piano, a Wurlitzer 591, looks to have been produced in the 1940’s. It is a Wurlitzer spinet piano. While not very tall (around 4′), it is very heavy and difficult even for two people to move.

We have already started to enjoy playing it and look forward to truly learning to play. I look forward to cherishing this beautiful piano for many years to come!

20131209-095254.jpg

My Raspberry Pi

20120531-235716.jpgToday I finally received my Raspberry Pi! I had ordered mine on February 29th, but because of the tremendous demand for the product there were large delays on actually receiving one.

I will not have time to do much with it because I have a lot of studying for French, but I did plug in power to see a wonderful power light. :-). More to come when I have the time…

20120531-235954.jpg

iPad 3rd Generation Retina Display

There has been a lot of talk recently about the new iPad and how good the screen is.  As someone who has had the iPad 2 for a while and is now a new iPad owner, the difference is subtle but quite nice.  Everything is crisp and much easier to read.  Graphics have no visible pixels.  It is similar to having changed from the iPhone 3GS to iPhone 4 (or iPhone 4S).  Having said that, there are a few times so far where the higher-res screen isn’t nice.  Like looking at those wallpapers I’d downloaded previously that are now pixellated, or looking at apps that haven’t yet migrated to the new Retina display.  However, these are minor and the pros outweigh the cons.

So, how clear is the new screen?  Well it’s really not something you can actually tell via a picture of them side by side – you really have to see it in person.  However, the images below should help to give a perspective.  The images below are of the first 250 pixel x 250 pixel block of the screen.  First is the iPad 2, second is the new iPad.

As my wallpaper is a grid you can easily tell it is four times the size of the original (double in both the x and y axis equates to four times) iPad and iPad2 resolutions.

The new iPad

20120307-204853.jpg

Today Apple and it’s team of executives headed by Tim Cook announced the new iPad. No number, no “HD” for this one, just “the new iPad”. This will surely cause some confusion, so let’s just all agree to call it the third generation iPad shall we?

As time has gone on, I have found myself using my iMac and MacBook less and less and instead relying on the iPad more and more. As a matter of fact, this post is being written from the WordPress app for iPad. Apart from needing to find a comparable replacement for Quicken for the iPad, I have almost no real use for my laptop anymore. My desktop is also becoming more a storage and media server as I rarely touch it as well. It is a late 2007 iMac.

So, Justin and I talked about it and I went ahead and bought the new iPad. Once it comes in, Justin will get the iPad2 so he can have all the features of a tablet as well. I also bought the camera connection kit so I can hook up my camera and transfer the pics to the iPad. This will allow me to completely negate the need for a laptop or netbook at all when traveling. All I need now is an app for tethering to my DSLR and I’ll really be a happy camper! Looking forward to March 16th when it will supposedly arrive.