Friday, July 22, 2016

Configuring WiFi Pineapple Nano on Mac OS X

The WiFi Pineapple installation is well documented, but there were a couple of extra steps to configure the Nano with a Mac. It looked like some others were bumping into some issues so I thought I'd document what worked for me, on OS X El Capitan, Version 10.11.3. These steps augment the installation video from the Pineapple web site, under the Linux setup section/dropdown. 

Get latest Nano firmware

  1. Download the latest firmware and save it to your Mac

Configure USB Internet Sharing on your Mac

  1. Open System Preferences —> Sharing
  2. Enable USB sharing as shown in the image below


Configure Nano

Update Firmware

  1. Plug the Nano to the USB on your Mac. I just used the primary USB connector and not the additional Y cable USB connector, which seemed to work fine for the setup.
  2. Once the Pineapple boots up (the light stops flashing) connect to the WiFi access point that it creates using the Wifi Icon on your Mac menu bar or via System Preferences —> Network. The Wifi name looks like Pineapple_NNNN, where NNNN is from the MAC address printed on the bottom of the device.
  3. Connect to http://172.16.42.1:1471/ from a web browser
  4. Click "Continue" from that web page
  5. Hold the reset button for at least 3 seconds as directed (I configured the Nano with the WiFi on)
  6. From the web page click "Select File" and select the firmware you downloaded from the Pineapple site. Then click "Install."
  7. Wait a few minutes until the update finishes - the blue indicator light on the Nano should stop flashing. This will disconnect your Mac from the Pineapple WiFi.

Initial Device Configuration

  1. Reconnect your Mac to the Nano's Wifi Network (step 2, above)
  2. Follow to directions to continue "with WiFi enabled" by pressing reset button as directed.
  3. Set the password and SSID, for example MyPineappleWifi
  4. Click "Complete Setup" - which will disconnect you from the Nano's WiFi

Set Nano IP Address

Thanks to audibleblink for this post which describes configuring the Nano's network interface to work your Mac's internet sharing. Here are the steps:
  1. Reconnect to the Pineapple access point, i.e MyPineappleWifi
  2. SSH to your Nano from your Mac terminal:
ssh root@172.16.42.1
  1. If you have installed other Pineapples and you get an SSH error, you may need to first clear the keys from your known_hosts file:
ssh-keygen -R 172.16.42.1
  1. From the shell of your Nano, configure the device's IP address and gateway. This will once again disconnect you from the Nano.
uci set network.lan.ipaddr='192.168.2.10'
uci set network.lan.gateway='192.168.2.1'
uci commit && reboot

Continue Configuration


  1. Hard reboot: I had to unplug the Nano from USB, then reconnect to be able to connect to it after the network configuration. You shouldn't need to connect to the Nano's access point (i.e. MyPineappleWifi) at this point. You should make sure that your Mac is connected to a network and has Internet access though.
  2. Once your Nano reboots, try to reconnect via a web browser: http://192.168.2.10:1471/ (using the IP address you set in step 3, above)
  3. From the main Dashboard click "Load Bulletins..." button. If the data loads your Nano has an internet connection.

Next Steps

At this point if your Nano has an internet connection, you should be good to go. Feel free to let me know if there are any steps, issues or optimizations.

3 comments:

  1. Thanks for the tutorial! All good up until after Step 6. Clients can connect and receive a 192.168.2.x address, but they are unable to route. Likewise, the Nano is unable to pull Modules from WifiPineapple.com.
    * ICS is set to share to from WiFi to AX88x72A.
    * AX88x72A IP is 192.168.2.177
    * AX88x72A Subnet is 255.255.255.0
    * AX88x72A Router is 192.168.2.10

    Ideas?

    ReplyDelete
  2. Many of the modules will not work if you change the IP address because some of the modules assume that the IP address will be 172.16.42.1

    ReplyDelete
  3. Thanks dude, seems to be working just fine.

    ReplyDelete