Raspberry network boot

Raspberry Pi is able to boot by network

Each Raspberry model makes it differently.

Raspberry Pi 4b

For Raspberry 4 appeared possibility to update firmware. Factory releases Raspberry 4 without network boot. To turn it on you are to update firmware. Download from wtware.com/files/raspberry/ pi4netboot-eeprom-nnn.zip archive for the latest version. Unpack it to clean SD. Boot Raspberry 4. If succeed, in several seconds green light will blink frequently. Turn raspberry off and eject SD. Updated in such way Raspberry 4 will boot only by network. To boot it from local SD, download from the link above pi4default-eeprom-nnn.zip archive, unpack it to SD, boot from this SD. Another way to restore local boot from SD is in Recovery section on official Raspberry site.

We don't recommend to boot Raspberry 4 by network, if you use local Google Chromium, especially on Raspberry 1GB RAM. Chromium is large. When you use network boot, all Chromium files are stored in memory, so remains not enough memory for work. When Pi boots from local SD, WTware unpacks many files to SD, so remains more free memory.

WTware DHCP autodetermines data, that Raspberry needs for network boot. If you use another DHCP, specify in 066 DHCP option TFTP server IP address.

Raspberry ignores 067 DHCP option and always boots from TFTP root or from corresponding to Raspberry serial number directory. WTware TFTP knows about that and sends Raspberry WTware version, that is specified in WTware Configurator. If you use another TFTP, find in your TFTP logs, where Raspberry searches for boot files. Use WTware zip archive, keep it's structure of directories.

If you need to make changes to config.txt or cmdline.txt for one Raspberry, that boots from WTware TFTP, copy it from directory (instead of 6.0.4 specify your WTware version):

C:\Program Files (x86)\WTware\TFTPDROOT\6.0.4\pi2\localboot\
C:\ProgramData\WTware\Terminals\{MAC-address of your Pi}\
And in terminal directory make changes to files, needed only for this terminal. Firstly WTware TFTP searches for config.txt or cmdline.txt files in terminal directory and if fails, sends common files.

Raspberry Pi 3b+

We don't recommend to boot Raspberry 2b, 3b and 3b+ by network, when your network is more complicated than one switch, connecting server and several Raspberries. Raspberry bootloaders up to Pi 4 version contain errors. Besides problems, that result in "Raspberry failed to boot", sometimes while boot by network Raspberry 2b, 3b and 3b+ use IP owned by another computer, not the determined for Raspberry by DHCP IP, which leads to failure of other computer with this IP.

Raspberry 3b+ boots by network only without SD. Or fails to boot, then this Pi3b+ has no chance to boot by network.

Raspberry Pi 3b

We don't recommend to boot Raspberry 2b, 3b and 3b+ by network. Embedded into processor code sometimes allows to boot without SD. By default this code is turned off. To turn it on download pi3netprog.zip. Unpack it to clean SD. Boot Raspberry 3b, wait for the message, that configuration succeed. Then it should boot by network without SD. At boot start will be delay for about 10 seconds.

If won't boot, you may try to use SD, containing only bootcode.bin file, the same as for Raspberry 2b.

Raspberry Pi 2b

We don't recommend to boot Raspberry 2b, 3b and 3b+ by network. Raspberry Pi 2b is not able to boot without SD. It needs SD card, containing only bootcode.bin file. This file you may copy from boot SD, it's the same for all Raspberry models.

If you have any comments or remarks to this article, please, let us know!