Debian 10 (buster) OS

Debian 10 (buster) OS User Manual

../../../_images/Chipsee_Logo_Full.png

This manual provides users with a fast guide of Chipsee Raspberry Pi Computer (Abbreviated as RPC) running a Debian 10 (buster) OS. Through this manual, users can quickly understand the hardware resources; users can debug Debian 10 (buster) OS via serial, SSH, and VNC.

Revision

Date

Author

Description

V2.1

2021-04-28

Chipsee

Revision

SUPPORTED BOARDS:

CS10600RA4070 CS10600RA070 CS12800RA101 CS12800RA4101A CS12800RA4101P

PREBUILT IMAGES PACKAGE:

Below are the links to the prebuilt images for the Raspbian Buster operating system on the various industrial Pi PC’s.

System Features

Feature

Comment

Kernel

Kernel 5.4.79

System1

Based on raspios 2020-12-02

Python

Python 2.7.16 / Python 3.7.3

Qt

Needs to be installed by the user

GCC

8.3.0

Debian Version

Debian 10 (Buster)

User/Password

[pi/raspberry]


1

Chipsee uses the Raspberry official OS on the product. We add Chipsee hardware drivers to the Raspberry official system. For more information, please refer to Industrial Pi.

Preparation

You will need to prepare the following items before you can start using the Prebuilt Images Package to re-flash the system.

Power Supply Unit (PSU) with the appropriate voltages, as follows:

  • These products: CS10600RA070, CS10600RA4070, and CS12800RA101 requires a 6V to 36V power adapter. You must provide the power adapter since Chipsee does not ship these products with a power adapter.

  • The CS12800RA4101A RPC needs a 12V power adapter. Chipsee provides the power adapter.

  • The CS12800RA4101P RPC needs a 12V to 36V power adapter.

Hardware Requirements

  • Chipsee Raspberry Pi®

  • PSU according to the instructions above

  • Mini-B USB OTG and MicroB USB Cable to download system images to CM3/CM3+/CM4 based IPC’s.

  • USB to RS232 serial cable for serial debugging the Chipsee Raspberry Pi® product.

  • TF Card (SD Card) to create a bootable storage for re-flashing the system. Use the prebuilt files link above to re-flash the system.

  • If you use CM3 Lite/CM3 Lite+/CM4 Lite, you also need one SD card, 16GB at least.

Software Requirements

Note

  • If you want to change the system, you need 7zip, a Prebuilt image, balenaEtcher, and rpiboot.

  • You can use Xshell or other terminal emulation software to debug Chipsee Raspberry Pi products in Windows.

  • You can use VNC-Viewer to control Chipsee Raspberry Pi products over Ethernet.

Note

In this documentation, all the commands are executed with root user privileges.

Debug

In this document, we use Xshell to debug the Chipsee Raspberry Pi products. You can also use other tools such as Putty or another terminal emulation software.

Serial Debug

The RS232_0 is configured as debug console by default on all Chipsee Raspberry Pi products. You can use it to debug directly, and the default user and password is [ pi / raspberry ]. Use the session properties as shown on the figure below.

../../../_images/Serial_Debug1.jpeg

Figure 865: Session Properties

If you need to change the debug serial to normal serial, follow these steps:

  • Open and edit /boot/cmdline.txt file.

  • In the file, remove the line console=ttyAMA0, 115200. Save and close file.

  • Reboot the RPC.

SSH Debug

To perform SSH debugging on the Chipsee Raspberry Pi® product, you must first connect the product to the Internet.

Continue the debugging by follow these steps:

  • Get the IP address of the Chipsee Raspberry Pi® product.

  • Enable the SSH feature in the Chipsee Raspberry Pi® product by running the following command in debug console:
    $ sudo raspi-config
    
    Interfacing Options -> SSH -> Yes
    
  • If you don’t have a debug console, you can also use the GUI feature to enable SSH.
    ../../../_images/SSH_Debug.jpeg
    ../../../_images/SSH_Debug_21.jpeg

    Figure 866: Enabling SSH (GUI)

  • Open and configure XShell or use ssh tool in the PC directly

  • In XShell, add a new session and set it as shown on the figure below.
    ../../../_images/SSH_Debug_3.jpeg

    Figure 867: SSH Setting on Xshell

  • Now we can perform SSH debugging using XShell
    ../../../_images/SSH_Debug_4.jpeg

    Figure 868: SSH Debug

