Skip to content

Commit

Permalink
Merge pull request #3563 from raspberrypi/develop
Browse files Browse the repository at this point in the history
Push to production
  • Loading branch information
Alasdair Allan authored Mar 20, 2024
2 parents 9728c7f + 2ed91b6 commit 33ea364
Show file tree
Hide file tree
Showing 8 changed files with 218 additions and 127 deletions.
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ GEM
jekyll (>= 3.5, < 5.0)
jekyll-feed (~> 0.9)
jekyll-seo-tag (~> 2.1)
nokogiri (1.16.2)
nokogiri (1.16.3)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
pathutil (0.16.2)
Expand Down
238 changes: 161 additions & 77 deletions documentation/asciidoc/computers/camera/rpicam_apps_building.adoc

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
=== `libcamera` and `rpicam-apps` packages

A number of `apt` packages are provided for convenience. In order to access them, we recommend keeping your OS up to date xref:../computers/os.adoc#using-apt[in the usual way].
Raspberry Pi OS provides a number of `apt` packages for convenience. In order to access them, we recommend xref:../computers/os.adoc#using-apt[keeping your OS up to date].

==== Binary packages

There are two `rpicam-apps` packages available, containing the necessary executables:

* `rpicam-apps` contains the full applications with support for previews using a desktop environment. This package is pre-installed in Raspberry Pi OS.
* `rpicam-apps` contains full applications with support for previews using a desktop environment. This package is pre-installed in Raspberry Pi OS.

* `rpicam-apps-lite` omits desktop environment support, and only makes the DRM preview available. This package is pre-installed in Raspberry Pi OS Lite.

Expand All @@ -22,10 +22,4 @@ These will be installed automatically when needed.

==== Dev packages

`rpicam-apps` can be rebuilt on their own without installing and building `libcamera` and `libepoxy` from scratch. To enable this, the following packages should be installed:

* `libcamera-dev` contains the necessary `libcamera` header files and resources.

* `libepoxy-dev` contains the necessary `libepoxy` header files and resources. You will only need this if you want support for the GLES/EGL preview window.

Subsequently `rpicam-apps` can be xref:camera_software.adoc#building-rpicam-apps-without-rebuilding-libcamera[checked out from GitHub and rebuilt].
You can rebuild `rpicam-apps` without building `libcamera` and `libepoxy` from scratch. For more information, see xref:camera_software.adoc#building-rpicam-apps-without-building-libcamera[Building `rpicam-apps` without rebuilding `libcamera`].
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

Hardware decoding of additional codecs on the Raspberry Pi 3 and earlier models can be enabled by https://codecs.raspberrypi.com/license-keys/[purchasing a licence] that is locked to the CPU serial number of your Raspberry Pi.

On the Raspberry Pi 4, the hardware codecs for MPEG2 or VC1 are permanently disabled and cannot be enabled even with a licence key; on the Raspberry Pi 4, thanks to its increased processing power compared to earlier models, MPEG2 and VC1 can be decoded in software via applications such as VLC. Therefore, a hardware codec licence key is not needed if you're using a Raspberry Pi 4.
The Raspberry Pi 4 has permanently disabled hardware decoders for MPEG2 and VC1. These codecs cannot be enabled, so a hardware codec licence key is not needed. Software decoding of MPEG2 and VC1 files performs well enough for typical use cases.

The Raspberry Pi 5 has H.265 (HEVC) hardware decoding. This decoding is enabled by default, so a hardware codec licence key is not needed.

=== `decode_MPG2`

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,77 +13,87 @@ To set up your storage device so that it always mounts to a specific location of
You can mount your storage device at a specific folder location. It is conventional to do this within the `/mnt` folder, for example `/mnt/mydisk`. Note that the folder must be empty.

Plug the storage device into a USB port on the Raspberry Pi, and list all the disk partitions on the Raspberry Pi using the following command:
+

[source,console]
----
sudo lsblk -o UUID,NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL,MODEL
$ sudo lsblk -o UUID,NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL,MODEL
----
+

The Raspberry Pi uses mount points `/` and `/boot/firmware/`. Your storage device will show up in this list, along with any other connected storage.

Use the SIZE, LABEL, and MODEL columns to identify the name of the disk partition that points to your storage device. For example, `sda1`.
The FSTYPE column contains the filesystem type. If your storage device uses an exFAT file system, install the exFAT driver:
+

[source,console]
----
sudo apt update
sudo apt install exfat-fuse
$ sudo apt update
$ sudo apt install exfat-fuse
----

If your storage device uses an NTFS file system, you will have read-only access to it. If you want to write to the device, you can install the ntfs-3g driver:
+

[source,console]
----
sudo apt update
sudo apt install ntfs-3g
$ sudo apt update
$ sudo apt install ntfs-3g
----

Run the following command to get the location of the disk partition:
+

[source,console]
----
sudo blkid
$ sudo blkid
----
+

For example, `/dev/sda1`.

Create a target folder to be the mount point of the storage device.
The mount point name used in this case is `mydisk`. You can specify a name of your choice:
+

[source,console]
----
sudo mkdir /mnt/mydisk
$ sudo mkdir /mnt/mydisk
----

Mount the storage device at the mount point you created:
+

[source,console]
----
sudo mount /dev/sda1 /mnt/mydisk
$ sudo mount /dev/sda1 /mnt/mydisk
----

