Skip to content

Commit

Permalink
update docs for maixcam-pro
Browse files Browse the repository at this point in the history
  • Loading branch information
Neutree committed Oct 24, 2024
1 parent e3cab40 commit 95c0f9a
Show file tree
Hide file tree
Showing 55 changed files with 765 additions and 276 deletions.
Binary file added docs/doc/assets/gpio_led.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 13 additions & 8 deletions docs/doc/en/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ title: MaixCAM MaixPy Quick Start

| Resource Summary | Link |
| :-------------------------:| :-------------------------------------------------------------------------------------:|
| MaixPy Tutorial Documentation 📖 | [wiki.sipeed.com/maixpy/en/](https://wiki.sipeed.com/maixpy/en/) |
| MaixPy Examples and Source Code <img src="/static/image/github-fill.svg" style="height: 1.5em;vertical-align: middle;"> | [github.com/sipeed/MaixPy](https://github.com/sipeed/MaixPy) |
| MaixCAM Hardware Documentation 📷 | [wiki.sipeed.com/maixcam](https://wiki.sipeed.com/maixcam) |
| MaixPy API Documentation 📚 | [wiki.sipeed.com/maixpy/api/](https://wiki.sipeed.com/maixpy/api/index.html) |
| Tutorial Documentation 📖 | [wiki.sipeed.com/maixpy/en/](https://wiki.sipeed.com/maixpy/en/) |
| Examples and Source Code <img src="/static/image/github-fill.svg" style="height: 1.5em;vertical-align: middle;"> | [github.com/sipeed/MaixPy](https://github.com/sipeed/MaixPy) |
| MaixCAM Hardware 📷 | [wiki.sipeed.com/maixcam](https://wiki.sipeed.com/maixcam) / [wiki.sipeed.com/maixcam-pro](https://wiki.sipeed.com/maixcam-pro) |
| API Documentation 📚 | [wiki.sipeed.com/maixpy/api/](https://wiki.sipeed.com/maixpy/api/index.html) |
| MaixHub App Store 📦 | [maixhub.com/app](https://maixhub.com/app) |
| MaixHub Sharing Square 🎲 | [maixhub.com/share](https://maixhub.com/share) |

Expand All @@ -49,7 +49,10 @@ title: MaixCAM MaixPy Quick Start

## Get a MaixCAM Device

![maixcam_pro](../../static/image/maixcam_pro.png)

* **MaixCAM**: Purchase the <a href="https://wiki.sipeed.com/maixcam" target="_blank">MaixCAM</a> development board from the [Sipeed Taobao](https://item.taobao.com/item.htm?id=784724795837) or [Sipeed AliExpress](https://www.aliexpress.com/store/911876460) store.
* **MaixCAM-Pro**: Purchase the <a href="https://wiki.sipeed.com/maixcam" target="_blank">MaixCAM</a> development board from the [Sipeed Taobao](https://item.taobao.com/item.htm?id=846226367137) or [Sipeed AliExpress](https://www.aliexpress.com/store/911876460) store.

**It is recommended to purchase the bundle with a `TF card`, `camera`, `2.3-inch touchscreen`, `case`, `Type-C data cable`, `Type-C one-to-two mini board`, and `4P serial port socket+cable`**, which will be convenient for later use and development. **The following tutorials assume that you already have these accessories** (including the screen).

Expand All @@ -72,7 +75,7 @@ If you use screenless version, please refer to the [Quick Start (Screenless Vers

### Prepare the TF Image Card and Insert it into the Device

If the package you purchased includes a TF card, it already contains the factory image. If the TF card was not installed in the device at the factory, you will first need to carefully open the case (be careful not to tear the ribbon cables inside) and then insert the TF card. Additionally, since the firmware from the factory may be outdated, it is highly recommended to follow the instructions on [Upgrading and Flashing the System](https://wiki.sipeed.com/maixpy/doc/zh/basic/os.html) to upgrade the system to the latest version.
If the package you purchased includes a TF card, it already contains the factory image. If the TF card was not installed in the device at the factory, you will first need to carefully open the case (be careful not to tear the ribbon cables inside) and then insert the TF card. Additionally, since the firmware from the factory may be outdated, it is highly recommended to follow the instructions on [Upgrading and Flashing the System](./basic/os.md) to upgrade the system to the latest version.

If you did not purchase a TF card, you need to flash the system onto a self-provided TF card. Please refer to [Upgrading and Flashing the System](./basic/os.md) for the flashing method, and then install it on the board.

Expand Down Expand Up @@ -117,7 +120,7 @@ If it shows `Request failed` or `请求失败` (Request failed), please first ch

Many applications are built-in, such as Find Blobs, AI Detector, Line Follower, etc. For example, Find Blobs:

<video playsinline controls autoplay loop muted preload class="pl-6 pb-4 self-end" src="/static/video/find_blobs.mp4" type="video/mp4">
<video playsinline controls autoplay loop muted preload class="pl-6 pb-4 self-end" src="/static/video/self_learn_tracker.mp4" type="video/mp4">
Classifier Result video
</video>

Expand All @@ -133,7 +136,7 @@ The built-in applications can be used directly as serial modules, such as `Find
Note that the serial port can only directly connect to other microcontrollers. **If you want to communicate with a computer via a serial port, you must provide a USB-to-serial module yourself.**

Usage:
* Hardware connection: You can connect the device to the `Type-C one-to-two mini board`, which allows you to connect the device via serial to your main controller, such as `Arduino`, `Raspberry Pi`, `STM32`, etc.
* Hardware connection: You can connect the device to the `Type-C one-to-two mini board`(For MaixCAM-Pro is 6Pin interface), which allows you to connect the device via serial to your main controller, such as `Arduino`, `Raspberry Pi`, `STM32`, etc.
* Open the application you want to use, such as QR code recognition. When the device scans a QR code, it will send the result to your main controller via serial.
> The serial baud rate is `115200`, the data format is `8N1`, and the protocol follows the [Maix Serial Communication Protocol Standard](https://github.com/sipeed/MaixCDK/blob/master/docs/doc/convention/protocol.md). You can find the corresponding application introduction on the [MaixHub APP](https://maixhub.com/app) to view the protocol.
> If APP no serial output, you can also do it by yourself, follow function examples and [UART usage doc](./peripheral/uart.md) to add function and serial output.
Expand All @@ -142,7 +145,7 @@ Usage:

To enable communication between the computer (PC) and the device (MaixCAM), we need to ensure they are on the same local area network. There are two methods to achieve this:

* **Method 1 (Highly Recommended)**: Wireless Connection. Connect the device to the same router or Wi-Fi hotspot that the computer is connected to via Wi-Fi. Go to the device's `Settings -> WiFi Settings` and connect to your Wi-Fi. (If you experience screen lag or high latency with Wi-Fi, you can try Method 2 for a wired connection.)
* **Method 1 (Highly Recommended)**: Wireless Connection. Connect the device to the same router or Wi-Fi hotspot that the computer is connected to via Wi-Fi. Go to the device's `Settings -> WiFi Settings` and connect to your Wi-Fi. (If you experience **screen lag or high latency** with Wi-Fi, you can try Method 2 for a wired connection.)

Here is the translation:

Expand Down Expand Up @@ -205,6 +208,8 @@ Here is the translation:
If you want the program to start automatically on boot, you can set it in `Settings -> Boot Startup`.

More MaixVision usage refer to [MaixVision documentation](./basic/maixvision.md)

## Next Steps

If you like what you've seen so far, **please be sure to give the MaixPy open-source project a star on [GitHub](https://github.com/sipeed/MaixPy) (you need to log in to GitHub first). Your star and recognition is the motivation for us to continue maintaining and adding new features!**
Expand Down
15 changes: 15 additions & 0 deletions docs/doc/en/basic/app.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,21 @@
title: MaixCAM MaixPy App development and app stores
---

## Where to Find Applications

After powering on, the device will automatically enter the application selection interface. All built-in applications are available on the [MaixHub App Store](https://maixhub.com/app), where you can find corresponding app descriptions and usage instructions.

## Where to Find Source Code

You can find the source code links (if available) on the app pages in the App Store. The source code for official integrated applications is located in the [MaixPy/projects](https://github.com/sipeed/MaixPy/tree/main/projects) directory or the [MaixCDK/projects](https://github.com/sipeed/MaixCDK/tree/main/projects) directory.

## Installing Applications

Frequently used settings include `Settings -> Language` and `Settings -> WiFi`.

The `App Store` application can be used to upgrade and install apps. Once connected to a WiFi network with internet access, you can scan to install apps from the [MaixHub App Store](https://maixhub.com/app).


## Introduction to Application Ecosystem

In order to make the development board ready to use out of the box, make it easy for users to use without barriers, enable developers to share their interesting applications, and provide effective channels for receiving feedback and even profits, we have launched a simple application framework, including:
Expand Down
7 changes: 2 additions & 5 deletions docs/doc/en/basic/app_usage.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
---
title: MaixCAM MaixPy Application User Guide
layout: redirect
redirect_url: ./app.html
---

After powering on, it will automatically enter the application selection interface, where various built-in applications are available in the [MaixHub App Store](https://maixhub.com/app). Here you can find descriptions and instructions for using each corresponding application.

The commonly used settings are `Settings -> Language`, as well as `Settings -> WiFi`. The `App Store` application can be used for upgrading and installing applications. Once connected to a WiFi network that has internet access, you can scan and install applications from the [MaixHub App Store](https://maixhub.com/app).

Moreover, applications you develop can also be uploaded to the [MaixHub App Store](https://maixhub.com/app) to share with others. High-quality and outstanding applications will receive official red envelope rewards, and excellent applications will gain recognition and support from everyone.

Whether it's a simple application for collecting sensor data or a complex function application, let's work together to create more interesting things!

2 changes: 1 addition & 1 deletion docs/doc/en/basic/maixpy_upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ There are two methods to begin with. If you are new to this and want to keep thi

However, since we don't know when the TF card you received was manufactured, it is recommended to update the system.

## Updating the System Directly(Recommend)
## Updating the System Directly(Highly Recommend)

Follow the steps in [Upgrading and Flashing the System](./os.md) to upgrade to the latest system, which already includes the newest MaixPy firmware.

Expand Down
18 changes: 10 additions & 8 deletions docs/doc/en/basic/os.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,23 @@ title: MaixCAM MaixPy Upgrade and burn system.

If you have purchased the official (Sipeed) package with a TF card, typically the system has already been pre-programmed at the factory and can be used directly without further steps.

However, to avoid using an outdated version of the pre-programmed system, it is highly recommended to first upgrade to the latest system following the tutorial.
However, to avoid using an outdated version of the pre-programmed system, it is <span style="font-size: 1.2em; color: red">**highly recommended**</span> to first **upgrade to the latest system** following the tutorial.


## Obtaining the Latest System

Visit the [MaixPy Release page](https://github.com/sipeed/MaixPy/releases) to find the latest system image file, such as `maixcam_os_20240401_maixpy_v4.1.0.xz`.

Alternate link: [Sourceforge](https://sourceforge.net/projects/maixpy/files/)


## How to Confirm if System Upgrade is Needed

* Upon booting up to the main menu, click on `Settings`, then `Device Info` to check the system's version number.
* Visit the [MaixPy Release History page](https://github.com/sipeed/MaixPy/releases) to review the update logs, which contain information on MaixPy firmware and system image updates. If there are significant updates after your current version, it is advisable to upgrade.

> If the latest system update only includes routine MaixPy firmware updates compared to your current system, you may choose not to upgrade. You can simply update `MaixPy` separately in `Settings` under `Update MaixPy`.
## Obtaining the Latest System

Visit the [MaixPy Release page](https://github.com/sipeed/MaixPy/releases) to find the latest system image file, such as `maixcam_os_20240401_maixpy_v4.1.0.xz`.
> If the latest system update only includes routine MaixPy firmware updates compared to your current system, you may choose not to upgrade. You can simply update `MaixPy` separately in `Settings` under `Update MaixPy`.
Alternate link:
* [Sourceforge](https://sourceforge.net/projects/maixpy/files/)

## Burning the System Image to MaixCAM

Expand Down
3 changes: 3 additions & 0 deletions docs/doc/en/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,9 @@ This is mostly due to insufficient power supply. MaixCAM requires a voltage of a

For MaixCAM, it draws 400mA during startup, 250mA in standby mode with the screen on, and 400mA~500mA when running AI models at full speed. Therefore, ensuring a stable power supply is very important!

## MaixCAM Black screen and not boot up, or stock in LOGO screen

Refer to [MaixCAM FAQ](https://wiki.sipeed.com/hardware/en/maixcam/faq.html)

## MaixVision Program Stuck on "start running ..."

Expand Down
7 changes: 6 additions & 1 deletion docs/doc/en/modules/rtc.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,13 @@
title: Using the RTC Module with MaixCAM MaixPy
---

The MaixCAM-Pro comes with an onboard RTC module. For detailed usage instructions, please refer to [bm8653 RTC Module Usage](./bm8653.md).
The MaixCAM-Pro has an onboard RTC module, which will automatically synchronize the system time upon power-on and also sync time from the network. It will automatically re-sync when there are changes in network status.

Therefore, under normal circumstances, you don’t need to manually operate the RTC; you can directly use the system’s time API to get the current time.

If you do need to manually operate the RTC, please refer to [bm8653 RTC Module Usage](./bm8653.md). Before manually operating the RTC, you can disable automatic synchronization by deleting the RTC and NTP-related services in the system’s `/etc/init.d` directory.

> MaixCAM does not have an onboard RTC.


2 changes: 1 addition & 1 deletion docs/doc/en/peripheral/adc.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ See the ADC [API documentation](../../../api/maix/peripheral/adc.md) for a detai

## Some notes on MaixCAM's ADC

MaixCAM elicits an IO that connects to the ADC, this IO is GPIO B3.
MaixCAM elicits an IO that connects to the ADC, this IO is GPIO B3(For MaixCAM-Pro, B3 connected light LED, so ADC can't directly use).

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)

Expand Down
26 changes: 26 additions & 0 deletions docs/doc/en/peripheral/gpio.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,19 @@ Using GPIO allows you to control pins for input or output high and low levels, w
First, we need to know which pins and GPIOs the device has. For MaixCAM, each pin corresponds to a GPIO controller, as shown in the figure:

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)
![maixcam_pro_io](/static/image/maixcam_pro_io.png)

It is important to note that pins can be used not only as GPIOs but also for other functions like PWM. Before using them, we need to set the pin function to GPIO.

For example, on MaixCAM, **some pins are already occupied by other functions by default, such as UART0 and WiFi (SDIO1 + A26), so it is not recommended to use them.**

Other pins can be used, and the A14 pin is connected to the onboard LED, which is used as a system load indicator by default. If initialized, it will automatically disable the system indicator function and can be used as a regular GPIO (note that `A14` can only be used as an output). This way, you can control the LED's on and off state.

Here is the English translation of your text:

The circuit diagram of the LED is shown in the figure. Therefore, we only need to provide a high signal to pin A14, and the LED will conduct and light up:
![](../../assets/gpio_led.png)

```python
from maix import gpio, pinmap, time

Expand Down Expand Up @@ -49,3 +55,23 @@ while 1:
time.sleep_ms(1) # sleep to make cpu free
```

Here is the English translation of the text:

## MaixCAM-Pro Uses Illumination LED

Both MaixCAM and MaixCAM-Pro have a small LED light connected to pin `A14`. Additionally, the MaixCAM-Pro has an onboard illumination LED connected to pin `B3`, which is turned on by a high signal and off by a low signal:

```python
from maix import gpio, pinmap, time

pinmap.set_pin_function("B3", "GPIOB3")
led = gpio.GPIO("GPIOB3", gpio.Mode.OUT)
led.value(0)

while 1:
led.toggle()
time.sleep_ms(500)

```


1 change: 1 addition & 0 deletions docs/doc/en/peripheral/i2c.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ title: Using I2C with MaixCAM MaixPy
The `I2C` and corresponding pins of `MaixCAM` can be seen in the diagram:

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)
![maixcam_pro_io](/static/image/maixcam_pro_io.png)

For MaixCAM, due to limited pin resources, the pins for `I2C1` and `I2C3` overlap with those of the WiFi module (SDIO1). Therefore, you can only use either WiFi or hardware I2C, but not both. Additionally, there is an `I2C5`, which is simulated by software at the lower driver level. It is recommended to use this one, as the drivers are already set up, and its use is the same as using hardware `I2C`.

Expand Down
1 change: 1 addition & 0 deletions docs/doc/en/peripheral/pinmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ With Pinmap, we can set the specified chip pin for the specified function.
The following diagram lists the pin numbers and their functions on the MaixCAM board.

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)
![maixcam_pro_io](/static/image/maixcam_pro_io.png)

Or read the [SG2002 Chip Manual](https://cn.dl.sipeed.com/fileList/LICHEE/LicheeRV_Nano/07_Datasheet/SG2002_Preliminary_Datasheet_V1.0-alpha_CN.pdf) Pinmux section for the remaining pin numbers and functions.

Expand Down
1 change: 1 addition & 0 deletions docs/doc/en/peripheral/pwm.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ To use `PWM` in MaixPy (v4), first set the pin function to `PWM` using `pinmap`.
Each `PWM` corresponds to a specific pin, as shown in the pin diagram of MaixCAM:

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)
![maixcam_pro_io](/static/image/maixcam_pro_io.png)

We recommend using `PWM6` and `PWM7`.

Expand Down
1 change: 1 addition & 0 deletions docs/doc/en/peripheral/spi.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ In terms of communication protocols, SPI behavior is generally like this:
This is the pinout of MaixCAM.

![](https://wiki.sipeed.com/hardware/zh/lichee/assets/RV_Nano/intro/RV_Nano_3.jpg)
![maixcam_pro_io](/static/image/maixcam_pro_io.png)

You need to use `maix.peripheral.pinmap` to complete the pin mapping for SPI before use.

Expand Down
Loading

0 comments on commit 95c0f9a

Please sign in to comment.