VNC Debug

You can use VNC-Viewer in Windows to control Chipsee Raspberry Pi product over Ethernet.

Continue the debugging by follow these steps:

  • Enable the VNC feature in the Chipsee Raspberry Pi® product by running the following command in debug console:
    $ sudo raspi-config
    
    Interfacing Options -> VNC -> Yes
    
  • If you don’t have a debug console, you can also use the GUI feature to enable VNC.
    ../../../_images/VNC_Debug.jpeg
    ../../../_images/VNC_Debug_21.jpeg

    Figure 869: Enabling VNC (GUI)

  • Use VNC-Viewer in Windows to control it over Ethernet, as shown in the figures below.
    ../../../_images/VNC_Debug_31.jpeg

    Figure 870: Vnc-Viewer Connect

    ../../../_images/VNC_Debug_41.jpeg

    Figure 871: Authentications

    ../../../_images/VNC_Debug_5.jpeg

    Figure 872: VNC Desktop

Downloading images

Boot Switch Configuration

Chipsee RPC supports booting from an integrated eMMC or an external TF Card (also known as the micro SD card).

Note

CS12800RA4101A and CS12800RA4101P only supports eMMC boot

The Compute Module (CM) version will determine the boot modes your product supports. If you use CM with eMMC, you can only use eMMC boot. If you use CM Lite which has no eMMC, you can only use SD boot.
To boot from the SD Card, you must place the SD Card in SD0 slot. You can use the SD1 slot as external storage.

For CS10600RA070, CS12800RA101, and CS10600RA4070 products, you can download a new system to eMMC by: configuring the boot switch to USB position, inserting Mini-B USB cable, and then power the board. This will enable eMMC to work as a USB storage.
After the eMMC flash, you need to configure the boot switch to the eMMC position again.
If you need to use SD boot, you should configure the boot switch to the eMMC position.

For the CS12800RA4101A product, you can download a new system to eMMC by: inserting a Micro-B USB cable, pressing the VOL+ button, and then power the board to enable eMMC to work as a USB storage. If you use C111 Version, you should press Boot Mode button.

For the CS12800RA4101P product, you can download a new system to eMMC by: inserting a Micro-B USB cable, pressing the Boot DIP button, and then power the board to enable eMMC to work as a USB storage.

The next sections explain in detail the steps in downloading a new system to eMMC.

Prebuilt image

Chipsee Raspberry Pi products use the Raspberry Pi official system as a base and add some modules and drivers. You can get the driver and latest image by referring to https://github.com/Chipsee/industrial-pi#latest-system-images.
If you’re not using balenaEtcher, you’ll need to unzip the .img.xz file and get the image file (.img) to write to your SD card.

Writing images to the SD Card

Before you start, don’t forget to check your SD card size (at least 16GB).
You will need to use an image writing tool to install the downloaded image on your SD card.

Using balenaEtcher Tool

balenaEtcher is a graphical SD card writing tool that works on Mac OS, Linux and Windows, and is the easiest option for most users. balenaEtcher also supports writing images directly from the .img.xz file, without any unzipping required.
To write your image with balenaEtcher, follow these steps:

  • Download and install the latest version of balenaEtcher.

  • Connect an SD card reader with the SD card inside.

  • Open balenaEtcher and select from your hard drive the Raspberry Pi® .img.xz file you want to write to the SD card.

  • Select the SD card you want to write your image to.

  • Review your selections and click ‘Flash!’ to begin writing data to the SD card.

    Note

    For Linux users, zenity might need to be installed on your machine for balenaEtcher to be able to write the image on your SD card.

Writing images to the eMMC

Before you start, don’t forget to check your eMMC size, and select one image. You also need to install rpiboot to enable eMMC to work as one USB storage in your PC.
Under Windows, an installer is available to install the required drivers and boot tool automatically.|br| For those who just want to enable the Compute Module eMMC as a mass storage device under Windows, the stand-alone installer is the recommended option.

