Booting a Pi3 from USB3 Devices

This process is really easy now with the latest Raspian image – depending if your USB device make/model works:


The two USB3 devices which worked for me are these (Integral 16GB NOT the 8GB! That did not work):

stevee@AMDA8:~ $ lsusb
Bus 001 Device 004: ID 0781:5583 SanDisk Corp. (Sandisk Ultrafit 16GB)

Bus 004 Device 002: ID 26bd:9917  (this 16GB Integral is very fast and cheap!!)

Right click the Raspbian image for the Disk Image Writer in Mint and write to your USB device:

This image should already contain the newer bootcode.bin file in /boot and the Pi3 should already have it's OTP flash burned for USB boot or SD card as shown if already booted to SD card by:

stevee@RASPBERRYPI:~ $ sudo vcgencmd otp_dump | grep 17:
[sudo] password for stevee:

If this number is different then the OTP is not flashed yet and you can try:

sudo BRANCH=next rpi-update

and/or add the latest bootcode.bin file to /boot:


On your laptop, check the boot flag of the boot partition has been set – probably easiest with cfdisk:

stevee@AMDA8 ~ $ sudo cfdisk /dev/sdb

No! It hasn't. Change that with Bootable for VFAT; write; YES.

Check the partition has been resized to full – if not, you can resize it now with Gparted/other or do it later in the Pi with parted:

the other things you may want to do to your USB image is add SSH as raspi-conf does not control this now after first Pi boot up – you add a file called ssh to /boot once your image is burned, and remounted:

or if mounted under your user on your laptop:

stevee@AMDA8 ~ $ touch /media/stevee/boot/ssh

Safely unmount the USB stick and try it in your Pi3, removing any SD card first, and allowing up to 30 secs or more (device dependent) for it to see the device and start booting if it is compatible (e.g. silver Kingston DataTraveler 2.0 (PMAP) is not – or a prior GPT partition on the device is causing problems, say from a prior Mint image install with USB Writer??).

I say that because my Integral 16GB worked fine but the 8GB version did not..?!

It may be better to write a completely new partition table with Gparted and create a full size ext 4 formatted partition on any USB stick first, then write the image.

If you still have problems booting it you can research other issues like USB timeout etc. but I would try different USB devices first for what works.

On the Pi, once logged in as user pi, pw raspberry, get the small font size fixed on HDMI TV:

sudo dpkg-reconfigure console-setup

change the pi pword, then setup your user etc.

sudo adduser stevee

sudo adduser stevee sudo

find it's IP address:

stevee@RASPBERRYPI:~ $ ifconfig

Update the repo info:

stevee@RASPBERRYPI:~ $  sudo apt-get update

USB3 is faster and more durable than SD cards once booted, and can handle re-writes without failure better.

Add any other apps you want for now…or just check ssh is working locally – if so access remotely and do it from there…

stevee@RASPBERRYPI:~ $ ssh

The authenticity of host ' (' can't be established.
ECDSA key fingerprint is ….
Are you sure you want to continue connecting (yes/no)?

Yep SSH works so that ssh file in /boot does the trick.

Log in remotely from laptop:

stevee@RASPBERRYPI:~ $ sudo apt-get install nmap samba vim nbtscan winbind

sudo vi /etc/nsswitch.conf

add wins to line as usual.

hosts: files wins

stevee@RASPBERRYPI:~ $ nbtscan Sendto failed: Permission denied PIROAD <server> PIINTEG3 00:00:00:00:00:00 PIGATE <server> PIGATE 00:00:00:00:00:00

Change the hostname if you want and reboot.

stevee@raspberrypi:~ $ sudo vi /etc/hostname

Add passwordless login from your laptop to new Pi3 device name pi3:

stevee@AMDA8 ~ $ ssh-copy-id -i ~/.ssh/ PI3

The authenticity of host 'pi3 (' can't be established.
ECDSA key fingerprint is 58:de:82:aa:b6:20:53:2d:54:8c:46:3c:87:2f:ed:0c.
Are you sure you want to continue connecting (yes/no)?

Log in via SSH.

Check the partition sizes have been expanded fully:

stevee@pi3:~ $ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 15G 1.2G 13G 9% /
devtmpfs 458M 0 458M 0% /dev
tmpfs 462M 0 462M 0% /dev/shm
tmpfs 462M 6.4M 456M 2% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 462M 0 462M 0% /sys/fs/cgroup
/dev/sda1 42M 21M 21M 51% /boot
tmpfs 93M 0 93M 0% /run/user/1001

Seems so…

stevee@pi3:~ $ sudo cfdisk /dev/sda

Device Boot Start End Sectors Size Id Type
>> Free space 2048 8191 6144 3M
/dev/sda1 * 8192 93813 85622 41.8M c W95 FAT32 (LBA)
/dev/sda2 94208 30031249 29937042 14.3G 83 Linux

If you want a desktop at boot, there is now a better linux one than the old Pi2s.

sudo apt-get install lightdm parted

(ha! well, would be if you could log in to it!)

To setup a Picam there are some changes from my old method here:

but you can follow it and should be able to work out what is required from the screen output, such as permissions, and changes to the newer Motion motion.conf file that is NOT backwards compatible with the Pi2 version, by comparing an older Pi2 conf file with the new default one as some same functions have been renamed for later Motion versions. I got mine working ok, even with rpi-update firmware and apt-get upgrade.

I'll probably do a Post on it next…