Compute Module 4 PoE 4G Board
| ||
Instruction
The Compute Module 4 PoE 4G Board is an industrial-grade IoT baseboard designed for Raspberry Pi Compute Module 4 (not included). It features communication functions including global 5G/4G/3G/2G cellular network, and PoE Ethernet. There are also various industrial isolated interfaces such as CAN, RS485, RS232, ADC, and GPIO, which make it an ideal choice for sorts of industrial IoT applications. Compared with the CM3 version, this one will provide more powerful processing performance.
Precautions for use
1: Do not plug and unplug any device except USB and HDMI when powered on.
2: Confirm the fan voltage before connecting, support 5V and 12V, and connect 12V by default, if you want to switch the voltage, please modify the jumper cap of FAN_VCC.
3: The Type C interface of the USB SLAVE is only used to flash the image and cannot be used for power supply.
4: In order to ensure the normal power supply of CM4, please do not connect other devices when using the Type C interface to flash the image.
5: When CM4 is in normal use, it needs to provide 12V 2A or higher power supply for it. Otherwise, there may be problems such as automatic shutdown, frequency reduction and so on.
6: The M.2 interface is only used for 4G/5G module connection, and does not support other devices such as solid state.
7: USB2.0 is disabled by default, if you need to open it, you need to add dtoverlay=dwc2,dr_mode=host.
8: When using the PoE function, pay attention to check whether the switch supports PoE of the 802.3af network standard.
9: When POE is required, connect the POE jumper cap to the EN position.
10: Two DISP interfaces cannot be used together by default.
11: Due to the shortage of chips, there are multiple versions of this expansion board, and the functions are not very different. If you have any questions, you can contact the after-sales service.
Onboard resources
| Label | Name | Description | |
| 1 | CM4 Connector | Applies to all versions of Compute Module 4 | |
| 2 | Power supply interface | 7~36V wide voltage power supply | |
| 3 | CM4 Status LED Lamp Holder | Red Light: Raspberry Pi Power Indicator Green Light: Raspberry Pi Working Status Indicator | |
| 4 | M.2 Status LED Lamp Holder | Red Light: Enable Indicator Green Light: Working Status Indicator | |
| 5 | User LED | Which is convenient for I/O output testing or displaying program running status | |
| 6 | USB TO UART interface | Easy for serial debugging | |
| 7 | HDMI interface | Dual HDMI interface, support dual 4K 30fps output | |
| 8 | USB2.0 interface | Dual USB 2.0 interface, support various USB device insertion | |
| 9 | RJ45 Gigabit Ethernet port | Gigabit Ethernet port with PoE power supply function, support 10/100/1000M network access | |
| 10 | M.2 interface | Support M.2 B KEY 4G module access | |
| 11 | SIM Card Slot | Can be connected to a nano SIM card for 4G/3G/2G Internet access | |
| 12 | RTC Battery Holder | Can be connected to a CR1220 button battery to power the RTC | |
| 13 | PCIe Gen 2 × 1 Interface | Module that supports PCIe Gen 2 × 1 interface part | |
| 14 | FAN interface | Easy to connect to the cooling fan, support speed regulation and speed measurement | |
| 15 | Buzzer | Active buzzer DiDiDi | |
| 16 | DISP | Dual MIPI DSI Display Interface | |
| 17 | CAM | Dual MIPI CSI camera interface | |
| 18 | Isolated GPIO | The device can be controlled or detected through GPIO | |
| 19 | Isolated I2C | Device can be controlled or read via I2C | |
| 20 | Isolation ADC | ADC Differential Input | |
| 21 | Isolated CAN interface | Communicate via CAN interface | |
| 22 | Isolated RS485 interface | Communicate via RS485 interface | |
| 23 | Isolated RS232 interface | Communicate via RS232 interface | |
| 24 | Micro SD card interface (rear) | Used to insert a Micro SD card with the system to start the Compute Module 4 Lite | |
| 25 | USB Type-C flashing interface (back) | Compute Module 4 eMMC version can flash the system image through this interface |
Dimension
Precautions
Do not plug or unplug any devices while it is powered on.
All of the following are tested on Raspberry Pi OS, no other systems are supported.
Writing Image
- Write Image for Compute Module Boards eMMC version
- Wrote Image for Compute Module Boards Lite version
USB2.0
The USB interfaces are default disabled in CM4, you need to enable it by adding the following lines:the config.txt:
dtoverlay=dwc2,dr_mode=host
It will take effect after restart.
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).