The write images to the eMMC, follow these steps:

  • Download and run the Windows installer rpitools to install the drivers and boot tool.

  • For CS10600RA070, CS12800RA101, and CS10600RA4070 products, plug your host PC Mini-B USB into the USB Downloader port, making sure the boot switch is set to the USB position.

  • For CS12800RA4101A product, plug your host PC Micro-B USB into the USB Slave port (can be also called USB Download Port), press and hold the VOL+ button, if you use C111 Version, press Boot Mode button.

  • For CS12800RA4101P product, plug your host PC Micro-B USB into the USB Slave port (can be also called USB Download Port), press and hold the Boot DIP button.

  • Power ON the board. Windows should now find the hardware and install the driver. For CS12800RA4101A and CS12800RA4101P, you can release the button now.

  • Once the driver installation is complete, run the RPiBoot.exe tool that was previously installed. You can run RPiBoot.exe in Windows PowerShell, as shown on the figure below.
    ../../../_images/rpiboot.jpeg

    Figure 873: RPIboot tool

  • After a few seconds, the Compute Module eMMC will pop up under Windows as a disk (USB mass storage device).

  • Refer to Writing images to the SD Card to flash system to eMMC (like the SD card in Windows).

  • If process completes, power OFF the board and ensure the boot switch is set to eMMC position. Power ON to use the new system.
    For CS12800RA4101A, ignore repositioning the boot switch, a reboot will be ok.
    To learn more, visit the following link: https://www.raspberrypi.org/documentation/hardware/computemodule/cm-emmc-flashing.md

Booting from the external TF Card allows flashing the system OS.

Note

The operator should use the prebuilt file we provided in the CD to test the hardware before re-flashing the system.

System Resource

SD Card/USB

SD Card is for external storage and needs to be placed in the SD1 port. The SD0 port is used by boot.|br| SD Card and USB Storage support hot plug. They will be automatically mounted on /media/pi/. For CS12800RA4101A and CS12800RA4101P, there is only one SD slot.

Serial Port

Chipsee Raspberry Pi® boards support RS232 and RS485. Check the table below to know more about the serial port on different boards.

Table 184 CS10600RA070-C111

Ports

Name

Node

Protocol

1

RS232_0

/dev/ttyAMA0

RS232

2

RS232_1/RS485_1

/dev/S0

RS232/RS485

Note

RS232_1/RS485_1 uses the same UART pins from the CPU, so they use the same device node. You can only use one at a time. RS485 signal has been mounted on the 120Ω Matched Resistor.

There is one GPIO that is used by RS485. You can control it to enable and disable RS485 to send and receive. Check the tables below.

Table 185 RS485 control GPIO

GPIO

Initial

Control

Function

GPIO34

$ echo 34 > /sys/class/gpio/export

$ echo out > /sys/class/gpio/gpio34/direction

$ echo 1 > /dev/rs485con

Enable send

Disable receive

$ ln -s /sys/class/gpio/gpio34/value /dev/rs485con

$ echo 0 > /dev/rs485con

Enable receive

Disable send

Table 186 CS12800RA101

Ports

Name

Node

Protocol

1

CPU_RS232_0

/dev/ttyAMA0

RS232

2

CPU_RS232_1

/dev/ttyS0

RS232

3

RS232_1

/dev/ttyUSB0

RS232

4

RS232_2

/dev/ttyUSB1

RS232

5

RS485_3

/dev/ttyUSB2

RS485

6

RS485_4

/dev/ttyUSB3

RS485

Table 187 CS10600RA4070-C111

Ports

Name

Node

Protocol

1

RS232_0

/dev/ttyAMA0

RS232

2

RS232_2

/dev/ttyAMA1

RS232

3

RS232_3

/dev/ttyAMA2

2

4

RS485_3

/dev/ttyAMA2

RS485

5

RS232_5

/dev/ttyAMA3

2

6

RS485_5

/dev/ttyAMA3

RS485


2(1,2)

There is no date from this two channel default. Can be costumed to RS232 and disable port 4 and port 6.

Table 188 CS12800RA4101A

Ports

Name

Node

Protocol

1

RS232_0

/dev/ttyAMA0

RS232

2

RS232_1

/dev/ttyAMA1

RS232

3

RS485_2

/dev/ttyAMA2

RS485

Table 189 CS12800RA4101P

