# MU Camera

## Function introduction

MU Vision Sensor is an intelligent vision sensor that can recognize many kinds of objects with a deep-learning algorithm inside. For example, it can detect color blocks, balls, the human body, and cards. Its detect result can be transmitted through UART or I2C interface. MU is compact, has low power consumption, processes all algorithms locally, and can be widely used in intelligent toys, AI+STEAM lessons, creators, and other products or fields.

<figure><img src="/files/plB3mKbF2OXs4jWW2YkI" alt=""><figcaption></figcaption></figure>

## Software setup

{% hint style="info" %}
Currently only supports the product **Bittle**, software version **2.0**, please select "**Camera**" for the mode.
{% endhint %}

* You can use the [Firmware Uploader](https://docs.petoi.com/desktop-app/firmware-uploader) within the Petoi Desktop App to finish the configuration.

![](/files/Kn0ewlgyQW6NL59nbQNk)

* You can also use [Arduino IDE](https://www.arduino.cc/en/software) for the most freedom to upload and modify the codes.&#x20;

1. First, download and install the [MU camera library](https://github.com/mu-opensource/MuVisionSensor3) into your Arduino IDE.&#x20;

![](/files/eyTxsfLrQaJAOuM0qJUE)

![](/files/EQlLMylYN6ORziWC9Yzs)

2\. Use the latest OpenCat code to finish the setup.&#x20;

![](/files/3EpiRpMSeZrSwCbxcHtS)

If you have already uploaded the latest OpenCat code to make Bittle walk, you only need to uncomment the **`#define CAMERA`** at the beginning of OpenCat.ino then upload the code.&#x20;

If you are not sure, you need to finish the [upload process for the standard mode](https://docs.petoi.com/arduino-ide/upload-sketch-for-nyboard) to ensure everything is configured correctly, then upload the code in the camera mode.&#x20;

## Hardware setup

After uploading the firmware, switching the dial switches on the MU Vision Sensor and connecting to the NyBoard with wire as shown in the following picture:

![](/files/QzFpHEjV6LsCDgFg2ITG)

{% hint style="info" %}
Note: The position of the left and right switches (left: down and up; right: down and down) must be dialed to the position shown in the figure.
{% endhint %}

Fix the end connected to the camera to the robot's head (included in Bittle's mouth).

If the camera code is uploaded correctly, Bittle maintains a squat position basically, you can see success messages printed on the [serial monitor](https://docs.petoi.com/arduino-ide/serial-monitor) of Arduino IDE. When the MU Vision Sensor recognizes a target, the two LEDs will turn blue, and Bittle's head can follow the target and swing left and right. The demo code will auto-switch the target between a yellow tennis ball and a human body if it fails to find any object.

<div align="center"><img src="/files/FeOweEZfrMJP0xaOXL6i" alt=""></div>

{% hint style="info" %}
If the MU Vision Sensor has not been able to identify the target object, please press the reset button on the camera, then press the reset button on the main board.
{% endhint %}

For more details, please refer to [the Technical Support Document](https://morpx-docs.readthedocs.io/en/latest/MUVS3/introduction.html).

The demo video is as follows:

{% embed url="<https://www.youtube.com/watch?v=CxGI-MzCGWM>" %}


---

# 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://docs.petoi.com/thai/extensible-modules/mu-camera.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.