Preparation before use
Demo Download
Open the Raspberry Pi terminal and execute the following commands:
sudo wget https://files.waveshare.com/upload/b/ba/Compute_Module_4_PoE_4G_Board_Code.zip unzip -o Compute_Module_4_PoE_4G_Board_Code.zip -d ./Compute_Module_4_PoE_4G_Board_Code sudo chmod 777 -R Compute_Module_4_PoE_4G_Board_Code cd Compute_Module_4_PoE_4G_Board_Code
Installing Libraries
All libraries are installed according to your needs, just install the one you need to use, you don't have to install all of them.
If you just test the function, you can directly use the C program without installing any library. Our C program does not need to install any library by default.
With the update of each version, there may be some software incompatibilities, or running an error, if this problem occurs, you can give us feedback.
- Install BCM2835, open the Raspberry Pi terminal, and run the following command (not recommended).
#If you have any questions, please visit http://www.airspayce.com/mikem/bcm2835/ #Any other problems can be reported in the link above, please do not contact the author directly wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.68.tar.gz tar zxvf bcm2835-1.68.tar.gz cd bcm2835-1.68/ sudo ./configure sudo make sudo make check sudo make install
- install wiringpi:
#WiringPi does not officially support CM4, but you can install the unofficial version because this version is not the official version #This version is only for CM4 #Any other problems can be reported on GitHub, please do not contact the author directly git clone https://github.com/WiringPi/WiringPi.git cd WiringPi/ ./build #Execute gpio -v and the version number is 2.6.
- Install the Python function library:
#python2 sudo apt-get update sudo apt-get install python-pip sudo apt-get install python-pil sudo apt-get install python-numpy sudo pip install RPi.GPIO sudo pip install spidev sudo pip2 install python-can #python3 sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil sudo apt-get install python3-numpy sudo pip3 install RPi.GPIO sudo pip3 install spidev sudo pip3 install python-can
Open I2C interface
- Execute in terminal:
sudo raspi-config #Select Interfacing Options -> I2C ->yes to start the i2C kernel driver
- Then restart the Raspberry Pi:
sudo reboot
USB TO UART
The UART is connected to CM4 by default, and is connected to the GPIO14 (BCM) and GPIO15 (BCM) pins of CM4.
When starting serial debugging, you can directly connect to the computer through this interface to log in to the CM4.

You can also supply power through this interface, but the default is not able to supply power. If you need to supply power through this interface, please connect the resistor (0R) on the interface.
Buzzer/LED
Buzzer
The buzzer is connected to GPIO22(BCM 22), low active.
LED
Two LEDs are integrated for users, the green one is connected to GPIO20(BCM)and the red one is connected to GPIO21(BCM), low active.
【expected results】
Two user LEDs flash alternately.
LED changes once, and the buzzer sounds once.
【Python examples】
cd LED_BUZZER/python/ sudo python main.py
【C examples】
cd LED_BUZZER/c/ make clean sudo make sudo ./main
4G/5G
To work with 4G/5G, you need to connect a wireless module to the M.2 B KEY for featuring corresponding functions. M.2 B KEY only extends USB2.0 interfaces, it doesn't support PCIE devices.

