From Zero to Pi in 5 Hours

I bought a Raspberry Pi 3 B and a Pi Camera (v2.1) from Fry’s and spent some hours configuring it. Even though it’s considered a kid’s learning computer, I don’t think it suits your average kid.

A few days prior, I bought a Sandisk 16GB micro SD card from Amazon , and used Win32 Disk Imager to flash the disk image Raspbian Jessie with Pixel . That all went fine.

I installed the SD card, plugged in a wired keyboard and mouse, and connected the Pi to an HDMI enabled monitor. I had to look up how to install the camera, because the included instructions were in 2pt font with no diagrams – it’s the socket next to the headphone jack; you have to pull up on the black tabs to open the socket, the blue side faces the headphone jack. I was ready for power up.

My first issue was powering up the Pi – of course it was. Even though I had picked a 2 Amp power supply (according to the label), the Pi didn’t light up. My second power supply worked. (Later, I tried the same power supply with a different USB cable, and it worked. USB cables – who would have thought?)

The Pi booted straight into XWindows (aka Pixel), really fast – compared to my old 2012 v1 B Pi. This was my first experience with a wireless Pi 3 – and my next problem took me an hour to figure out.

But first, I changed my Pi password, because everyone should. Then I configured my location. When you configure your location, the Pi updates your /etc/wpa_supplicant/wpa_supplicant.conf file with your info. Knowing this comes in handy later.

I don’t broadcast my wireless SSID. I know this probably causes more trouble for me than anyone who might want to hijack my wireless connection, but that’s what I’ve done. So even though the Pi could see a [blank] wireless broadcast, I couldn’t connect. I tried entering my wireless password for the [blank] connection, but that didn’t work (and actually added an entry for [blank] in the wpa_supplicant.conf file). So, to the Internet!

What I discovered was that I would have to modify a CONF file to get it to work. I really expected the GUI to have a “Manually Configure Network” option, but alas it was not so. After sifting through lots of text on how to do it, I gave it a shot. There were several different takes on what to add to

/etc/wpa_supplicant/wpa_supplicant.conf

to make it work. The one I chose worked at first, then caused even more trouble. What I tried at first was something like:

network={
 ssid="name of your network"
 psk="password key"
 key_mgmt=WPA-PSK
 scan_ssid=1
}

And it worked! So I went on my merry way. And the first thing I wanted to do was update/upgrade:

$ sudo apt-get upated
$ sudo apt-get upgrade

These seemed to go well. I was following the “official” instructions for setting up the camera. The “official” documentation says:

“Now you need to enable camera support using the raspi-config program you will have used when you first set up your Raspberry Pi.”

Sounds easy enough. What I expected was that now I should see the Camera option when I:

$ sudo raspi-config

Alas, NO CAMERA OPTION! Where is my camera? Why isn’t it there? I tried a reboot, but still no camera option in raspi-config. So just to be safe, I did another:

$ sudo apt-get upated
$ sudo apt-get upgrade

And this time, I got error, errror, error. Because, as I discovered, I was no longer connected to the Internet. Not only that, I wasn’t connected to my wireless network. And now the Pi GUI said: “No wireless interfaces found”.

I plugged it in to a wired ethernet and update/upgraded but still no fix for the wireless.

Apparently, the “No wireless interfaces found” message is very common – so common that smartasses at the Beginners forum tell people to stop asking about it. What I read was that it could be either:

  • A defective Pi WiFi.
  • A bad power source.
  • You need to run dist-upgrade.
  • Use NOOBS.
  • Install firmware.
  • Edit /boot/config.txt
  • Edit /etc/dhcpcd.conf with static IP
  • Stop asking and look up “2 ip addresses”

Whelp, none of these was my problem. I re-flashed my SD and started over, taking everything slow. When it came to editing /etc/wpa_supplicant/wpa_supplicant.conf, I discovered that it was causing the GUI to display the “No wireless interfaces found” message. The answer was to add just the SSID and password, so the wpa_supplicant.conf file that ended up working looked like this:

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid="myssid"
psk="mypassword"
}

It worked! A mere hour+ of trial and error, and I was on to greater things. Note the country, ctrl_interface, update lines were all added via the GUI. I did another:

$ sudo apt-get upated
$ sudo apt-get upgrade

Just to be safe. Still, there was no Camera option in raspi-config. It was, however, in the GUI under Preferences > Pi Configuration. After enabling it there, I tried:

$ raspistill -o myimage.jpg

And it worked! Everything that works right off seems like a freeking miracle. So I’m not sure why the official documentation is incorrect.

Update here: I found out that the camera is now in raspi-config, under 5. Interfacing Options. 

And since Jessie comes with VNC installed, I also enabled that and SSH so I could manage it from my Windows PC. I installed the Windows VNC Viewer from RealVNC, and it worked flawlessly.

So from purchase time of 10:30am to up and running at 3:30pm, it took 5 hours of fiddling. But now I have all this experience (that I’ll probably never need to use again)!

Don’t forget to change your root password:

$ sudo passwd root

Because if you don’t, you can’t log in as root. Also, anyone can get root access!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s