From d5ca3edf99cb012b1aad7b66ac29071b3f8c6525 Mon Sep 17 00:00:00 2001
From: Sean <1026025056@qq.com>
Date: Tue, 15 Dec 2020 09:11:01 +0800
Subject: [PATCH 01/16] release core for aws
---
docs/en/core/core2_for_aws.md | 4 +++-
docs/en/product_list.json | 3 ++-
docs/zh_CN/core/core2_for_aws.md | 4 ++--
docs/zh_CN/product_list.json | 3 ++-
4 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/docs/en/core/core2_for_aws.md b/docs/en/core/core2_for_aws.md
index 8a69dbbb..d495ca71 100644
--- a/docs/en/core/core2_for_aws.md
+++ b/docs/en/core/core2_for_aws.md
@@ -378,13 +378,15 @@ For more information about Pin assignment and Pin Remapping, Please refer to [ES
### Arduino IDE
-- Click[here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Core/M5Core2/Arduino) to get Arduino code
+- [FactoryTest](https://github.com/m5stack/M5Core2/tree/master/examples/core2_for_aws)
### Tutorial
- [UIFlow](en/quick_start/core2/m5stack_core2_get_started_MicroPython)
- [Arduino](en/arduino/arduino_core2_development)
+Last updated: 2020-12-15
+
\ No newline at end of file
diff --git a/docs/zh_CN/core/core2_for_aws.md b/docs/zh_CN/core/core2_for_aws.md
index 3f83dff8..51b3f16e 100644
--- a/docs/zh_CN/core/core2_for_aws.md
+++ b/docs/zh_CN/core/core2_for_aws.md
@@ -20,7 +20,7 @@
其核心主控**Core2**配备了ESP32-D0WDQ6-V3,具有两个可以单独控制的 Xtensa® 32-bit LX6 处理器,主频高达240Mhz,支持WiFi与蓝牙功能,板载16MB Flash与8MB PSRAM,可通过TYPE-C接口下载程序,强劲的配置满足复杂应用的资源开销。正面搭载一块2.0寸一体化电容式触摸屏,为用户带来更流畅的人机交互体验。机身内置震动马达,可提供触觉回馈和震动提醒功能。内建的RTC模块可提供精准计时功能。电源部分搭载AXP192电源管理芯片可有效控制机身功耗,内置绿色电源指示灯。同时机身内配备了TF-card(microSD)卡槽与扬声器,为了保证获得更高质量的声音效果,采用I2S数字音频接口的功放芯片,能有效防止信号失真。在机身的左侧和底部配有独立的电源按键与重启(RST)按键,屏幕正面的3个圆点属于触摸屏的一部分,可通过编写程序设置热区映射为3个虚拟按键。
-**M5GO-Bottom For AWS** 是专为该定制款设计的拓展型底座,底座集成了MPU6886六轴姿态传感器,数字麦克风(SPM1423),500mAh锂电池。提供两了组HY2.0-4P拓展接口将常用的ADC/DAC/UART引脚进行了引出,能够用于各类型传感器的接入。底座两侧分别为10颗可编程RGB灯(SK6812),配合磨砂透光材质遮光条,能够提供柔和舒适发光效果。底部采用pogo pin磁吸充电接口,当吸附充电底座时,电流将经过内置的TP4057充电芯片安全的流入内部电池。除充电功能外pogo pin接口对主控I2C总线进行了引出,这使得你能够通过磁吸的方式去外接拓展。内置吸附磁铁,背面采用兼容LEGO孔设计,能够与你的其他的LEGO结构设计无缝对接。
+**M5GO-Bottom For AWS** 是专为该定制款设计的拓展型底座,底座集成了MPU6886六轴姿态传感器,数字麦克风(SPM1423),500mAh锂电池。提供两组HY2.0-4P拓展接口将常用的ADC/DAC/UART引脚进行了引出,能够用于各类型传感器的接入。底座两侧分别为10颗可编程RGB灯(SK6812),配合磨砂透光材质遮光条,能够提供柔和舒适发光效果。底部采用pogo pin磁吸充电接口,当吸附充电底座时,电流将经过内置的TP4057充电芯片安全的流入内部电池。除充电功能外pogo pin接口对主控I2C总线进行了引出,这使得你能够通过磁吸的方式去外接拓展。内置吸附磁铁,背面采用兼容LEGO孔设计,能够与你的其他的LEGO结构设计无缝对接。
**AWS定制款嵌入了ATECC608A硬件加密芯片,能够以硬件层次密钥的方式加强设备物联网通信过程的安全**
diff --git a/docs/zh_CN/core/m5paper.md b/docs/zh_CN/core/m5paper.md
index 26652796..456b1d78 100644
--- a/docs/zh_CN/core/m5paper.md
+++ b/docs/zh_CN/core/m5paper.md
@@ -123,6 +123,11 @@
- [ToDo](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Windows/CORE/EasyLoader_M5Paper_Todo.exe)
- [Calculator](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/Windows/CORE/EasyLoader_M5Paper_Calculator.exe)
+- **MacOS**
+ - [FactoryTest](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/MacOS/CORE/EasyLoader_M5Paper_FactoryTest.dmg)
+ - [ToDo](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/MacOS/CORE/EasyLoader_M5Paper_Todo.dmg)
+ - [Calculator](https://m5stack.oss-cn-shenzhen.aliyuncs.com/EasyLoader/MacOS/CORE/EasyLoader_M5Paper_Calculator.dmg)
+
## 管脚映射
diff --git a/docs/zh_CN/product_list.json b/docs/zh_CN/product_list.json
index df75b021..97448974 100644
--- a/docs/zh_CN/product_list.json
+++ b/docs/zh_CN/product_list.json
@@ -87,7 +87,8 @@
{"a":"/#/zh_CN/unit/laser-rx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_rx_01.webp", "p":"LASER-RX", "sku":"U065" ,"kw":"LASER"},
{"a":"/#/zh_CN/unit/laser-tx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_tx_01.webp", "p":"LASER-TX", "sku":"U066" ,"kw":"LASER"},
{"a":"/#/zh_CN/unit/can", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/can.webp", "p":"CAN", "sku":"U085" ,"kw":"CAN"},
- {"a":"/#/zh_CN/unit/iso485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/iso485.webp", "p":"Isolated RS485 Unit", "sku":"U094" ,"kw":"Isolated RS485"}
+ {"a":"/#/zh_CN/unit/iso485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/iso485.webp", "p":"Isolated RS485 Unit", "sku":"U094" ,"kw":"Isolated RS485"},
+ {"a":"/#/zh_CN/unit/uwb", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/uwb_01.webp", "p":"UWB", "sku":"U100" ,"kw":"DW1000"}
],
"HAT-传感器": [
{"a":"/#/zh_CN/hat/hat_envII", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/hat/envii.webp", "p":"ENV II", "sku":"U053-B" ,"kw":"BMP280 BMM150 SHT30", "category":"C-HAT"},
diff --git a/docs/zh_CN/unit/sonic.md b/docs/zh_CN/unit/sonic.md
index e0c86edb..28589c11 100644
--- a/docs/zh_CN/unit/sonic.md
+++ b/docs/zh_CN/unit/sonic.md
@@ -99,6 +99,13 @@
+## 管脚映射
+
+
+ | M5Core(PORT A) | GPIO22 | GPIO21 | 5V | GND |
+ | Ultrasonic Unit | SCL | SDA | 5V | GND |
+
+
## 相关链接
- **[Ceramic Ultrasonic Sensor TC40-10T/R](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/unit/TC40-10T-R.pdf)**
@@ -111,7 +118,7 @@
\ No newline at end of file
From 7112476f0283bd70c2f37284511ed075931b838f Mon Sep 17 00:00:00 2001
From: Sean <1026025056@qq.com>
Date: Fri, 18 Dec 2020 18:55:52 +0800
Subject: [PATCH 06/16] update some info
---
docs/en/product_list.json | 72 +++++++++++++++++------------------
docs/en/unit/timercam.md | 8 ++--
docs/en/unit/timercam_f.md | 8 ++--
docs/en/unit/timercam_x.md | 8 ++--
docs/en/unit/uwb.md | 2 +-
docs/zh_CN/unit/timercam.md | 8 ++--
docs/zh_CN/unit/timercam_f.md | 8 ++--
docs/zh_CN/unit/timercam_x.md | 8 ++--
docs/zh_CN/unit/uwb.md | 2 +-
9 files changed, 62 insertions(+), 62 deletions(-)
diff --git a/docs/en/product_list.json b/docs/en/product_list.json
index a7bbe0b1..da3cf75f 100644
--- a/docs/en/product_list.json
+++ b/docs/en/product_list.json
@@ -1,13 +1,13 @@
{
"Controllers": {
"core": [
- {"a":"/#/en/core/core2", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core2_01.webp", "p":"Core2", "sku":"K010", "qs":"/#/en/quick_start/core2/m5stack_core2_quick_start" ,"kw":"ESP32 AXP192 MPU6886 BM8563 MICPHONE", "category":"M5Core/Kit"},
+ {"a":"/#/en/core/core2", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core2_01.webp", "p":"CORE2", "sku":"K010", "qs":"/#/en/quick_start/core2/m5stack_core2_quick_start" ,"kw":"ESP32 AXP192 MPU6886 BM8563 MICPHONE", "category":"M5Core/Kit"},
{"a":"/#/en/core/basic", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core_basic_01.webp", "p":"BASIC", "sku":"K001", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306"},
{"a":"/#/en/core/gray", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core_gray_01.webp", "p":"GRAY", "sku":"K002", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150"},
{"a":"/#/en/core/fire", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core_fire_01.webp", "p":"FIRE", "sku":"K007", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150 LEGO MICPHONE"},
- {"a":"/#/en/core/m5go_lite", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/kit_m5go_lite_01.webp", "p":"M5GO Lite", "sku":"K022", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150 LEGO"},
- {"a":"/#/en/core/m5go", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/kit_m5go_01.webp", "p":"M5GO Kit", "sku":"K006", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150 LEGO MICPHONE"},
- {"a":"/#/en/core/core2_for_aws", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core2_for_aws_01.webp", "p":"Core2 for AWS", "sku":"K010-AWS", "qs":"/#/en/quick_start/core2_for_aws/quick_start_list" ,"kw":"ESP32 AXP192 MPU6886 LEGO MICPHONE LED"}
+ {"a":"/#/en/core/m5go_lite", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/kit_m5go_lite_01.webp", "p":"M5GO LITE", "sku":"K022", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150 LEGO"},
+ {"a":"/#/en/core/m5go", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/kit_m5go_01.webp", "p":"M5GO IoT Kit", "sku":"K006", "qs":"/#/en/quick_start/m5core/m5stack_core_quick_start" ,"kw":"ESP32 IP5306 MPU6886 BMM150 LEGO MICPHONE"},
+ {"a":"/#/en/core/core2_for_aws", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core2_for_aws_01.webp", "p":"CORE2 FOR AWS", "sku":"K010-AWS", "qs":"/#/en/quick_start/core2_for_aws/quick_start_list" ,"kw":"ESP32 AXP192 MPU6886 LEGO MICPHONE LED"}
],
"stick": [
{"a":"/#/en/core/m5stickc_plus", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core_m5stickc_plus_01.webp", "p":"M5StickC PLUS", "sku":"K016-P", "qs":"/#/en/quick_start/m5stickc_plus/m5stickc_plus_quick_start" ,"kw":"ESP32 AXP192 MPU6886", "category":"M5Stick"},
@@ -16,21 +16,21 @@
{"a":"/#/en/core/m5stick", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/core_m5stick_01.webp", "p":"M5Stick", "sku":"K016", "qs":"/#/en/quick_start/m5stick/m5stick_quick_start" ,"kw":"ESP32 OLED IP5306 MPU9250"}
],
"atom": [
- {"a":"/#/en/core/atom_lite", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/atom_lite_01.webp", "p":"ATOM Lite", "sku":"C008" ,"qs":"/#/en/quick_start/atom/atom_quick_start", "kw":"ESP32 LED", "category":"ATOM"},
- {"a":"/#/en/core/atom_matrix", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/atom_matrix_01.webp", "p":"ATOM Matrix", "sku":"C008-B", "qs":"/#/en/quick_start/atom/atom_quick_start" ,"kw":"ESP32 LED MPU6886"},
+ {"a":"/#/en/core/atom_lite", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/atom_lite_01.webp", "p":"ATOM LITE", "sku":"C008" ,"qs":"/#/en/quick_start/atom/atom_quick_start", "kw":"ESP32 LED", "category":"ATOM"},
+ {"a":"/#/en/core/atom_matrix", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/atom_matrix_01.webp", "p":"ATOM MATRIX", "sku":"C008-B", "qs":"/#/en/quick_start/atom/atom_quick_start" ,"kw":"ESP32 LED MPU6886"},
{"a":"/#/en/atom/atomecho", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/atom_echo.webp", "p":"ATOM ECHO", "sku":"C008-C","qs":"/#/en/quick_start/atom/atom_echo_quick_start" ,"kw":"ESP32 Speaker I2S"}
],
"e-paper": [
- {"a":"/#/en/core/coreink", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/coreink_01.webp", "p":"CoreInk", "sku":"K048", "qs":"/#/en/quick_start/coreink/quick_start_list" ,"kw":"ESP32 E-Ink", "category":"E-Paper"},
- {"a":"/#/en/core/m5paper", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/m5paper_01.webp", "p":"M5paper", "sku":"K049", "qs":"/#/en/quick_start/m5paper/quick_start_arduino" ,"kw":"ESP32 E-Ink SHT30"}
+ {"a":"/#/en/core/coreink", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/coreink_01.webp", "p":"CORE.INK", "sku":"K048", "qs":"/#/en/quick_start/coreink/quick_start_list" ,"kw":"ESP32 E-Ink", "category":"E-Paper"},
+ {"a":"/#/en/core/m5paper", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/m5paper_01.webp", "p":"M5PAPER", "sku":"K049", "qs":"/#/en/quick_start/m5paper/quick_start_arduino" ,"kw":"ESP32 E-Ink SHT30"}
]
},
"Sensors": {
"Sensors": [
- {"a":"/#/en/unit/sonic", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/ultrasonic.webp", "p":"Ultrasonic", "sku":"U098" ,"kw":"DISTANCE ULTRASONIC SENSOR", "category":"Sensors"},
- {"a":"/#/en/unit/mic", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/mic.webp", "p":"Microphone", "sku":"U096" ,"kw":"MIC SOUND SENSOR"},
- {"a":"/#/en/unit/ameter", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/ameter.webp", "p":"Ammeter", "sku":"U086" ,"kw":"AMETER SENSOR"},
- {"a":"/#/en/unit/vmeter", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/vmeter.webp", "p":"Voltmeter", "sku":"U087" ,"kw":"VMETER VOLT SENSOR"},
+ {"a":"/#/en/unit/sonic", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/ultrasonic.webp", "p":"UlTRASONIC", "sku":"U098" ,"kw":"DISTANCE ULTRASONIC SENSOR", "category":"Sensors"},
+ {"a":"/#/en/unit/mic", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/mic.webp", "p":"MIC", "sku":"U096" ,"kw":"MIC SOUND SENSOR"},
+ {"a":"/#/en/unit/ameter", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/ameter.webp", "p":"AMeter", "sku":"U086" ,"kw":"AMETER SENSOR"},
+ {"a":"/#/en/unit/vmeter", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/unit/vmeter.webp", "p":"VMeter", "sku":"U087" ,"kw":"VMETER VOLT SENSOR"},
{"a":"/#/en/unit/earth", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_earth_01.webp", "p":"EARTH", "sku":"U019" ,"kw":"EARTH SENSOR"},
{"a":"/#/en/unit/env", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_env_01.webp", "p":"ENV", "sku":"U001" ,"kw":"DHT12 BMP280"},
{"a":"/#/en/unit/light", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_light_01.webp", "p":"LIGHT", "sku":"U021" ,"kw":"LIGHT SENSOR"},
@@ -41,22 +41,22 @@
{"a":"/#/en/unit/tof", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_tof_01.webp", "p":"TOF", "sku":"U010" ,"kw":"VL53L0X SENSOR"},
{"a":"/#/en/unit/heart", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_heart_01.webp", "p":"HEART", "sku":"U029" ,"kw":"MAX30100 SENSOR"},
{"a":"/#/en/unit/adc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_adc_01.webp", "p":"ADC", "sku":"U013" ,"kw":"ADS1100"},
- {"a":"/#/en/unit/makey", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_makey_01.webp", "p":"MAKEY", "sku":"U026" ,"kw":"MUSIC"},
+ {"a":"/#/en/unit/makey", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_makey_01.webp", "p":"MUSIC", "sku":"U026" ,"kw":"MUSIC"},
{"a":"/#/en/unit/finger", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_finger_01.webp", "p":"FINGER", "sku":"U008" ,"kw":"FPC1020A"},
{"a":"/#/en/unit/weight", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_weight_01.webp", "p":"WEIGHT", "sku":"U030" ,"kw":"HX711 SENSOR"},
{"a":"/#/en/unit/accel", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_accel_01.webp", "p":"ACCEL", "sku":"U056" ,"kw":"ADXL345 SENSOR"},
{"a":"/#/en/unit/op90", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_op90_01.webp", "p":"OP.90", "sku":"U057" ,"kw":"SENSOR"},
{"a":"/#/en/unit/op180", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_op180_01.webp", "p":"OP.180", "sku":"U058" ,"kw":"SENSOR"},
{"a":"/#/en/unit/envII", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/envII_01.webp", "p":"ENV II", "sku":"U001-B" ,"kw":"SHT30 BMP280"},
- {"a":"/#/en/unit/hall", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/hall_unit.webp", "p":"HALL", "sku":"U084" ,"kw":"HALL A3144E"},
+ {"a":"/#/en/unit/hall", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/hall_unit.webp", "p":"HALL.EFFCT", "sku":"U084" ,"kw":"HALL A3144E"},
{"a":"/#/en/unit/tvoc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/tvoc.webp", "p":"TVOC/eCO2", "sku":"U088" ,"kw":"TVOC eCO2"},
{"a":"/#/en/unit/pdm", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/pdm_mini_unit.webp", "p":"PDM", "sku":"U089" ,"kw":"PDM MIC"},
- {"a":"/#/en/unit/bps", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/bps.webp", "p":"Barometric Pressure Unit", "sku":"U090" ,"kw":"Barometric Pressure bps"},
- {"a":"/#/en/unit/imu", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/imu.webp", "p":"6-Axis IMU Unit", "sku":"U095" ,"kw":"MPU6886 IMU"}
+ {"a":"/#/en/unit/bps", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/bps.webp", "p":"BPS", "sku":"U090" ,"kw":"Barometric Pressure bps"},
+ {"a":"/#/en/unit/imu", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/imu.webp", "p":"IMU", "sku":"U095" ,"kw":"MPU6886 IMU"}
],
"Acturators": [
{"a":"/#/en/unit/unit_fan", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_fan_01.webp", "p":"FAN", "sku":"U063" ,"kw":"DC MOTOR", "category":"Acturators"},
- {"a":"/#/en/unit/vibrator", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_vibrator_motor_01.webp", "p":"Vibrator-Motor", "sku":"U059" ,"kw":"DC MOTOR"},
+ {"a":"/#/en/unit/vibrator", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_vibrator_motor_01.webp", "p":"VIBRATOR-MOTOR", "sku":"U059" ,"kw":"DC MOTOR"},
{"a":"/#/en/unit/neopixel", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/M5GO_Unit_neopixel.webp", "p":"RGB LED", "sku":"A035" ,"kw":"RGB LED NEOPIXEL"},
{"a":"/#/en/unit/hex", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_hex_01.webp", "p":"HEX", "sku":"A045" ,"kw":"RGB LED NEOPIXEL"},
{"a":"/#/en/unit/rgb", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_rgb_01.webp", "p":"RGB", "sku":"U003" ,"kw":"RGB LED NEOPIXEL"}
@@ -69,7 +69,7 @@
{"a":"/#/en/unit/hub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_hub_01.webp", "p":"HUB", "sku":"U006" ,"kw":"CONNECTOR"},
{"a":"/#/en/unit/pahub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_pahub_p1.webp", "p":"PaHUB", "sku":"U040" ,"kw":"CONNECTOR"},
{"a":"/#/en/unit/pbhub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_pbhub_p1.webp", "p":"PbHUB", "sku":"U041" ,"kw":"CONNECTOR"},
- {"a":"/#/en/unit/396port", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_396port_01.webp", "p":"3.96Port", "sku":"U020" ,"kw":"CONNECTOR"},
+ {"a":"/#/en/unit/396port", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_396port_01.webp", "p":"3.96", "sku":"U020" ,"kw":"CONNECTOR"},
{"a":"/#/en/unit/m5-bit", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_m5bit_01.webp", "p":"M5:bit", "sku":"A051" ,"kw":"CONNECTOR"},
{"a":"/#/en/unit/proto", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_proto_01.webp", "p":"PROTO", "sku":"U022" ,"kw":"PROTOTYPE"},
{"a":"/#/en/unit/mini-proto", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/mini_proto_01.webp", "p":"MINI-PROTO", "sku":"U064" ,"kw":"PROTOTYPE"},
@@ -84,10 +84,10 @@
{"a":"/#/en/unit/gps", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_gps_01.webp", "p":"GPS", "sku":"U032" ,"kw":"AT6558"},
{"a":"/#/en/unit/rs485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_rs485_01.webp", "p":"RS485", "sku":"U034" ,"kw":"SP485EEN"},
{"a":"/#/en/unit/rfid", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit_rfid_01.webp", "p":"RFID", "sku":"U031" ,"kw":"RC522"},
- {"a":"/#/en/unit/laser-rx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_rx_01.webp", "p":"LASER-RX", "sku":"U065" ,"kw":"LASER"},
- {"a":"/#/en/unit/laser-tx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_tx_01.webp", "p":"LASER-TX", "sku":"U066" ,"kw":"LASER"},
+ {"a":"/#/en/unit/laser-rx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_rx_01.webp", "p":"LASER.RX", "sku":"U065" ,"kw":"LASER"},
+ {"a":"/#/en/unit/laser-tx", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/laser_tx_01.webp", "p":"LASER.TX", "sku":"U066" ,"kw":"LASER"},
{"a":"/#/en/unit/can", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/can.webp", "p":"CAN", "sku":"U085" ,"kw":"CAN"},
- {"a":"/#/en/unit/iso485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/iso485.webp", "p":"Isolated RS485 Unit", "sku":"U094" ,"kw":"Isolated RS485"},
+ {"a":"/#/en/unit/iso485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/iso485.webp", "p":"ISO485", "sku":"U094" ,"kw":"Isolated RS485"},
{"a":"/#/en/unit/uwb", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/uwb_01.webp", "p":"UWB", "sku":"U100" ,"kw":"DW1000"}
],
"Add-ons": [
@@ -97,15 +97,15 @@
{"a":"/#/en/hat/hat-pir", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/pir_hat_01.webp", "p":"PIR", "sku":"U054" ,"kw":"SENSOR"},
{"a":"/#/en/hat/hat-proto", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/hat_proto_01.webp", "p":"PROTO", "sku":"U060" ,"kw":"PROTOTYPE"},
{"a":"/#/en/hat/hat-ncir", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/hat_ncir_01.webp", "p":"NCIR", "sku":"U061" ,"kw":"MLX90614"},
- {"a":"/#/en/hat/hat-thermal", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/hat_thermal_01.webp", "p":"Thermal", "sku":"U062" ,"kw":"MLX90640"},
+ {"a":"/#/en/hat/hat-thermal", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/hat_thermal_01.webp", "p":"THERMAL CAMERA", "sku":"U062" ,"kw":"MLX90640"},
{"a":"/#/en/hat/hat-rs485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/rs485_hat_01.webp", "p":"RS485", "sku":"U067" ,"kw":"AOZ1282CI"},
{"a":"/#/en/hat/hat-adc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/adc_hat_01.webp", "p":"ADC", "sku":"U069" ,"kw":"ADS1100"},
{"a":"/#/en/hat/hat-dac", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/dac_hat_01.webp", "p":"DAC", "sku":"U068" ,"kw":"MCP4725"},
{"a":"/#/en/hat/hat-proto-plus", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/hat_proto_plus_01.webp", "p":"PROTO PLUS", "sku":"U060-B" ,"kw":"PROTOTYPE"},
{"a":"/#/en/hat/hat-yun", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/yun_hat_01.webp", "p":"YUN", "sku":"U070" ,"kw":"SHT20 BMP280 LED NEOPIXEL"},
- {"a":"/#/en/hat/hat-neoflash", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/neoflash_hat_01.webp", "p":"Neoflash", "sku":"U071" ,"kw":"LED NEOPIXEL"},
+ {"a":"/#/en/hat/hat-neoflash", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/neoflash_hat_01.webp", "p":"NeoFlash", "sku":"U071" ,"kw":"LED NEOPIXEL"},
{"a":"/#/en/hat/hat-tof", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/tof_hat_01.webp", "p":"ToF", "sku":"U072" ,"kw":"VL53L0X"},
- {"a":"/#/en/hat/hat-joystick", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/joystick_hat_01.webp", "p":"Joystick", "sku":"U073" ,"kw":"CONTROLER"},
+ {"a":"/#/en/hat/hat-joystick", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/joystick_hat_01.webp", "p":"JOYSTICK", "sku":"U073" ,"kw":"CONTROLER"},
{"a":"/#/en/hat/hat-finger", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/finger_hat_01.webp", "p":"FINGER", "sku":"U074" ,"kw":"FPC1020SC"},
{"a":"/#/en/hat/hat-servo", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/servo_hat_01.webp", "p":"SERVO", "sku":"U075" ,"kw":"180 SERVO"},
{"a":"/#/en/hat/hat-puppyc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/puppyc_01.webp", "p":"PuppyC", "sku":"K035" ,"kw":"SERVO ROBOT"},
@@ -116,23 +116,23 @@
{"a":"/#/en/hat/hat-joyc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/JoyC_01.webp", "p":"JoyC", "sku":"U079" ,"kw":"CONTROLER"},
{"a":"/#/en/hat/hat-18650", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/18650C_01.webp", "p":"18650C", "sku":"U080" ,"kw":"BATTERY"},
{"a":"/#/en/hat/hat-powerc", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/PowerC_01.webp", "p":"PowerC", "sku":"U081" ,"kw":"CHARGE BATTERY"},
- {"a":"/#/en/hat/hat_roverc_pro", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/roverc_pro.webp", "p":"RoverC PRO", "sku":"K036-B" ,"kw":"ROVERC ROBOT"}
+ {"a":"/#/en/hat/hat_roverc_pro", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/hat/roverc_pro.webp", "p":"RoverC.Pro", "sku":"K036-B" ,"kw":"ROVERC ROBOT"}
],
"ATOM-BASE": [
{"a":"/#/en/atom/atomic", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomic_01.webp", "p":"ATOMIC", "sku":"A077" ,"kw":"PROTOTYPE", "category":"ATOM-BASE"},
{"a":"/#/en/atom/tail485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/tail485_01.webp", "p":"Tail485", "sku":"T002" ,"kw":"RS485"},
{"a":"/#/en/atom/tailbat", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/tailbat_01.webp", "p":"TailBat", "sku":"T001" ,"kw":"BATTERY POWER SUPPLY LIPO"},
{"a":"/#/en/atom/atomhub", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_hub_proto.webp", "p":"ATOM HUB PROTO", "sku":"K039" ,"kw":"ATOM HUB PROTO BASE"},
- {"a":"/#/en/atom/atomic_qr", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomic_qr_01.webp", "p":"ATOM QR-CODE Kit", "sku":"K041" ,"kw":"ATOM QR CODE SCAN"},
- {"a":"/#/en/atom/atomicgps", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomicgps_01.webp", "p":"ATOM GPS Kit", "sku":"K043" ,"kw":"ATOM GPS TF"},
- {"a":"/#/en/atom/atomictf", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomictf_01.webp", "p":"ATOM TF-CARD Kit", "sku":"K044" ,"kw":"ATOM TF"},
- {"a":"/#/en/atom/atomic232", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom232.webp", "p":"ATOM RS-232 Kit", "sku":"K046" ,"kw":"ATOM RS232"},
- {"a":"/#/en/atom/atomic485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom485.webp", "p":"ATOM RS-485 Kit", "sku":"K045" ,"kw":"ATOM RS485"},
- {"a":"/#/en/atom/atomhub_switch", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomswitch.webp", "p":"ATOM SWITCH Kit", "sku":"K042" ,"kw":"ATOM SWITCH RS485"},
- {"a":"/#/en/atom/atomhub_switch_d", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_switch_d_01.webp", "p":"ATOM SWITCH-D Kit", "sku":"K042-D" ,"kw":"ATOM SWITCH RS485"},
- {"a":"/#/en/atom/atomfly", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomfly.webp", "p":"ATOM FLY Kit", "sku":"K040" ,"kw":"ATOM FLY"},
- {"a":"/#/en/atom/atom_mate", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_mate.webp", "p":"ATOM MATE", "sku":"A086" ,"kw":"ATOM MATE HAT MOUNT PIN"},
- {"a":"/#/en/atom/atomic_step_motor", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_stepmotor.webp", "p":"ATOM STEPMOTOR Kit", "sku":"K047" ,"kw":"ATOM STEP MOTOR"}
+ {"a":"/#/en/atom/atomic_qr", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomic_qr_01.webp", "p":"ATOM QR-CODE", "sku":"K041" ,"kw":"ATOM QR CODE SCAN"},
+ {"a":"/#/en/atom/atomicgps", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomicgps_01.webp", "p":"ATOM GPS", "sku":"K043" ,"kw":"ATOM GPS TF"},
+ {"a":"/#/en/atom/atomictf", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomictf_01.webp", "p":"ATOM TF-CARD", "sku":"K044" ,"kw":"ATOM TF"},
+ {"a":"/#/en/atom/atomic232", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom232.webp", "p":"ATOM RS-232", "sku":"K046" ,"kw":"ATOM RS232"},
+ {"a":"/#/en/atom/atomic485", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom485.webp", "p":"ATOM RS-485", "sku":"K045" ,"kw":"ATOM RS485"},
+ {"a":"/#/en/atom/atomhub_switch", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomswitch.webp", "p":"ATOM SWITCH", "sku":"K042" ,"kw":"ATOM SWITCH RS485"},
+ {"a":"/#/en/atom/atomhub_switch_d", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_switch_d_01.webp", "p":"ATOM SWITCH-D", "sku":"K042-D" ,"kw":"ATOM SWITCH RS485"},
+ {"a":"/#/en/atom/atomfly", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atomfly.webp", "p":"ATOM-FLY", "sku":"K040" ,"kw":"ATOM FLY"},
+ {"a":"/#/en/atom/atom_mate", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_mate.webp", "p":"ATOM-MATE", "sku":"A086" ,"kw":"ATOM MATE HAT MOUNT PIN"},
+ {"a":"/#/en/atom/atomic_step_motor", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/atom_base/atom_stepmotor.webp", "p":"ATOM STEPMOTOR", "sku":"K047" ,"kw":"ATOM STEP MOTOR"}
]
},
"Modules": {
@@ -155,7 +155,7 @@
{"a":"/#/en/module/nb-iot_plus", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/module/nb_iot_plus.webp", "p":"NB-IoT Plus", "sku":"M030" ,"kw":"M5311GB"}
],
"Driver":[
- {"a":"/#/en/module/servo2", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/module/servo2.webp", "p":"SERVO 2", "sku":"M014-B" ,"kw":"PCA9685 SERVO", "category":"Driver Modules"},
+ {"a":"/#/en/module/servo2", "img":"https://m5stack.oss-cn-shenzhen.aliyuncs.com/image/m5-docs_homepage/module/servo2.webp", "p":"SERVO2", "sku":"M014-B" ,"kw":"PCA9685 SERVO", "category":"Driver Modules"},
{"a":"/#/en/module/stepmotor", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/module/module_stepmotor_01.webp", "p":"STEPMOTOR", "sku":"M012" ,"kw":"GRBL DRV8825"},
{"a":"/#/en/module/servo", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/module/servo_01.webp", "p":"SERVO", "sku":"M014" ,"kw":"SERVO"},
{"a":"/#/en/module/lego_plus", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/module/module_lego_plus_01.webp", "p":"DC MOTOR", "sku":"M021" ,"kw":"DC ENCODER MOTOR"},
diff --git a/docs/en/unit/timercam.md b/docs/en/unit/timercam.md
index 41d76d6c..29b92af0 100644
--- a/docs/en/unit/timercam.md
+++ b/docs/en/unit/timercam.md
@@ -14,7 +14,7 @@ Choose the development platform you want to use, view the corresponding tutorial
## Description
-**Timer Camera** is a camera module based on the ESP32 with 8MB of integrated with PSRAM. The 3 million (3MP) pixel camera (ov3660) has a field of view of 66.5 ° and can shoot a maximum of 1600 x 1200 resolution photos. There is a LED status indicator and reset button on the board. Timer Camera is designed to have ultra-low power consumption. Through the use of the RTC (BM8563), timing, sleep and wake-up functions can be utilized.
+**Timer Camera** is a camera module based on the ESP32 with 8MB of integrated with PSRAM. The 3 million (3MP) pixel camera (ov3660) ,DFOV 66.5 ° and can shoot a maximum of 2048x1536 resolution photos. There is a LED status indicator and reset button on the board. Timer Camera is designed to have ultra-low power consumption. Through the use of the RTC (BM8563), timing, sleep and wake-up functions can be utilized.
In sleep mode, the current consumption of the whole machine is only 2μA. After the scheduled photo taking function(one photo per hour) is turned on, the battery can work continuously for more than one month. The module supports WiFi image transmission and USB port debugging. The bottom HY2.0-4P port output can be connected to other peripherals. In order to facilitate DIY, the battery interface is reserved on the board. Using the M5Burner firmware burning tool, time-cam can be set directly with the Camera-Tool, and TimerCamera data can be processed in UIFlow.
@@ -66,9 +66,9 @@ In sleep mode, the current consumption of the whole machine is only 2μA. After
8-/10-Bit RAW, RGB and YCbCr output, compression. |
- | Maximum image transmission rate |
+ Maximum image transmission rate (OV3660) |
- 2040x1536: 15fps /
+ 2048x1536: 15fps /
1080p: 20fps /
720p: 45fps /
XGA(1024x768) : 45fps /
@@ -77,7 +77,7 @@ In sleep mode, the current consumption of the whole machine is only 2μA. After
|
- | FOV |
+ DFOV |
66.5° |
diff --git a/docs/en/unit/timercam_f.md b/docs/en/unit/timercam_f.md
index 1c2d6731..06bee468 100644
--- a/docs/en/unit/timercam_f.md
+++ b/docs/en/unit/timercam_f.md
@@ -14,7 +14,7 @@ Choose the development platform you want to use, view the corresponding tutorial
## Description
-The **Timer Camera F** is a fisheye camera module based on ESP32-D0WDQ6-V3 with 8M PSRAM and 4M Flash on board. 3.0 megapixel camera (OV3660) with a 120° viewing angle and a maximum resolution of 1600 x 1200 photos can be captured. The camera features an ultra-low-power design, and the internal integrated RTC (BM8563) draws out the IRQ signal, which can be used for sleep and timer wake-up (sleep current down to 2μA). The built-in 270mAh battery provides more than one month of battery life with timed pictures (one per hour) enabled. The module supports WiFi image transfer and USB port debugging, and the HY2.0-4P output on the bottom can be used to expand other peripherals. The on-board LED status indicator and reset button facilitate program development and debugging. In terms of application, M5Stack provides a number of simple and efficient application development methods and interfaces for the TimerCAM series, making it easy for users to use and develop their applications. (including PC/Mobile photo shooting APP, cloud image HTTP interface for timer shooting, cloud AI recognition interface (not online yet), etc.)
+The **Timer Camera F** is a fisheye camera module based on ESP32-D0WDQ6-V3 with 8M PSRAM and 4M Flash on board. 3.0 megapixel camera (OV3660) with DFOV 120° and a maximum resolution of 2048x1536 photos can be captured. The camera features an ultra-low-power design, and the internal integrated RTC (BM8563) draws out the IRQ signal, which can be used for sleep and timer wake-up (sleep current down to 2μA). The built-in 270mAh battery provides more than one month of battery life with timed pictures (one per hour) enabled. The module supports WiFi image transfer and USB port debugging, and the HY2.0-4P output on the bottom can be used to expand other peripherals. The on-board LED status indicator and reset button facilitate program development and debugging. In terms of application, M5Stack provides a number of simple and efficient application development methods and interfaces for the TimerCAM series, making it easy for users to use and develop their applications. (including PC/Mobile photo shooting APP, cloud image HTTP interface for timer shooting, cloud AI recognition interface (not online yet), etc.)
>The low-power power management solution adopted by the Timer Camera series is different from the CORE and StickC devices. When in use, the PWR button is used as a power-on button(long press 2s). If you need to shut down the device, you need to use the software API or press the Reset button on the PCB.
@@ -76,9 +76,9 @@ The **Timer Camera F** is a fisheye camera module based on ESP32-D0WDQ6-V3 with
| 8-/10-Bit RAW, RGB and YCbCr output, compression. |
- | Maximum image transmission rate |
+ Maximum image transmission rate (OV3660) |
- 2040x1536: 15fps /
+ 2048x1536: 15fps /
1080p: 20fps /
720p: 45fps /
XGA(1024x768) : 45fps /
@@ -87,7 +87,7 @@ The **Timer Camera F** is a fisheye camera module based on ESP32-D0WDQ6-V3 with
|
- | FOV |
+ DFOV |
120° |
diff --git a/docs/en/unit/timercam_x.md b/docs/en/unit/timercam_x.md
index 83693c49..fa637271 100644
--- a/docs/en/unit/timercam_x.md
+++ b/docs/en/unit/timercam_x.md
@@ -14,7 +14,7 @@ Choose the development platform you want to use, view the corresponding tutorial
## Description
-**Timer Camera X** is a camera module based on ESP32, integrated with ESP32 chip and 8M-PSRAM. The camera (ov3660) with 3 million pixels can view 66.5 ° and shoot 1600 x at most 1200 resolution photo, built-in 140mAh battery and LED status indicator, featuring ultra-low power consumption design. There is a reset button under the LED. Through RTC (BM8563), timing sleep and wake-up can be realized. The standby current is only 2μA. After timing photo taking function(one photo per hour) is turned on, the battery can work continuously for more than one month. The module supports WiFi image transmission and USB port debugging. The bottom HY2.0-4P port output can be connected to other peripherals. Through M5Burner burning firmware, Timer Camera X can be set directly with Camera-Tool, and Timer Camera X data can be processed in UIFlow.
+**Timer Camera X** is a camera module based on ESP32, integrated with ESP32 chip and 8M-PSRAM. The camera (ov3660) with 3 million pixels , DFOV 66.5 ° and shoot 2048x1536 resolution photo, built-in 140mAh battery and LED status indicator, featuring ultra-low power consumption design. There is a reset button under the LED. Through RTC (BM8563), timing sleep and wake-up can be realized. The standby current is only 2μA. After timing photo taking function(one photo per hour) is turned on, the battery can work continuously for more than one month. The module supports WiFi image transmission and USB port debugging. The bottom HY2.0-4P port output can be connected to other peripherals. Through M5Burner burning firmware, Timer Camera X can be set directly with Camera-Tool, and Timer Camera X data can be processed in UIFlow.
>The low-power power management solution adopted by the Timer Camera series is different from the CORE and StickC devices. When in use, the PWR button is used as a power-on button(long press 2s). If you need to shut down the device, you need to use the software API or press the Reset button on the PCB.
@@ -68,9 +68,9 @@ Choose the development platform you want to use, view the corresponding tutorial
| 8-/10-Bit RAW, RGB and YCbCr output, compression. |
- | Maximum image transmission rate |
+ Maximum image transmission rate (OV3660) |
- 2040x1536: 15fps /
+ 2048x1536: 15fps /
1080p: 20fps /
720p: 45fps /
XGA(1024x768) : 45fps /
@@ -79,7 +79,7 @@ Choose the development platform you want to use, view the corresponding tutorial
|
- | FOV |
+ DFOV |
66.5° |
diff --git a/docs/en/unit/uwb.md b/docs/en/unit/uwb.md
index 80d59d70..2ce37b13 100644
--- a/docs/en/unit/uwb.md
+++ b/docs/en/unit/uwb.md
@@ -107,7 +107,7 @@ EasyLoader is a concise and fast program writer, which has a built-in case progr
diff --git a/docs/zh_CN/atom/atom_hdriver.md b/docs/zh_CN/atom/atom_hdriver.md
new file mode 100644
index 00000000..3c0bc486
--- /dev/null
+++ b/docs/zh_CN/atom/atom_hdriver.md
@@ -0,0 +1,59 @@
+# ATOM HDriver
+
+SKU:K039
+
+## 描述
+
+**ATOM HDriver** 是一款适配ATOM控制器的`H桥`电机驱动器。内置DRV8876电机驱动芯片,支持`9-24V/DC电源输入`(内嵌DC/DC电路为整机设备供电,ADC引脚G33直连分压电路可随时监测电源输入情况), 输出电流可达`1.5A`, `峰值2A`, 能够用于直流电机调速与正反转控制。驱动内部集成了N沟道H桥、充电泵稳压器、电流检测和调节、电流比例输出和保护电路(保护功能集成:电源欠压锁定 (UVLO)、充电泵欠压 (CPUV)、输出过流 (OCP) 和器件超温 (TSD), 故障情况并通过`FAULT`引脚指示)。
+
+## 产品特性
+
+- N沟道H桥电机驱动器
+ * 驱动一台双向有刷直流电机
+ * 其他阻性和感性负载
+– DRV8876:700mΩ(高侧+低侧)
+- 高输出电流能力
+ * 实际输出1.5A, 峰值2A
+– H桥控制模式
+- 3.3V逻辑输入
+- 扩频时钟可降低电磁干扰
+- 集成保护功能
+ * 欠压锁定(UVLO)
+ * 电荷泵欠压(CPUV)
+ * 过电流保护(OCP)
+ * 自动重试或锁存输出(IMODE)
+ * 热关机(TSD)
+ * 自动故障恢复
+ * 故障指示器引脚(nFAULT)
+
+## 相关链接
+
+- **Datasheet**
+ - [DRV8876PWPR](https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/docs/datasheet/atombase/atom_hdriver/C575551_DRV8876PWPR_2020-06-01.PDF)
+
+## 管脚映射
+
+
+ | ATOM | G22 | G19 | G23 | G33 |
+ | Hdriver | FAULT | IN1 | IN2 | VIN-1/10 |
+
+
+?>提示:当故障发生时,将触发FAULT(G22)引脚下拉,G33能够获取输入电压的1/10,能够用于检测当前的电源输入情况。
+
+## 案例程序
+
+- [Arduino代码示例](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/AtomBase/AtomFLY)
+
+## 原理图
+
+
+
+
+
diff --git a/docs/zh_CN/atom/atom_mate.md b/docs/zh_CN/atom/atom_mate.md
index e02a694b..56260336 100644
--- a/docs/zh_CN/atom/atom_mate.md
+++ b/docs/zh_CN/atom/atom_mate.md
@@ -103,9 +103,6 @@
var purchase_link = 'https://m5stack.com/collections/all/products/atomic-proto-kit';
-
- var quickstart_link = '';
-
anchor_search(purchase_link);
scrollFunc();
diff --git a/docs/zh_CN/atom/atomic_hdriver.md b/docs/zh_CN/atom/atomic_hdriver.md
deleted file mode 100644
index 75cdadb6..00000000
--- a/docs/zh_CN/atom/atomic_hdriver.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# ATOM HDriver
-
-SKU:K039
-
-
diff --git a/docs/zh_CN/base/w5500PoE.md b/docs/zh_CN/base/w5500PoE.md
index d5c836ed..f0e4d68b 100644
--- a/docs/zh_CN/base/w5500PoE.md
+++ b/docs/zh_CN/base/w5500PoE.md
@@ -154,8 +154,8 @@ HT3.96连接器的 6 个引脚默认悬空,你可以根据需求选择连接RS
MOSI |
CS |
INT |
- RX/A |
- TX/B |
+ RX |
+ TX |
diff --git a/docs/zh_CN/core/m5stickv.md b/docs/zh_CN/core/m5stickv.md
index 9e5b1783..df8c1ebd 100644
--- a/docs/zh_CN/core/m5stickv.md
+++ b/docs/zh_CN/core/m5stickv.md
@@ -67,7 +67,7 @@ M5stickV AI 摄像头具备机器视觉能力,配备OmniVision OV7740图像传
| SRAM |
- 8Mbit |
+ 8MiB |
| Flash |
@@ -283,7 +283,9 @@ M5StickV目前并不能识别所有类型的TF-card(microSD),我们对一些
## 功能描述
+
### KENDRYTE K210
+
Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积电 (TSMC) 超低功耗的 28 纳米先进制程,具有双核 64 位处理器,拥有较好的功耗性能,稳定性与可靠性。该方案力求零门槛开发,可在最短时效部署于用户的产品中,赋予产品人工智能.
- 具备机器视觉能力
- 更好的低功耗视觉处理速度与准确率
@@ -295,6 +297,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
- 3.3V/1.8V 双电压支持,无需电平转换,节约成本
### CPU
+
本芯片搭载基于 RISC-V ISA 的双核心 64 位的高性能低功耗 CPU,具备以下特性:
- 核心数量: 双核处理器
@@ -309,6 +312,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
- 片上 SRAM: 8MiB
### OV7740
+
- 支持输出格式:RAW RGB和YUV
- 支持图像尺寸:VGA,QVGA,CIF或其他更小尺寸
- 支持太阳黑子消除
@@ -332,6 +336,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
- 封装/管芯尺寸: - CSP3:4185μm×4345 μm-COB:4200μm×4360μm
### MAX98357
+
- 单电源工作(2.5V至5.5V)
- 3.2W输出功率:4Ω,5V
- 2.4mA静态电流
@@ -347,6 +352,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
- 喀嗒声抑制电路
### AXP192
+
- 工作电压: 2.9V - 6.3V(AMR:-0.3V~15V)
- 可配置的智能电源选择系统
- 自适应USB或AC适配器输入的电流和电压限制
@@ -355,6 +361,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
### MPU6886
#### 陀螺仪功能
+
- 数字输出X,Y和Z轴角速率传感器(陀螺仪),用户可编程满量程范围为±250 dps,±500 dps,±1000 dps和±2000 dps,集成16- 位ADC
- 数字可编程低通滤波器
- 低功率陀螺仪操作
@@ -363,6 +370,7 @@ Kendryte K210 是集成机器视觉能力的系统级芯片 (SoC)。使用台积
- 自我测试
#### 加速度计功能
+
- 数字输出X,Y和Z轴加速度计,可编程满量程范围为±2g,±4g,±8g和±16g,集成16位ADC
- 用户可编程中断
- 唤醒动作中断,用于应用处理器的低功耗操作
diff --git a/docs/zh_CN/product_list.json b/docs/zh_CN/product_list.json
index 97448974..b4560646 100644
--- a/docs/zh_CN/product_list.json
+++ b/docs/zh_CN/product_list.json
@@ -214,7 +214,8 @@
{"a":"/#/zh_CN/accessory/battery_base", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/accessory/battery_base_01.webp", "p":"M5CameraBattery", "sku":"A068" ,"kw":"BATTERY"}
],
"AI-摄像头": [
- {"a":"/#/zh_CN/unit/unitv", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit-v-01.webp", "p":"UNIT-V", "sku":"U078", "qs":"/#/zh_CN/quick_start/unitv/unitv_quick_start" ,"kw":"K210 CAMERA", "category":"AI-摄像头"},
+ {"a":"/#/zh_CN/unit/unitv", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unit-v-01.webp", "p":"UNIT-V(OV2640)", "sku":"U078", "qs":"/#/zh_CN/quick_start/unitv/unitv_quick_start" ,"kw":"K210 CAMERA OV2640", "category":"AI-摄像头"},
+ {"a":"/#/zh_CN/unit/unitv_ov7740", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/unit/unitv_ov7740.webp", "p":"UNIT-V(OV7740)", "sku":"U078-C", "qs":"/#/zh_CN/quick_start/unitv/unitv_quick_start" ,"kw":"K210 CAMERA OV7740"},
{"a":"/#/zh_CN/core/m5stickv", "img":"https://static-cdn.m5stack.com/image/m5-docs_homepage/core/m5stickv_01.webp", "p":"M5StickV", "sku":"K027" , "qs":"/#/zh_CN/quick_start/m5stickv/m5stickv_quick_start", "kw":"K210 CAMERA AXP192 MPU6886"}
]
},
diff --git a/docs/zh_CN/unit/can.md b/docs/zh_CN/unit/can.md
index 32a11e5b..3bfbc306 100644
--- a/docs/zh_CN/unit/can.md
+++ b/docs/zh_CN/unit/can.md
@@ -119,6 +119,11 @@
| CAN Unit | SCL | SDA | 5V | GND |
+
+ | M5Core(PORT C) | GPIO16 | GPIO17 | 5V | GND |
+ | CAN Unit | RXD | TXD | 5V | GND |
+
+
## 原理图
diff --git a/docs/zh_CN/unit/m5camera_x.md b/docs/zh_CN/unit/m5camera_x.md
index c2a5dd3d..c0c7bc47 100644
--- a/docs/zh_CN/unit/m5camera_x.md
+++ b/docs/zh_CN/unit/m5camera_x.md
@@ -215,11 +215,13 @@
+Last updated: 2020-12-22
+
\ No newline at end of file
From bf7a66073ad16310461e4960e6ef850fb981c2ab Mon Sep 17 00:00:00 2001
From: Gitshaoxiang <1026025056@qq.com>
Date: Thu, 24 Dec 2020 18:52:34 +0800
Subject: [PATCH 10/16] fix some mistake
---
.../atom_base/atom_poe/atom_poe_sch.webp | Bin 0 -> 214624 bytes
docs/en/accessory/cable/grove_cable.md | 4 +-
docs/en/accessory/converter/grove2grove.md | 3 +-
docs/en/accessory/converter/grove_t.md | 8 +-
docs/en/unit/ameter.md | 17 ++--
docs/en/unit/vmeter.md | 19 ++--
docs/zh_CN/accessory/cable/grove_cable.md | 2 +-
docs/zh_CN/accessory/converter/grove2grove.md | 5 +-
docs/zh_CN/accessory/converter/grove_t.md | 2 +-
docs/zh_CN/atom/atom_hdriver.md | 52 +++++++++-
docs/zh_CN/atom/atom_poe.md | 90 ++++++++++++++++++
docs/zh_CN/unit/ameter.md | 16 ++--
docs/zh_CN/unit/vmeter.md | 21 ++--
13 files changed, 194 insertions(+), 45 deletions(-)
create mode 100644 docs/assets/img/product_pics/atom_base/atom_poe/atom_poe_sch.webp
create mode 100644 docs/zh_CN/atom/atom_poe.md
diff --git a/docs/assets/img/product_pics/atom_base/atom_poe/atom_poe_sch.webp b/docs/assets/img/product_pics/atom_base/atom_poe/atom_poe_sch.webp
new file mode 100644
index 0000000000000000000000000000000000000000..0cb6a4eed8ad82832caad49686b73611e924d6fe
GIT binary patch
literal 214624
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