A nano SIM card is required to work with the 4G/5G module
This carrier board supports the 4G module by default, if you use it with 5G modules, some of the 5G functions are not supported.
If you use a 5G module, please check the SIM8200EA-M2_5G HAT wiki about how to set up 5G.
It takes a certain amount of time (about 30 seconds) to close or open the module.
In the downloaded routine there is an M_2_PWR script that can be executed
# Python program that controls module startup
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
import logging
import RPi.GPIO
import time
OUT1 = 6
GPIO = RPi.GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(OUT1, GPIO.OUT)
try:
GPIO.output(OUT1, 0)
except KeyboardInterrupt:
logging.info("ctrl + c:")
exit()
Open the module.
The 5G module is not controlled by the enabled pin.
SIM7600 M.2 module
Status of M.2 indicators:
| STA | NET | Status |
|---|---|---|
| On | Off | Off or starting |
| Long light | Long light | Looking for network |
| Steady on | Blinking | Connected and working fine |
| Off | Blinking/Solid | Shutting down |
Before you configure the SIM7600 module, please make sure that the module is started normally.
sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2 # Enter the following commands: AT+CUSBPIDSWITCH=9011,1,1 #return OK #Then wait for the network card to restart #This command only needs to be set once, the next time it is powered on, it will be in this mode by default #If the USB0 network card cannot be obtained, execute: sudo dhclient -v usb0
About RNIDS networking, please refer to Raspberry Pi networked via RNDIS RNIDS Networking method
With the operations above, a USB0 port will be recognized.(if you don't have other USB network card connected)
If you use an IoT card, such as a mobile IoT card, to successfully register the network; but the dial-up Internet connection fails and cannot be pinged, you can try to use one of the following AT commands to select the optimal frequency band:
AT+CNBP=0x0002000000400183,0x000001E000000000,0x0000000000000021 AT+CNBP=0x0002000000400180,0x480000000000000000000000000000000000000000000042000001E200000095,0x0000000000000021
AT Commands
If the network cannot work, plaese check module with AT commands
sudo apt-get install minicom sudo minicom -D /dev/ttyUSB2
Common AT commands
| Command | Description | Return |
|---|---|---|
| AT | AT test | OK |
| ATE | ATE1 enable echo ATE0 disable echo |
OK |
| AT+CGMI | Check manfacture | OK |
| AT+CGMM | Check module type | OK |
| AT+CGSN | Check SN | OK |
| AT+CSUB | Check module version | OK |
| AT+CGMR | Check firmware version | OK |
| AT+IPREX | Configure hardwara baud rate | +IPREX: OK |
| AT+CRESET | Reset module | OK |
| AT+CSQ | Check signal quanlity | +CSQ: 17,99 OK |
| AT+CPIN? | Check SIM status | +CPIN: READY |
| AT+COPS? | CHeck the current supplier | +COPS: OK |
| AT+CREG? | Check network status | +CREG: OK |
| AT+CPSI? | Check UE information | |
| AT+CNMP | Configure network mode: 2: Automatic 13: GSM only 38:LTE only 48: Any modes but LTE ... .... |
OK |
For more AT commands, please refer to: AT_Command_V2.00
You can also refer to: SIMCom
PCIE
The PCIe interface is PCIe 2.0 X1, the maximum speed is 500Mb/s.
Support most PCIE x1 cards, many PCIEx1 device cards on the market, the default Raspberry Pi system is not supported, because the Raspberry Pi Linux does not add drivers.
Please check your PCIe device before you used Supported device testing.
Raspberry Kernel compiling.
Isolation GPIO/I2C
Isolation output pins are GPIO17 (BCM) and GPIO27 (BCM)
Isolation input pins GPIO23 (BCM) and GPIO24 (BCM)
![]()
Configure the logic voltage of Isolation IO
![]()

Isolation I2C pins are GPIO2/3(BCM), I2C bus is I2C1.

【Expected result】
The two OUT pins toggle in order
Read the values of two IN pins
【python example】
cd IO/python sudo python main.py
【C example】
cd IO/c make clean sudo make sudo ./main
Isolation ADC
The isolation ADC is mounted in isolation I2C with 0x48 address.
I2C is default disabled, please refer to #Enable I2C to enable the I2C interface.
C
cd ADC/c/ sudo ./main
python
cd ADC/python/ sudo python examples/main.py
- Run the commands above to run the example.
Expected result
Output voltage vlaue
Note: the ADC chip used is ADS1113, its reference voltage is 2.048V, the range of differential input, Input voltage range: ±2.048V.
CAN
The CAN is diabled by default, you need to modify the config.txt file for enabling it.
#Open and edit config.txt sudo nano /boot/config.txt #Add the following line to the file and save dtparam=spi=on dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25 #reboot Raspberry Pi reboot
After rebooting, run the following command:
dmesg | grep spi0
sudo ip link set can0 up type can bitrate 1000000 sudo ifconfig can0 txqueuelen 65536 ifconfig
![]()
If the device can0 is recognized, it means that the driver was installed successfully
Testing
Install can-utils:
sudo apt-get install can-utils
Receive data:
candump can0
Send data:
cansend can0 000#11.22.33.44 #11.22.33.44 is data sent #If you need to transmit more dta, you can also extend the data just like this: # cansend can0 000#11.22.33.04.70
Examples
【Python examples】
- Go into the directorty of python example:
- Open a terminal as receiver and run the receive.py:
sudo python reveive.py
- Open another terminal as sender and run the send.py:
sudo python send.py
The examples provided is absed on python, please make sure that you have installed the python-can library.
Create a CAN device before you send data,because the front only enables the MCP2515 core.
os.system('sudo ip link set can0 type can bitrate 100000')
os.system('sudo ifconfig can0 up')
- Step 1: Connect to the CAN bus
can0 = can.interface.Bus(channel = 'can0', bustyp = 'socketcan_ctypes')
- Step 2: Create information
msg = can.Message(arbitration_id=0x123, data=[0, 1, 2, 3, 4, 5, 6, 7], extended_id=False)
- Step 3: Send message
can0.send(msg)
- Close the CAN device finally
os.system('sudo ifconfig can0 down')
- Receive data:
msg = can0.recv(10.0)
recv() defines the timeout
for more details, please refer to https://python-can.readthedocs.io/en/stable/interfaces/socketcan.html
【C examples】
- Blocking receive, open the terminal of Raspberry Pi and run the following commands:
cd CAN/c/receive/ make clean sudo make sudo ./can_receive
- Send data, open a terminal of Raspberry Pi and run the following commands:
cd CAN/c/receive/ make clean sudo make sudo ./can_send
RS485/232
bookworm
The interface is closed by default, you can modify the config.txt to enable it.
dtoverlay=uart3 dtoverlay=uart5
reboot ls /dev/ttyAMA*
RS232 occupies GPIO5/GPIO4 (BCM4/5), recognized as ttyAMA3.
RS485 occupies GPIO13/GPIO12 (BCM13/12), recognized as ttyAMA5.
buster
The interface is closed by default, you can modify the config.txt to enable it.
sudo nano /boot/config.txt
Add the following lines to the config.txt file:
dtoverlay=uart3 dtoverlay=uart5
Reboot the Raspbery Pi and check if the ports are recognized.
reboot ls /dev/ttyAMA*
RS232 interfaces use the GPIO5/GPIO4(BCM4/5), recognized as ttyAMA1.
RS485 interfaces use the GPIO13/GPIO12(BCM13/12), recognzied as ttyAMA2.
Test
Install minicom and test it with the minicom:
sudo apt-get install minicom # RS232 sudo minicom -D /dev/ttyAMA1 #RS485 sudo minicom -D /dev/ttyAMA2
RTC FAN
- Note: Please first connect the FAN and then the power, otherwise you may damage the controller of the fan!
- Note: Please make sure the operation voltage of the cooling fan is the same as the carrier board.
The following Raspberry Pi system for testing is (2021-05-07-raspios-buster-armhf-full).
Note that if you want to use the RTC function, please first disable the DSI and CSI.
If you want to use them at the same time, please change the I2C to I2C1 (the right).
![]()
You need to modify the codes and driver after changing.
The demo codes use I2C10 by default (the left)
If you need simple use or need to add to your program instead of the kernel, see C and Python demos. [CM4 RTC FAN]
RTC
Open the terminal and modify the config.txt file:
sudo nano /boot/config.txt
Add the following lines to the file and modify the audio setting:
#Add the lines to the end of file dtparam=i2c_vc=on dtoverlay=i2c-rtc,pcf85063a,i2c_csi_dsi #remove the setting dtparam=audio=on by adding the # to the front of the line #dtparam=audio=on
Save and reboot the Raspberry Pi.
sudo reboot
Hwclock
Synchronize system clock -> hardware clock:
sudo hwclock -w
Synchronize hardware clock -> system clock
sudo hwclock -s
Note that you need to disable the network synchronization function, otherwise, the time will be changed according to network time.
Set hardware clock:
sudo hwclock --set --date="9/8/2021 16:45:05"
Check the hardware clock.
sudo hwclock -r
Check the version.
sudo hwclock --verbose
Cooling fan
When powered on, the fan will spin for 1 second, then stop for 2 seconds, and then spin again, this is a normal phenomenon.
There is currently no official configuration method for fans, there is a third-party configuration method: https://github.com/neg2led/cm4io-fan
This method is released by a third party, not an official release, and we are not responsible for any problems!
mkdir -p ~/src cd ~/src git clone https://github.com/neg2led/cm4io-fan.git cd cm4io-fan sudo chmod 777 install.sh sudo ./install.sh
The device tree overlay has a few options, here's the equivalent of a /boot/overlays/README info section:
#############################
Name: cm4io-fan
Info: Raspberry Pi Compute Module 4 IO Board fan controller
Load: dtoverlay=cm4io-fan,<param>[=<val>]
Params: minrpm RPM target for the fan when the SoC is below
mintemp (default 3500)
maxrpm RPM target for the fan when the SoC is above
maxtemp (default 5500)
midtemp Temperature (in millicelcius) at which the fan
begins to speed up (default 50000)
midtemp_hyst Temperature delta (in millicelcius) below mintemp
at which the fan will drop to minrpm (default 2000)
maxtemp Temperature (in millicelcius) at which the fan
will be held at maxrpm (default 70000)
maxtemp_hyst Temperature delta (in millicelcius) below maxtemp
at which the fan begins to slow down (default 2000)
#############################
For example, speed up the fan if the temperature is higher than 45°C and set it to maximum value if the temperate is higher than 50°C:
dtoverlay=cm4io-fan,minrpm=500,maxrpm=5000,midtemp=45000,midtemp_hyst=2000,maxtemp=50000,maxtemp_hyst=2000
CSI DSI
CSI DSI
New Version (Bookworm)
The DSI screen is 800x480 resolution screen by default, please refer to the corresponding WIKI for other resolution screens
When using the official base board Compute Module 4 IO Board, note that the J6 jumper cap needs to be connected
DSI
#Add the following to the config.txt file: sudo nano /boot/firmware/config.txt #DSI0 (V1~V3) dtoverlay=vc4-kms-dsi-7inch,dsi0 #DSI1 (V4) dtoverlay=vc4-kms-dsi-7inch,dsi1
CSI
| Mode | CAM0 setup statement | CAM1 setup statement |
|---|---|---|
| OV9281 | dtoverlay=ov9281,cam0 | dtoverlay=ov9281,cam1 |
| IMX290/IMX327 | dtoverlay=imx290,clock-frequency=37125000,cam0 | dtoverlay=imx290,clock-frequency=37125000,cam1 |
| IMX378 | dtoverlay=imx378,cam0 | dtoverlay=imx378,cam1 |
| IMX219 | dtoverlay=imx219,cam0 | dtoverlay=imx219,cam1 |
| IMX477 | dtoverlay=imx477,cam0 | dtoverlay=imx477,cam1 |
| IMX296 | dtoverlay=imx296,cam0 | dtoverlay=imx296,cam1 |
| IMX708 | dtoverlay=imx708,cam0 | dtoverlay=imx708,cam1 |
sudo reboot
Note:
1. The single-port camera can only work on CAM0, that is, it is not possible to use CAM1 port alone. But you can use the CAM0 port alone, or connect the dual cameras 2. If the device is recognized, and the startup prompt "Camera frontend has timed out!" appears, please update "sudo rpi-update"
Test Camera
- Enter the camera detection command, and you can see that the camera has been detected
libcamera-hello --list-cameras

- Display the camera screen to the desktop
libcamera-hello -t 0
- Take a photo
libcamera-jpeg -o test.jpg
- Record a 10s video
libcamera-vid -t 10000 -o test.h264
Other commands
Check if the camera is detected
libcamera-hello --list-cameras
Open the corresponding camera
libcamera-hello --camera 1 libcamera-hello --camera 0
Take a photo
libcamera-jpeg -o test.jpg #You can add --camera to specify the camera
#The new system uses dual cameras #Remove camera_auto_detect=1 in config.txt #camera_auto_detect=1 #Add dtoverlay=imx219,cam1 dtoverlay=imx219,cam0 #Where imx219 is the camera sensor model and other sensors are supported dtoverlay=ov5647,cam0 dtoverlay=imx219,cam0 dtoverlay=ov9281,cam0 dtoverlay=imx477,cam0 dtoverlay=imx519,cam0 #Then reboot reboot #Open camera libcamera-hello -t 0 or libcamera-hello #Other instructions: #Check if the camera is detected libcamera-hello --list-cameras #Open the corresponding camera, preview for 5 seconds libcamera-hello --camera 1 libcamera-hello --camera 0 #Take photos libcamera-jpeg -o test.jpg #Shoot video libcamera-vid -t 10000 -o test.h264 #You can add --camera to specify the camera #-t <duration> option allows the user to choose how long the window is displayed in milliseconds
For more commands, you can click here.
- Note: If using a DSI interface display there will be an HDMI disabled, even if just compiling the corresponding file without connecting a DSI screen.
- Connecting either HDMI port will allow output of an image, regardless of which HDMI port is used. If two HDMI screens are connected, only HDMI0 has an image output.
- To enable two HDMI ports, remove the configuration from config.txt:
- And then reboot it.
Please refer to Raspberry Pi manual.
Old System Version (Buster and Bullseye)
Configure Files
CSI and DSI are disabled by default. When using the camera and DSI, three I2C devices, I2C-10, I2C-11, and I2C-0 will be occupied.
Booting is performed as follows:
wget https://files.waveshare.com/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/ #Execute (for version V1~V3) sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts #Execute (for version V4) sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp1-double_cam.dts Add the following to the config.txt file: sudo nano /boot/config.txt Change dtoverlay=vc4-kms-v3d to dtoverlay=vc4-fkms-v3d #When using any DSI, HDMI1 has no image output, even if you are not connected to the DSI screen, as long as you compile the corresponding file, then HDMI1 will have no 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
Record Test
Connect to the camera and the DSI display:
1. Please make sure it is connected under powering off.
2. Connect to the power.
3. The display will be booted after waiting for a few seconds.
4. If it fails to boot, check whether /boot/dt-blob.bin exists, and reboot it if it exists.
Old Version (Buster)
The camera needs to run raspi-config, select Interfacing Options -> Camera -> Yes -> Finish -> Yes, reboot the system, open enable camera, and then restart to save the changes.
Test the Raspberry Pi camera.
Check the screen of the first connected camera:
sudo raspivid -t 0 -cs 0
Check the screen of the second connected camera:
sudo raspivid -t 0 -cs 1
Resources
Documents
Demo
Software
3D Drawing
FAQ
Question:What if I can't search for the I2C address of the RTC/FAN controller using i2cdetect -y 10?
a) Check if dtparam -audio - on is blocked in /boot/config.txt.
b) Check if the file /boot/dt-blob.bin exists, if it does, delete it.
{{{5}}}
The Compute Module 4 PoE 4G Board is designed to operate within a temperature range of -25℃ to 80℃.
{{{5}}}
There is no limit, the maximum output of 5V is 5V 4A (including CM4 and other power supplies, a total of 4A).
{{{5}}}
Support
Technical Support
If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)

