Difference between revisions of "Template:CM4-IO-BASE Guide"

From Waveshare Wiki
Jump to: navigation, search
Line 1: Line 1:
 
 
==Writing Image==
 
==Writing Image==
 
1、 Download newest Raspberry Pi OS image from [https://www.raspberrypi.org/downloads/raspberry-pi-os/  Raspberry Pi Website].<br>
 
1、 Download newest Raspberry Pi OS image from [https://www.raspberrypi.org/downloads/raspberry-pi-os/  Raspberry Pi Website].<br>

Revision as of 03:53, 28 April 2021

Writing Image

1、 Download newest Raspberry Pi OS image from Raspberry Pi Website.
Compute Module 4 IO Board 3.png
2、 Operate according to the CM4 version you are using

  • If you use Compute Module 4 Lite, you should write the image to SD card just like common Raspberry Pi.
  • If your use the eMMC version, you need to connect the CM4 to PC by Micro USB cable, Download the rpiboot tools and install it, run rpiboot.exe as administrator to install drivers and startup tools.
    • After the CM4 has been correctly installed on the IO board, using a jumper cap connect the BOOT pin on the IO board to the ground (GND) signal. Then use the USB Type-C cable to connect the USB Type-C interface of the IO board to your PC. The computer will recognize it as a BCMxxx device. In this case, runing the rpiboot software and the PC will automatically recognize the eMMC of the CM4 as a U disk
    • Note: After installing RPiboot_Setup, there will be a rpiboot software. You need to run rpiboot software every time when you connect this device to the computer, to make the computer recognize the device as a U disk

CM4-IO-BASE-B-1.png
3、 Format SD card: You need to format the MicroSD card or the eMMC by SDFormatter.exe software.
PI4-03.jpg
4、 Write image: You need to write the image to Micro SD card or the eMMC by Win32DiskImager.exe software. Select the image file and click “Write”. Please DO NOT format it after formatting.
PI4-04.jpg
5、 Booting: For the CM4 Lite version, insert the Micro SD card into the card slot and connect the 12V power adapter. The power indicator will turn red, and the ACT will turn green and blink while booting.
For the CM4 eMMC version, you need to remove the jumper of nRPI_BOOT J2 (disable eMMC Boot) on the IO board, and then power on the IO board again.

【Note】:
If you failed to write the eMMC, please try with the following steps:

  • User Windows 10 PC instead of Windows 7 or Linux. It seems that Windows 7 or Linux PC is not stable for eMMC writing.
  • Check your CM4, make sure that it is the eMMC version which has one more eMMC chip compare to the LITE version.

Compute-Module-4-5.png

  • Note that you need to connect 12 power adapter to the Power port.
  • Please change a USB cable for a try and make sure that the cable is data accessible.
  • Change the USB port of the PC and try it again.
  • Try to restart your PC.
  • Re-connect the CM4 for a try.
  • Try with other PCs.

USB2.0

In order to save power, the USB interface of the CM4 is disabled by default. If you need to open the USB interface, please add the following line to the end of the config.txt:

dtoverlay=dwc2,dr_mode=host

And then reboot the system.

RTC FAN

To enable the I2C for controling the fan and the RTC, you need to add the line "dtparam=i2c_vc=on" on thw config.txt file
RTC is connected to i2c-10 with address 0x51(7bits)
FAN is connected to i2c-10 with address 0x2f(7bits)

sudo nano /boot/config.txt

Add the following line to the end of the config.txt

dtparam=i2c_vc=on

And then comment out the line dtparam=audio=on

#dtparam=audio=on

Save the file and reboot the system

sudo reboot

RTC test

1.Download the test demo.

Open the terminal of the Raspberry Pi, enter the following command:

sudo apt-get install p7zip-full
sudo wget https://www.waveshare.com/w/upload/4/42/PCF85063_code.7z
7z x PCF85063_code.7z -O./
cd PCF85063_code

2.Run the demo

C

Execute the following commands to compile and execute the test demo:

cd c
sudo make clean
sudo make -j 8
sudo ./main

And then you can check the running result as below:

RTC PCF85063 c test.png

Python

Enter the python/example directory:

cd python/example

And then run the python demo, the demo can support python2/3

# python2
sudo python main.py
# python3
sudo python3 main.py

The running result as below:

RTC PCF85063 python test.png

FAN test

【Note】Please connect the fan first before connecting the power to the PoE Board to complete! Please do not connect the fan to the PoE Board when the board is powered on(the fan control chip is powered on,), otherwise, the EMC2301 chip will be damaged!

Open the terminal of the Raspberry Pi, enter the following command:

sudo apt-get install p7zip-full
sudo wget https://www.waveshare.com/w/upload/5/56/EMC2301_code.7z
7z x EMC2301_code.7z -O./
cd EMC2301_code

C

Compile and execute the test demo:

cd c
sudo make clean
sudo make -j 8
sudo ./main

python

Enter the python/example directory:

cd python/example

And then run the python demo, the demo can support python2/3

# python2
sudo python main.py
# python3
sudo python3 main.py

The fan will run the variable speed test in RPM mode. Pay attention to the changes of the fan's sound. The running phenomena of the python demo are the same as the C program. The terminal will output the relevant data of the fan at the same time, as shown in the picture below:

FAN EMC2301 test.png

You can also directly control the fan speed by modifying the parameter of the demo.

CSI DSI

CSI and DSI are disabled by default. When using the camera and DSI, it will occupy three I2C devices: I2C-10, I2C-11, and I2C-0.

  • Open a terminal and run the following commands:
sudo apt-get install p7zip-full
 wget https://www.waveshare.com/w/upload/4/41/CM4_dt_blob.7z
 7z x CM4_dt_blob.7z -O./CM4_dt_blob
 sudo chmod 777 -R CM4_dt_blob
 cd CM4_dt_blob/
 #If you want to use both cameras and DSI0
 sudo  dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts
 #If you want to ue both cameras and DSI1
 sudo  dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp1-double_cam.dts
  • And then connect the cameras and DSI display

1: Please power off the IO Board first before your connection.
2: Connect the power adapter after connecting the cameras and DSI display
3: Wait a few seconds before the screen boot up.
4: If the DSI LCD cannot display, please check if you have added /boot/dt-blob.bin. If there already has the dt-blob.bin, just try to reboot.
5: The camera needs to be enabled by raspi-config, enter sudo raspi-config on the terminal, choose Interfacing Options->Camera->Yes->Finish-Yes and reboot the system

  • Test the Cameras:

Test camera0:

sudo raspivid -t 0 -cs 0

Test camera1:

sudo raspivid -t 0 -cs 1

【Note】:

  • HDMI1 is disabled if you use DSI interfaces for displaying, even if you just compile the corresponding files without connecting to the DSI screen, please note it.
  • If you want to enable the HDMI1, please remove the dt-blob.bin file with the command:
sudo rm -rf /boot/dt-blob.bin

And then turn off IO Board and reboot it.