---
# System prepended metadata

title: Important things about Internal competition - Software

---

# Important things about Internal competition - Software
## How to use the IR sensor array with 5 GPIO input
![](https://i.imgur.com/VT3ZNHV.jpg)
* Configure GPIO for these 5 pins
    * Please read [**RT-Thread GPIO**](https://hackmd.io/@ATKTC/S1vO3eXco)
:::    warning
**Warning Don't Open LCD devices at the same time**
* **Don't**  `rt_device_open(lcd, NULL);` if you those pins are connected with IR Sensor Array
:::

---

## How to control the motor using PWM
* Please read [**PWM Device**](https://www.rt-thread.io/document/site/programming-manual/device/pwm/pwm/) and test with shell command first 

## How to control the servo
![](https://i.imgur.com/PqnwESv.png =500x)
* Connect the servo to channel 0, innermost one
* Also, connect the motor because of the **V** of these 3 pwm2 channels are connnected as below:
    * ![](https://i.imgur.com/tbjz335.png =250x)
    * Rememeber to Turn on switch next to the motor
* Install `pwm_servo` libraries below and test it
## RT-Thread perperials Libraries
* [**pwm_servo**](https://github.com/CheTangAK/pwm_servo.git)
    * To control the angle of the servo device
    * Please read and follow the documentation, `README.md`
    * For the motor, You could either use servo device to control as well. Since the motor and servo is controlled by PWM signal
* [**mt9v034_camera_rtt**](https://github.com/LeeChunHei/mt9v034_camera_rtt.git)
* [**xpt2046_touch_rtt**](https://github.com/LeeChunHei/xpt2046_touch_rtt.git)
* [**st7735r_tft_rtt**](https://github.com/LeeChunHei/st7735r_tft_rtt.git)
* [**soft_i2c_rtt**](https://github.com/LeeChunHei/soft_i2c_rtt.git)

    
---
## Linear gradient    
<div style="border: 5px solid lightblue; background: linear-gradient(180deg,black, white); height: 320px; width: 240px">
</div>
    
    
## Useless thing
<div style="border: 10px;background: linear-gradient(45deg,red, blue); height: 500px; width: 500px padding-buttom: 45px;   display: flex; justify-content: center; border-radius:  80px">
   <div class="orb"><div> 
</div>
       
       
<style>
    .orb {
    position: absolute;
    animation:spin 4s linear infinite;
    width: 300px;
    height: 300px;
    margin: auto;
    margin-top: 100px;
    border-radius: 50%;
    box-shadow:
        inset 0 0 50px #fff,
        inset 20px 0 60px violet,
        inset -20px 0 60px blue,
        inset 20px 0 300px violet,
        inset -20px 0 300px blue,
          0 0 50px #fff,
          -10px 0 60px violet,
          10px 0 60px blue;
    }

    @keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } } 
</style>        