Ports

Name

Node

Protocol

1

RS232_0

/dev/ttyAMA0

RS232

2

RS232_2

/dev/ttyAMA1

RS232

3

RS232_3

/dev/ttyAMA2

RS485

4

RS232_5

/dev/ttyAMA3

RS485

You can install cutecom to test the serial port:

Only root user and use the serial port:

GPIO

There are 8 GPIOs, 4 Output, and 4 Input, they are all isolated. You can control the output or input pin voltage by feeding the VDD_ISO suite voltage. The pin voltage should be from 5V to 24V. Refer to the tables below for a detailed port definition:

Table 190 CS10600RA070 P19 Port

Pin Number

GPIO Number

Function

Device Node

1

GPIO11

IN4

/dev/chipsee-gpio8

2

GPIO10

IN3

/dev/chipsee-gpio7

3

GPIO9

IN2

/dev/chipsee-gpio6

4

GPIO8

IN1

/dev/chipsee-gpio5

5

GPIO7

OUT4

/dev/chipsee-gpio4

6

GPIO6

OUT3

/dev/chipsee-gpio3

7

GPIO5

OUT2

/dev/chipsee-gpio2

8

GPIO4

OUT1

/dev/chipsee-gpio1

9

GND_ISO

Isolated GND

NC

10

GND_ISO

Isolated VDD(5V-24V)

NC

Table 191 CS12800RA101 P2 Port / CS10600RA4070 P19 Port

Pin Number

GPIO Number

Function

Device Node

1

GPIO499

IN4

/dev/chipsee-gpio8

2

GPIO498

IN3

/dev/chipsee-gpio7

3

GPIO497

IN2

/dev/chipsee-gpio6

4

GPIO496

IN1

/dev/chipsee-gpio5

5

GPIO500

OUT4

/dev/chipsee-gpio4

6

GPIO501

OUT3

/dev/chipsee-gpio3

7

GPIO502

OUT2

/dev/chipsee-gpio2

8

GPIO503

OUT1

/dev/chipsee-gpio1

9

GND_ISO

Isolated GND

NC

10

GND_ISO

Isolated VDD(5V-24V)

NC

  • Control OUT1 by setting it high or low
    $ echo 1 > /dev/chipsee-gpio1    // set OUT1 high
    
    $ echo 0 > /dev/chipsee-gpio1    // set OUT1 low
    
  • Get INT1 value
    $ cat /dev/chipsee-gpio5    // value 1 indicate high, value 0 indicate low
    

Relay

There is one Relay on CS12800RA4101A. For a detailed port definition, please refer to the table below.

Table 192 CS12800RA4101A Relay on P10

Ports

Name

Node

Protocol

8

Relay_NO

GPIO17

Normal Open

9

Relay_COM

GPIO17

GND

10

Relay_NC

GPIO17

Normal Close

  • Initialize GPIO17 to output
    $ echo 17 > /sys/class/gpio/export
    
    $ echo out > /sys/class/gpio/gpio17/direction
    
  • Enable Relay NO short-circuit Relay COM
    $ echo 1 > /sys/class/gpio/gpio17/value
    
  • Enable Relay NC short-circuit Relay COM
    $ echo 0 > /sys/class/gpio/gpio17/value
    

BUZZER

The Chipsee Raspberry Pi boards have one buzzer. We have created one symbol link to /dev/buzzer. You can control it as follows:

$ echo 1 > /dev/buzzer    //enable buzzer

$ echo 0 > /dev/buzzer    // disable buzzer

Backlight

We use one PWM to control the backlight for Chipsee Raspberry Pi boards, You can use follow commands to control the backlight.

  • Get the supported max brightness:
    $ cat  /sys/class/backlight/backlight/max_brightness
    
  • Set brightness:
    $ echo 50 > /sys/class/backlight/backlight/brightness
    

