diff --git a/documentation/asciidoc/accessories/ai-camera/model-conversion.adoc b/documentation/asciidoc/accessories/ai-camera/model-conversion.adoc index f6cd7e76b..e04ad522a 100644 --- a/documentation/asciidoc/accessories/ai-camera/model-conversion.adoc +++ b/documentation/asciidoc/accessories/ai-camera/model-conversion.adoc @@ -77,6 +77,8 @@ $ imxconv-pt -i -o Both commands create an output folder that contains a memory usage report and a `packerOut.zip` file. +For optimal use of the memory available to the accelerator on the IMX500 sensor, add `--no-input-persistency` to the above commands. However, this will disable input tensor generation and return to the application for debugging purposes. + For more information on the model conversion process, see the official https://developer.aitrios.sony-semicon.com/en/raspberrypi-ai-camera/documentation/imx500-converter[Sony IMX500 Converter documentation]. === Packaging diff --git a/documentation/asciidoc/accessories/camera/camera_hardware.adoc b/documentation/asciidoc/accessories/camera/camera_hardware.adoc index b021b0e6a..5ec22d36d 100644 --- a/documentation/asciidoc/accessories/camera/camera_hardware.adoc +++ b/documentation/asciidoc/accessories/camera/camera_hardware.adoc @@ -209,7 +209,7 @@ Then, please follow the relevant setup instructions for xref:../computers/camera | Depends on lens | Maximum exposure time (seconds) -| 0.97 +| 3.28 | 11.76 | 112 | 112 diff --git a/documentation/asciidoc/computers/config_txt/boot.adoc b/documentation/asciidoc/computers/config_txt/boot.adoc index 8afd90026..a7dadaeff 100644 --- a/documentation/asciidoc/computers/config_txt/boot.adoc +++ b/documentation/asciidoc/computers/config_txt/boot.adoc @@ -25,13 +25,34 @@ The Raspberry Pi 5 firmware defaults to loading `kernel_2712.img` because this i === `arm_64bit` + If set to 1, the kernel will be started in 64-bit mode. Setting to 0 selects 32-bit mode. In 64-bit mode, the firmware will choose an appropriate kernel (e.g. `kernel8.img`), unless there is an explicit `kernel` option defined, in which case that is used instead. -Defaults to 1 on Pi 4s (Pi 4B, Pi 400, CM4 and CM4S), and 0 on all other platforms. However, if the name given in an explicit `kernel` option matches one of the known kernels then `arm_64bit` will be set accordingly. +Defaults to 1 on Raspberry Pi 4, 400 and Compute Module 4, 4S platforms. Defaults to 0 on all other platforms. However, if the name given in an explicit `kernel` option matches one of the known kernels then `arm_64bit` will be set accordingly. + +64-bit kernels come in the following forms: + +* uncompressed image files +* gzip archives of an image + +Both forms may use the `img` file extension; the bootloader recognizes archives using signature bytes at the start of the file. + +The following Raspberry Pi models support this flag: + +* 2B rev 1.2 +* 3 +* 3+ +* 4 +* 400 +* Zero 2 W +* Compute Module 3 +* Compute Module 3+ +* Compute Module 4 +* Compute Module 4S -NOTE: 64-bit kernels may be uncompressed image files or a gzip archive of an image (which can still be called kernel8.img; the bootloader will recognize the archive from the signature bytes at the beginning). The 64-bit kernel will only work on the Raspberry Pi 3, 3+, 4, 400, Zero 2 W and 2B rev 1.2, and Raspberry Pi Compute Modules 3, 3+ and 4. Raspberry Pi 5 only supports a 64-bit kernel, so this parameter has been removed for that device. +Later models, such as Raspberry Pi 5, _only_ support the 64-bit kernel. Such models do not support this flag. === `ramfsfile` diff --git a/documentation/asciidoc/computers/raspberry-pi/boot-eeprom-diagnostics.adoc b/documentation/asciidoc/computers/raspberry-pi/boot-eeprom-diagnostics.adoc index 88eaab8e1..04c792191 100644 --- a/documentation/asciidoc/computers/raspberry-pi/boot-eeprom-diagnostics.adoc +++ b/documentation/asciidoc/computers/raspberry-pi/boot-eeprom-diagnostics.adoc @@ -1,12 +1,12 @@ -== Boot diagnostics on the Raspberry Pi 4 +== Boot diagnostics -Starting with version 2020-04-16 of the Raspberry Pi 4 bootloader, diagnostic information can be displayed at boot time on an HDMI display. To see this diagnostic information, power down the Raspberry Pi 4, remove the SD card, then power back up. A diagnostic display similar to below should appear on the attached display. +The bootloader on Raspberry Pi 4 or later flagship models can display diagnostic information at boot time on an HDMI display. To see this diagnostic information, power down the Raspberry Pi, disconnect the boot media (typically an SD card or SSD), then power back up. If your Raspberry Pi is connected to a display, you should see diagnostics similar to the following: image::images/bootloader-diagnostics.png[Boot diagnostics screen] -This diagnostics page will also appear if the bootloader is unable to boot from an inserted SD card, or is unable to network boot; for example, if there is no bootable image on the card, or if it is defective, or if the network boot parameters are incorrect. +This diagnostics page will also appear if the bootloader is unable to boot from any boot media or network boot. This can happen if there is no bootable image on the boot media, if the boot media is defective, or if network boot parameters are incorrect. -Once the diagnostics page is displayed, a reboot is only possible by power cycling the device (i.e. unplug then re-plug the power supply). +To reboot while displaying the diagnostics page, power cycle the device. You can disconnect, then reconnect the power supply, or press and hold the power button, if your device has one. The top line describes the model of Raspberry Pi and its memory capacity. The QR code is a link to the https://www.raspberrypi.com/software/[downloads page]. @@ -20,25 +20,25 @@ The diagnostic information is as follows: | Bootloader git version - RO (if EEPROM is write protected) - software build date | update-ts -| The timestamp corresponding to when the EEPROM configuration was updated. This timestamp is checked in xref:raspberry-pi.adoc#ENABLE_SELF_UPDATE[self-update] mode to avoid updating to an old configuration. +| the timestamp corresponding to when the EEPROM configuration was updated; this timestamp is checked in xref:raspberry-pi.adoc#ENABLE_SELF_UPDATE[self-update] mode to avoid updating to an old configuration | secure-boot -| If xref:raspberry-pi.adoc#secure-boot[secure-boot] is enabled, then the processor revision (B0/C0) and xref:configuration.adoc#part4[signed-boot status flags] are displayed. Otherwise, this line is blank. +| If xref:raspberry-pi.adoc#secure-boot[secure-boot] is enabled, displays the processor revision (B0/C0) and xref:configuration.adoc#part4[signed-boot status flags]; otherwise, this line is blank | board | xref:raspberry-pi.adoc#raspberry-pi-revision-codes[Board revision] - serial number - Ethernet MAC address | boot -| *mode* (current boot mode name and number) *order* (the xref:raspberry-pi.adoc#BOOT_ORDER[BOOT ORDER] configuration) *retry* (retry count in the current boot mode) *restart* (number of cycles through the list of boot modes). +| *mode* (current boot mode name and number) *order* (the xref:raspberry-pi.adoc#BOOT_ORDER[BOOT ORDER] configuration) *retry* (retry count in the current boot mode) *restart* (number of cycles through the list of boot modes) | SD | The SD card detect status (detected/not detected). | part -| Master Boot Record primary partitions type:LBA. +| Master Boot Record primary partitions type:LBA | fw -| Filename for `start.elf` and `fixup.dat` if present (e.g. `start4x.elf`, `fixup4x.dat`). +| Filename for `start.elf` and `fixup.dat` if present (e.g. `start4x.elf`, `fixup4x.dat`) | net | Network boot: link status (up/down), client IP address (ip), subnet (sn), default gateway (gw) @@ -47,9 +47,7 @@ The diagnostic information is as follows: | Network boot: TFTP server IP address | display -| Indicates whether hotplug was detected (`HPD=1`) and if so whether the EDID was read successfully (`EDID=ok`) for each HDMI output. +| Indicates whether hotplug was detected (`HPD=1`) and if so whether the EDID was read successfully (`EDID=ok`) for each HDMI output |=== -This display can be disabled using the `DISABLE_HDMI` option, see xref:raspberry-pi.adoc#raspberry-pi-bootloader-configuration[Bootloader configuration]. - -NOTE: This is purely for diagnosing boot failures; it is not an interactive bootloader. If you require an interactive bootloader, consider using a tool such as U-Boot. +To disable this diagnostics display, use the `DISABLE_HDMI` option in the xref:raspberry-pi.adoc#raspberry-pi-bootloader-configuration[bootloader configuration]. diff --git a/documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc b/documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc index 3df164893..c9f40c79e 100644 --- a/documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc +++ b/documentation/asciidoc/computers/raspberry-pi/boot-eeprom.adoc @@ -4,9 +4,9 @@ Raspberry Pi 5, Raspberry Pi 4, 400, Compute Module 4, and Compute Module 4S com NOTE: You can find the scripts and pre-compiled binaries used to create `rpi-eeprom` in the https://github.com/raspberrypi/rpi-eeprom/[rpi-eeprom GitHub repository]. -=== Boot diagnostics +=== Diagnostics -If an error occurs during boot, then an xref:configuration.adoc#led-warning-flash-codes[error code] will be displayed via the green LED. Newer versions of the bootloader will display a xref:raspberry-pi.adoc#boot-diagnostics-on-the-raspberry-pi-4[diagnostic message] which will be shown on both HDMI displays. +If an error occurs during boot, then an xref:configuration.adoc#led-warning-flash-codes[error code] will be displayed via the green LED. Newer versions of the bootloader will display a xref:raspberry-pi.adoc#boot-diagnostics[diagnostic message] on all HDMI displays. [[bootloader_update_stable]] === Update the bootloader diff --git a/documentation/asciidoc/computers/raspberry-pi/eeprom-bootloader.adoc b/documentation/asciidoc/computers/raspberry-pi/eeprom-bootloader.adoc index fa90c7a3f..36e984a83 100644 --- a/documentation/asciidoc/computers/raspberry-pi/eeprom-bootloader.adoc +++ b/documentation/asciidoc/computers/raspberry-pi/eeprom-bootloader.adoc @@ -307,7 +307,7 @@ Default: `""` [[DISABLE_HDMI]] ==== `DISABLE_HDMI` -The xref:raspberry-pi.adoc#boot-diagnostics-on-the-raspberry-pi-4[HDMI boot diagnostics] display is disabled if `DISABLE_HDMI=1`. Other non-zero values are reserved for future use. +The xref:raspberry-pi.adoc#boot-diagnostics[HDMI boot diagnostics] display is disabled if `DISABLE_HDMI=1`. Other non-zero values are reserved for future use. Default: `0` diff --git a/documentation/asciidoc/computers/raspberry-pi/raspberry-pi-industrial.adoc b/documentation/asciidoc/computers/raspberry-pi/raspberry-pi-industrial.adoc index 92c23593d..faf0f06f0 100644 --- a/documentation/asciidoc/computers/raspberry-pi/raspberry-pi-industrial.adoc +++ b/documentation/asciidoc/computers/raspberry-pi/raspberry-pi-industrial.adoc @@ -173,6 +173,8 @@ See https://gitlab.com/cryptsetup/cryptsetup[Cryptsetup] for more information ab ==== Program a key into OTP with `rpi-otp-private-key` +NOTE: The `rpi-otp-private-key` script only works on devices that use the Broadcom xref:processors.adoc#bcm2711[BCM2711] or xref:processors.adoc#bcm2712[BCM2712] processors. + The https://github.com/raspberrypi/rpi-eeprom/blob/master/tools/rpi-otp-private-key[`rpi-otp-private-key`] script wraps the device private key `vcmailbox` APIs to make it easier to read and write a key in the OpenSSL format. NOTE: The https://github.com/raspberrypi/usbboot[`usbboot`] repository contains all the tools you need, including https://github.com/raspberrypi/rpi-eeprom[`rpi-eeprom`] as a Git submodule. diff --git a/documentation/asciidoc/computers/remote-access/network-boot-raspberry-pi.adoc b/documentation/asciidoc/computers/remote-access/network-boot-raspberry-pi.adoc index ddd8a1177..75db65a00 100644 --- a/documentation/asciidoc/computers/remote-access/network-boot-raspberry-pi.adoc +++ b/documentation/asciidoc/computers/remote-access/network-boot-raspberry-pi.adoc @@ -62,16 +62,16 @@ For further details of configuring the Raspberry Pi 4 bootloader, see xref:raspb Before configuring network boot, make a note of the serial number and mac address so that the board can be identified by the TFTP/DHCP server. -On Raspberry Pi 4 the MAC address is programmed at manufacture and there is no link between the MAC address and serial number. Both the MAC address and serial numbers are displayed on the bootloader xref:raspberry-pi.adoc#boot-diagnostics-on-the-raspberry-pi-4[HDMI diagnostics] screen. +On Raspberry Pi 4 and later flagship models, the MAC address is programmed at manufacture and there is no link between the MAC address and serial number. Both the MAC address and serial numbers are displayed on the bootloader xref:raspberry-pi.adoc#boot-diagnostics[HDMI diagnostics] screen. -To find the Ethernet MAC address: +To find the Ethernet MAC address, run the following command: [source,console] ---- $ ethtool -P eth0 ---- -To find the serial number: +To find the serial number, run the following command: [source,console] ---- diff --git a/documentation/asciidoc/microcontrollers/pico-series/utilities.adoc b/documentation/asciidoc/microcontrollers/pico-series/utilities.adoc index 13d75bb78..d44dca5da 100644 --- a/documentation/asciidoc/microcontrollers/pico-series/utilities.adoc +++ b/documentation/asciidoc/microcontrollers/pico-series/utilities.adoc @@ -8,8 +8,6 @@ If you are unsure what is programmed into your Raspberry Pi Pico-series device, === Debugging using another Pico-series device -CAUTION: Pico 2 is not yet supported by `debuprobe_on_pico` debugging software. - You can use one Pico-series device to debug another Pico-series device. This is possible via `debugprobe`, an application that allows a Pico to act as a USB → SWD and UART converter. You can find the latest release of the firmware in https://github.com/raspberrypi/debugprobe/releases/latest[the debugprobe GitHub repository]. diff --git a/documentation/asciidoc/services/connect/troubleshooting.adoc b/documentation/asciidoc/services/connect/troubleshooting.adoc index 5d2411000..d05876ab3 100644 --- a/documentation/asciidoc/services/connect/troubleshooting.adoc +++ b/documentation/asciidoc/services/connect/troubleshooting.adoc @@ -61,11 +61,42 @@ For screen sharing, Connect can only share an existing graphical desktop session ==== Networking and firewall issues -Connect avoids changing your network or firewall in order to establish a connection. However, if you have a restrictive network and experience trouble connecting, check the following: +Connect usually communicates between devices without requiring changes to your network or firewall. However, especially restrictive networks can sometimes block Connect communication. To help debug problems with such networks, `rpi-connect` and `rpi-connect-lite` include the `rpi-connect doctor` command. `rpi-connect doctor` runs a series of tests to check that Connect communication functions properly on your network. -. Can you access the Connect API, which Connect uses for authentication and connection negotiation between your Raspberry Pi and your browser? To check, load https://api.connect.raspberrypi.com/up?[https://api.connect.raspberrypi.com/up?] on your Raspberry Pi. -. Can you access the Connect STUN server, which Connect uses to obtain a peer-to-peer connection through local or public networks? To check, ping `stun.raspberrypi.com` on UDP port 3478. -. Can you access our TURN servers, which Connect uses to relay sessions when a peer-to-peer connection fails? To check, ping `turn1.raspberrypi.com`, `turn2.raspberrypi.com` and `turn3.raspberrypi.com` on TCP ports 3478 or 443, or UDP ports 3478, 443 and 49152 -> 65535. + +To run these tests on your device, run the following command: + +[source,console] +---- +$ rpi-connect doctor +---- + +If Connect can communicate properly on your network, you should see output similar to the following: + +---- +✓ Communication with Raspberry Pi Connect API +✓ Authentication with Raspberry Pi Connect API +✓ Peer-to-peer connection candidate via STUN +✓ Peer-to-peer connection candidate via TURN +---- + +If Connect can't communicate properly on your network, you'll see an "x" instead of a check next to the failing test case. Ask your network administrator to enable the following connections on your network: + +* unauthenticated HTTPS requests to the Raspberry Pi Connect API on port 443 of `api.connect.raspberrypi.com` +* authenticated requests to the Raspberry Pi Connect API on port 443 of `api.connect.raspberrypi.com` +* requests to Raspberry Pi Connect STUN or TURN servers on UDP port 3478 of all of the following: +** `stun.raspberrypi.com` +** `turn1.raspberrypi.com` +** `turn2.raspberrypi.com` +** `turn3.raspberrypi.com` +* requests to Raspberry Pi Connect TURN servers on TCP ports 3478 or 443 of all of the following: +** `turn1.raspberrypi.com` +** `turn2.raspberrypi.com` +** `turn3.raspberrypi.com` +* requests to Raspberry Pi Connect TURN servers on UDP ports 3478, 443, or 49152 -> 65535 of all of the following: +** `turn1.raspberrypi.com` +** `turn2.raspberrypi.com` +** `turn3.raspberrypi.com` === View Connect status diff --git a/jekyll-assets/_includes/head.html b/jekyll-assets/_includes/head.html index 86950500b..d428ab909 100644 --- a/jekyll-assets/_includes/head.html +++ b/jekyll-assets/_includes/head.html @@ -24,6 +24,12 @@ diff --git a/jekyll-assets/_includes/header.html b/jekyll-assets/_includes/header.html index 6b1743c00..76d60f53b 100644 --- a/jekyll-assets/_includes/header.html +++ b/jekyll-assets/_includes/header.html @@ -3,14 +3,15 @@ margin: 0; padding: 0; border: 0; - line-height: 1; font-family: "Roboto", sans-serif; font-size: medium; font-weight: 400; + line-height: 1; text-rendering: optimizeLegibility; -webkit-text-size-adjust: 100%; -moz-text-size-adjust: 100%; text-size-adjust: 100%; + letter-spacing: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: relative; @@ -250,13 +251,125 @@ padding: 16px; } } + +#__rptl-cookiebanner { + margin: 0; + padding: 0; + border: 0; + font-family: "Roboto", sans-serif; + font-size: medium; + font-weight: 400; + line-height: 1; + text-rendering: optimizeLegibility; + -webkit-text-size-adjust: 100%; + -moz-text-size-adjust: 100%; + text-size-adjust: 100%; + letter-spacing: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + position: relative; + z-index: 101; + background: #333; + color: #fff; +} +#__rptl-cookiebanner.__rptl-cookiebanner-hidden { + display: none; +} +#__rptl-cookiebanner .__rptl-cookiebanner-wrapper { + margin: 0; + padding: 0; + border: 0; + box-sizing: border-box; + max-width: 1300px; + margin-left: auto; + margin-right: auto; + padding: 16px; +} +@media (min-width: 800px) { + #__rptl-cookiebanner .__rptl-cookiebanner-wrapper { + padding: 16px 76px; + } +} +@media (min-width: 1200px) { + #__rptl-cookiebanner .__rptl-cookiebanner-wrapper { + padding: 16px 84px; + } +} +#__rptl-cookiebanner .__rptl-cookiebanner-text { + margin: 0; + padding: 0; + border: 0; + font: inherit; + font-size: 100%; + display: block; + line-height: 1.5; + margin-bottom: 10px; +} +#__rptl-cookiebanner .__rptl-cookiebanner-link { + text-decoration: none; + color: inherit; + font-weight: bold; +} +#__rptl-cookiebanner .__rptl-cookiebanner-link:hover { + text-decoration: underline; +} +#__rptl-cookiebanner .__rptl-cookiebanner-buttons { + display: flex; + gap: 10px; +} +#__rptl-cookiebanner .__rptl-cookiebanner-accept, #__rptl-cookiebanner .__rptl-cookiebanner-reject { + margin: 0; + padding: 0; + border: 0; + font: inherit; + font-size: 100%; + cursor: pointer; + border-radius: 9999px; + line-height: 1.5; + font-weight: bold; + padding: 5px 15px; +} +#__rptl-cookiebanner .__rptl-cookiebanner-accept:hover, #__rptl-cookiebanner .__rptl-cookiebanner-reject:hover { + text-decoration: underline; +} +#__rptl-cookiebanner .__rptl-cookiebanner-accept:focus, #__rptl-cookiebanner .__rptl-cookiebanner-reject:focus { + box-shadow: rgb(255, 255, 255) 0px 0px 0px 0px, rgb(121, 167, 236) 0px 0px 0px 3px, rgba(0, 0, 0, 0) 0px 0px 0px 0px; +} +#__rptl-cookiebanner .__rptl-cookiebanner-accept { + color: #333; + background: #fff; +} +#__rptl-cookiebanner .__rptl-cookiebanner-reject { + color: #fff; + background: #333; +} +
+
+

+ We use some essential cookies to make our website work. +

+

+ We use optional cookies, as detailed in our cookie policy, to remember your + settings and understand how you use our website. +

+
+ + +
+
+
- + @@ -291,7 +404,32 @@