Verify that the storage device is mounted successfully by listing the contents:
+

[source,console]
----
ls /mnt/mydisk
$ ls /mnt/mydisk
----

=== Setting up automatic mounting

You can modify the `fstab` file to define the location where the storage device will be automatically mounted when the Raspberry Pi starts up. In the `fstab` file, the disk partition is identified by the universally unique identifier (UUID).

Get the UUID of the disk partition:
+

[source,console]
----
sudo blkid
$ sudo blkid
----

Find the disk partition from the list and note the UUID. (For example, `5C24-1453`.) Open the fstab file using a command line editor such as nano:
+

[source,console]
----
sudo nano /etc/fstab
$ sudo nano /etc/fstab
----

Add the following line in the `fstab` file:
+

[source,console]
----
UUID=5C24-1453 /mnt/mydisk fstype defaults,auto,users,rw,nofail 0 0
$ UID=5C24-1453 /mnt/mydisk fstype defaults,auto,users,rw,nofail 0 0
----
+

Replace `fstype` with the type of your file system, which you found when you went through the steps above, for example: `ntfs`.

If the filesystem type is FAT or NTFS, add `,umask=000` immediately after `nofail` - this will allow all users full read/write access to every file on the storage device.
Expand All @@ -98,8 +108,9 @@ For more information on each Linux command, refer to the specific manual page us

When the Raspberry Pi shuts down, the system takes care of unmounting the storage device so that it is safe to unplug it. If you want to manually unmount a device, you can use the following command:

[source,console]
----
sudo umount /mnt/mydisk
$ sudo umount /mnt/mydisk
----

If you receive an error that the 'target is busy', this means that the storage device was not unmounted. If no error was displayed, you can now safely unplug the device.
Expand All @@ -111,14 +122,16 @@ The 'target is busy' message means there are files on the storage device that ar
Close any program which has open files on the storage device. If you have a terminal open, make sure that you are not in the folder where the storage device is mounted, or in a sub-folder of it.

If you are still unable to unmount the storage device, you can use the `lsof` tool to check which program has files open on the device. You need to first install `lsof` using `apt`:
+

[source,console]
----
sudo apt update
sudo apt install lsof
$ sudo apt update
$ sudo apt install lsof
----
+

To use lsof:
+

[source,console]
----
lsof /mnt/mydisk
$ lsof /mnt/mydisk
----
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,8 @@ Raspberry Pi models have the following display connectivity:
|mini HDMI
|===

NOTE: No Raspberry Pi models support video over USB-C (DisplayPort alt mode).

Most displays don't have micro or mini HDMI ports. However, you can use a https://www.raspberrypi.com/products/micro-hdmi-to-standard-hdmi-a-cable/[micro-HDMI-to-HDMI cable] or https://www.raspberrypi.com/products/standard-hdmi-a-male-to-mini-hdmi-c-male-cable/[mini-HDMI-to-HDMI cable] to connect those ports on your Raspberry Pi to any HDMI display. For displays that don't support HDMI, consider an adapter that translates display output from HDMI to a port supported by your display.

image::images/peripherals/cable-hdmi.png[alt="Plugging a micro HDMI cable into a Raspberry Pi."]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,6 @@ Temperature decreases use the same mapping with a 5°C **hysteresis**; fan speed

At boot the fan is turned on, and the tachometer input is checked to see if the fan is spinning. If it is, then the `cooling_fan` device tree overlay is enabled. This overlay is in `bcm2712-rpi-5-b.dtb` by default, but with `status=disabled`.

INFO: Both fan options use the Coolcox https://www.coolcox.com/products/pdf/CC3007.pdf[CC3007H05S] part.

==== Fan connector pinout

The fan connector is a 1mm pitch JST-SH socket containing the following four pins:
Expand Down
8 changes: 3 additions & 5 deletions documentation/asciidoc/computers/remote-access/vnc.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,11 @@ Raspberry Pi OS includes https://github.com/any1/wayvnc[wayvnc]. This provides a

Before you can use VNC on your Raspberry Pi, you must enable the VNC server.

NOTE: Previous versions of Raspberry Pi OS supported client connections from RealVNC. In Raspberry Pi OS _Bookworm_ or later, RealVNC is no longer supported. Instead, you can connect using TigerVNC.

=== Enable the VNC server

Raspberry Pi OS supports enabling the VNC server both graphically and at the command line.

TIP: Once enabled, you can access your WayVNC configuration at `~/.config/wayvnc/`.
TIP: Once enabled, you can access your WayVNC configuration at `/etc/wayvnc/`.

==== Enable VNC Server Graphically

Expand Down Expand Up @@ -58,8 +56,8 @@ sudo raspi-config

To connect to your Raspberry Pi, you'll need the following:

* your Raspberry Pi and the device running the VNC client must be connected to the same network (e.g. a home wireless network)
* the IP address of your Raspberry Pi
* your Raspberry Pi and the device running the VNC client, connected to the same network (e.g. a home wireless network or VPN)
* the hostname or IP address of your Raspberry Pi
* a valid username and password combination for an account on your Raspberry Pi

If you don't know the IP address of your device, see xref:remote-access.adoc#ip-address[our instructions on finding your IP address].
Expand Down

0 comments on commit 33ea364

Please sign in to comment.