> For the complete documentation index, see [llms.txt](https://sharinghub-eng.kittenbot.hk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sharinghub-eng.kittenbot.hk/extension-boards/robotbit-edu/robotbitmc.md).

# Robotbit Edu Coding with MakeCode

Robotbit Edu can be programmed using Microsoft MakeCode.

### Makecode Coding

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/mcbanner.png)

#### Loading the extension for Robotbit

**1. In the extensions page, search for “KittenBot” or “Robotbit”.**

Robotbit Edu and its extension has been officially approved by Microsoft.

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/38_01.png)

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/39_1.png)

**2. In Offline MakeCode by Kittenbot, the Robotbit extension can even be loaded without access to the internet.）**

**The blocks for Robotbit Edu is added**

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/success2.png)

#### 1. Programming Motors

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_motor.png)

For information about DC motors by Kittenbot, please visit: [Kittenbot Actuators](https://kittenbothk-eng.readthedocs.io/en/latest/motors/index.html)

**Sample Program:**

Connect 2 DC motors to the M1A and M1B port of the Robotbit Edu.

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/motor_wire1.png)

```
The speed of motor ranges from -255 to 255.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code1.png)

#### 2. Programming Servos

For information about servos by Kittenbot, please visit: [Kittenbot Actuators](https://kittenbothk-eng.readthedocs.io/en/latest/motors/index.html)

**Sample Program:**

Connect a servo to the S1 port of Robotbit Edu.

```
Connect the orange wire from the servo to the yellow wire of the Robotbit.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/servo_wire1.png)

```
Typical servos have a rotation range of 0-180.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code2.png)

#### 3. Programming Stepper Motors

For information about DC motors by Kittenbot, please visit: [Kittenbot Actuators](https://kittenbothk-eng.readthedocs.io/en/latest/motors/index.html)

```
The programming blocks were designed for Kittenbot's 28BY-48-5V stepper motor, using other motors may result in reduced accuracy.
```

**Sample Program:**

Connect Stepper Motors to the M1 and M2 port of the Robotbit Edu, with the red wire connecting to the VM port.

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/stepper_wire1.png)

```
Stepper Motors have a rotation range of -360 to 360.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code12.png)

#### 4. Programming the built-in LED strip

The programming blocks for the LED strip are found in the Neopixel tab.

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_neopixel1.png)

```
Remember to add a "Show" block to display the effect.(Except show color.)
```

**4.1 Lighting up all lights**

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code5.png)

**4.2 Customizing color with RGB**

```
RGB value has a range of 0-255.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code6.png)

**4.3 Customizing color with HSL.**

```
HSL consists of a hue value with the range 0-360, a sturation and brightness value with the range 0-100.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code7.png)

**4.4 Lighting up individual lights**

```
The lights are labelled 0-3. (As labelled on the Robotbit)
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_neopixel2.png)

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code8.png)

**4.5 Adjusting the brightness.**

```
The brightness level has a range of 0-255.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code9.png)

#### 5. Programming the IO Pins

The blocks for the IO pins are found in the Pins tab.

```
Pin 0-2 can be used as analog pins while P8, P12~P15 can only be used as digital pins.
Analog values have a range of 0 to 1023, digital values have a range of 0 to 1.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_pin1.png)

**5.1 Reading values from pins**

```
Pin 0 is occupied by the buzzer by default, the jumper should be removed when using this pin.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code10.png)

**5.2 Writing values to pins**

```
Pin 0 is occupied by the buzzer by default, the jumper should be removed when using this pin.
```

![](https://kittenbothk-eng.readthedocs.io/en/latest/_images/robotbit_code11.png)
