CM4-NANO-A

From Waveshare Wiki
Jump to: navigation, search
CM4-NANO-A-4
CM4-NANO-A-4.jpg
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

Introduction

Description

CM4-NANO-A is the mini board of Raspberry Pi Compute Module 4, which is a baseboard of Raspberry Pi Compute Module 4 with a power supply interface of 5V/2.5A, USB Type C.

Precautions

  1. DO NOT plug and unplug any device other than USB while it is powered on.
  2. The Type C interface can be used as a power supply or as a USB SLAVE interface to burn the image.
  3. In order to ensure the normal power supply of CM4, please do not connect other devices when using the Type C interface to burn the image.
  4. When CM4 is in normal use, it needs to provide 5V 2A power supply for CM4. Otherwise, there may be problems such as shutdown, frequency reduction, and so on.
  5. Since the module does not have any protection circuit, please do not short-circuit the power supply.
  6. USB2.0 is disabled by default, if you want to open it, you need to add the line dtoverlay=dwc2,dr_mode=host to the config.txt file.

Dimension

CM4-NANO-A-details-intro.jpg
Compute_Module 4 Core board
Compute Module 4 IO Board 5.png

Onboard Resources

CM4-NANO-A-details-size.jpg

Label Name Description
1 CM4 socket suitable for all variants of Compute Module 4
2 Power supply/burning interface 5V/2A power supply, can also be used as eMMC burning interface
3 Micro SD card interface For inserting a Micro SD card with the system, only for Lite version
4 CSI Interface Single MIPI CSI Camera Interface
5 USB 2.0 interface USB 2.0 interface, support various USB device insertion
6 40PIN GPIO interface Easy access to various HAT modules
7 PWR indicator Indicates the power status of the Raspberry Pi
8 ACT Indicator Indicates the working status of the Raspberry Pi
9 AMS1117-3.3V Supply voltage for CSI and 40Pin
10 BOOT ON: Switch the USB to type C interface, and enter the download mode when powered on (configured as a large-capacity disk through rpi boot)

OFF: Switch the USB to TYPE A interface, it will not enter the download when powered on (start from eMMC or SD card)

Introduction

Precautions

Do not plug or unplug any device while it is powered on.

Writing Image

USB2.0

The USB port is disabled by default on the CM4 to save power. If you need to start, you need to add the following to the config.txt file:

dtoverlay=dwc2,dr_mode=host

After restarting

If you use the latest Raspberry Pi OS (image after October 30, 2021) USB2.0 is OTG mode by default, CM4 will report an error:

config failed, hub doesn't have any ports! (err -19)

However, USB can still be used. If you want to remove this error, remove otg_mode=1 in [cm4] of config.txt, and add dtoverlay=dwc2, dr_mode=host (USB cannot be recognized without adding it).
CM4 Burn EMMC 12.png

CSI

Configuration file

CSI and DSI interfaces are closed by default, they will use the I2C-10, I2C-11 and I2C-0.
Open a terminal and run the following commands:

wget https://www.waveshare.net/w/upload/7/75/CM4_dt_blob_Source.zip
  unzip -o CM4_dt_blob_Source.zip -d ./CM4_dt_blob_Source
  sudo chmod 777 -R CM4_dt_blob_Source
  cd CM4_dt_blob_Source/
  #If using two cameras and DSI0 execute
  sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts
  # if using two cameras and DSI1 execute
  sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp1-double_cam.dts
  #When using any DSI, HDMI1 has no image output, even if you do not connect the DSI screen, as long as the corresponding file is compiled, then HDMI1 will not output
  #If you need to restore, delete the corresponding dt-blob.bin: sudo rm -rf /boot/dt-blob.bin
  # After execution, turn off the power and restart the CM4

Recording test

Then connect the Camera and DSI/HDMI display:
1: Make sure the connection is in the power-off state
2: Connect Power
3: Wait a few seconds for the screen to start up
4: If it fails to start, check whether /boot/dt-blob.bin exists, and restart it if it exists.
5: The camera needs to run raspi-config, select Interfacing Options->Camera->Yes->Finish-Yes, reboot the system, open the enable camera, and then restart to save the changes.

Old version (Buster)

Test the Raspberry Pi camera
Check the first camera connected to the screen:

 sudo raspivid -t 0 -cs 0

Check the second camera connected to the screen:

 sudo raspivid -t 0 -cs 1

New version(Bullseye)

If using the latest Raspberry Pi OS (Bullseye):

libcamera-hello -t 0
or
libcamera-hello

#The new system uses dual cameras
#Remove camera_auto_detect=1 in config.txt
#camera_auto_detect=1

#Add to
dtoverlay=imx219,cam1
dtoverlay=imx219,cam0

#where imx219 is the camera sensor model, and there are other sensors
dtoverlay=ov5647,cam0
dtoverlay=imx219,cam0
dtoverlay=ov9281,cam0
dtoverlay=imx477,cam0

#then restart
reboot

#Other part of the command:
#Check if the camera is detected
libcamera-hello --list-cameras

#Open the corresponding camera
libcamera-hello --camera 1
libcamera-hello --camera 0

#Taking Pictures
libcamera-jpeg -o test.jpg
#You can add --camera to specify the camera

More instructions click me

  • Note: If using the DSI interface display will have an HDMI disabled, even if just compile the corresponding file without connecting the DSI screen.
  • Any connection of two HDMIs can output images, not limited to that HDMI, if two HDMI screens are connected, only HDMI0 has image output
  • If you want to enable both HDMI, delete the dt-blob.bin file with the following command:
 sudo rm -rf /boot/dt-blob.bin
  • Then reboot

Reference Raspberry Pi Manual

Resources

Official Manual

Schematic

3D document

Software

Support

If you require technical support, please go to the Support page and open a ticket.