# Circle Tracing

### Circle Tracing

<figure><img src="https://kittenbothk-eng.readthedocs.io/en/latest/_images/mcbanner.png" alt=""><figcaption></figcaption></figure>

#### **Loading Extensions**

Search "KOI" in the search bar.

<figure><img src="https://kittenbothk.readthedocs.io/en/latest/_images/koi_search.png" alt=""><figcaption></figcaption></figure>

Or copy and paste the following link to the search bar.

**<https://github.com/KittenBot/pxt-koi>**

Blocks for circle tracing:

<figure><img src="https://kittenbothk-eng.readthedocs.io/en/latest/_images/01-1.png" alt=""><figcaption></figcaption></figure>

### Sample Program

{% embed url="<https://makecode.microbit.org/_P3wiD8Mur89Y>" %}

#### Threshold

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

Threshold affects the detection rate, testing and fine tuning the value is needed for achieving the best results.

A higher threshold value decreases interference and noise, but detection difficulty increases at the same time, please trial and fine tune for different scenarios.

### Program Flow

Download the program to Micro:bit, then press A on the Micro:bit.

The radius of the circle is shown on the Micro:bit while its coordinates are shown on the KOI.

### Advanced Program

The information becomes more easily readable if we add an OLED screen.

#### Connecting an OLED

Connect an OLED panel to the I2C port of your Robotbit/Armourbit.

<figure><img src="https://kittenbothk.readthedocs.io/en/latest/_images/03-1.png" alt=""><figcaption></figcaption></figure>

#### Sample Program

{% embed url="<https://makecode.microbit.org/_5E21sPM6vaqV>" %}

### Sample Code

[1. Circle Tracing (Extension0.5.7)](https://makecode.microbit.org/_h87fXzXxPhWU)

[2. Circle Tracing /w OLED (Extension0.5.7)](https://makecode.microbit.org/_eFkaX2iT57Hr)

### Extension Version and Updates

There may be updates to extensions periodically, please refer to the following link to update/downgrade your extension.

[Makecode Extension Update](https://kittenbothk-eng.readthedocs.io/en/latest/Makecode/makecode_extensionUpdate.html)

### FAQ

#### 1: There is no reaction after pressing the buttons on the Micro:bit.

· A: This is because KOI has a longer boot time than Micro:bit. When the power is turned on, Micro:bit has already ran the code for KOI initialization before KOI is ready.

· Solution: Reset your Micro:bit after KOI has been turned on. (The trick is to let KOI power on completely before initialization.)

#### 2: Does KOI work with 3V input?

· A: No, KOI only works with 5V.

#### 3: How do I improve detection rate?

· Adjust the threshold value.

· Keep a clean background.

· Make sure the circle has a sharp outline.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sharinghub-eng.kittenbot.hk/airelated/koi/koimc/circle-tracing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