4G

  • You can use 4G on Chipsee Raspberry Pi products. If the 4G module is Quectel EC20, you can use linux-ppp-scripts to connect to internet.
    $ sudo apt update
    $ sudo apt install ppp
    $ sudo ifconfig wwan0 down
    $ cd linux-ppp-scripts/
    $ sudo ./quectel-pppd.sh <Serial Port> <APN> <username> <password>
    
    For example,
    $ sudo ./quectel-pppd.sh /dev/ttyUSB3 3gnet test test
    
    or no username and password
    $ sudo ./quectel-pppd.sh /dev/ttyUSB3 3gnet
    
    disconnect 4g
    $ cd linux-ppp-scripts/
    $ ./quectel-ppp-kill
    
  • If you use EC20 with GPS function, you can enable and get data in the following way.
    Open one terminal to catch data:
    cat /dev/ttyUSB1
    
  • Open another terminal to config and enable:
    $ microcom –s 9600 /dev/ttyUSB2
    AT+QGPSCFG=”gpsnmeatype”,1
    AT+QGPS=1 // enable GPS, wait some minutes, you can get date from fist terminal.
    AT+QGPSEND // disable GPS
    
  • Don’t forget to use one GPS ANT.

CAN Bus

There is one channel CAN bus on CS12800RA101/CS10600RA4070/CS12800RA4101P. You can install can-utils and use them to test CAN. But you must add one 120Ω resistor between CAN_H and CAN_L on one of the two Boards, as shown on the figure below.

Note

The Chipsee IPC does not mount the 120Ω matched resistor on all CAN signals by default.

../../../_images/CAN.jpeg

Figure 874: Connecting CAN

Here are a few examples to test CAN by using CAN units

  • Install can-utils
    $ sudo apt install can-utils
    
  • Set the bit-rate to 50Kbits/sec with triple sampling using the following command (use ROOT user):
    $ sudo ip link set can0 type can bitrate 50000 triple-sampling on
    
  • Bring up the device using the command:
    $ sudo ip link set can0 up
    
  • Transfer packets
    • Transmit 8 bytes with standard packet id number as 0x10

    $ sudo cansend can0 -i 0x10 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88
    
    • Transmit 8 bytes with extended packet id number as 0x800

    $ sudo cansend can0 -i 0x800 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 - e
    
    • Transmit 20 8 bytes with extended packet id number as 0xFFFFF

    $ sudo cansend can0 -i 0xFFFFF 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 -e --loop=20
    
  • Receive data from CAN bus
    $ sudo candump can0
    
  • Bring down the device
    $ sudo ip link set can0 down
    

Wi-Fi

The Chipsee Raspberry Pi boards support RTL8723BU/RTL8723DU chip Wi-Fi. The CS10600RA070/CS12800RA101 have an onboard RTL8723BU Wi-Fi chip. The CS10600RA4070/CS12800RA4101A/CS12800RA4101P have no onboard Wi-Fi by default so you can use the USB Wi-Fi dongle to enable the Wi-Fi.

Zigbee

The CS10600RA4070/CS12800RA4101A/CS12800RA4101P boards have an onboard ZigBee chip CC2531. Its device node in the system is /dev/ttyACM0. We use zigbee2mqtt project firmware by default. Check the following link to learn more about this project: Zigbee2mqtt

Note

The Zigbee module is not mounted by default.

Camera

The camera port CAM is compatible with Raspberry pi. Please refer to the following link to learn how to attach a camera: https://www.raspberrypi.org/documentation/hardware/computemodule/cmio-camera.md

Chipsee-init shell

We use one chipsee-init.sh as an initial shell which is placed in /opt/chipsee/chipsee-init.sh. We initialize the GPIO/Buzzer and other configs in it. If you want to change it, please be careful.
Do a backup first before you modify anything. This script will generaged one log file which located on /var/log/chipsee-init.sh.log. If you device have boot issue, you can send this file to use to help find what happen.

Technical Support

Please feel free to contact us with any questions, queries or suggestions.

If your question is related to technical support or troubleshooting for one of our products, we kindly ask you to check our documentation for a possible solution first.

If you still cannot find the solution you are looking for, please write to Chipsee Technical Support at service@chipsee.com, providing all relevant information.





../../../_images/Chipsee_Logo.jpg




Disclaimer:

Chipsee assumes no responsibility for any errors that may occur in this manual. Furthermore, Chipsee reserves the right to alter hardware, software, and/or specifications set forth herein at any time without prior notice, and undertakes no obligation to update the information contained in this document. Chipsee products are not authorized for use as critical components in life support devices or systems.