diff --git a/docs/assets/img/product_pics/base/plc_sch.png b/docs/assets/img/product_pics/base/plc_sch.png new file mode 100644 index 00000000..5d6142ea Binary files /dev/null and b/docs/assets/img/product_pics/base/plc_sch.png differ diff --git a/docs/assets/img/product_pics/module/lego_plus_sch.png b/docs/assets/img/product_pics/module/lego_plus_sch.png new file mode 100644 index 00000000..0c056da4 Binary files /dev/null and b/docs/assets/img/product_pics/module/lego_plus_sch.png differ diff --git a/docs/assets/img/product_pics/module/lora_sch.png b/docs/assets/img/product_pics/module/lora_sch.png new file mode 100644 index 00000000..80dcf73d Binary files /dev/null and b/docs/assets/img/product_pics/module/lora_sch.png differ diff --git a/docs/assets/img/product_pics/module/lorawan_sch.png b/docs/assets/img/product_pics/module/lorawan_sch.png new file mode 100644 index 00000000..f7b8aff6 Binary files /dev/null and b/docs/assets/img/product_pics/module/lorawan_sch.png differ diff --git a/docs/assets/img/product_pics/module/module_example/LORA/example_module_lora_02.png b/docs/assets/img/product_pics/module/module_example/LORA/example_module_lora_02.png new file mode 100644 index 00000000..906eeeb8 Binary files /dev/null and b/docs/assets/img/product_pics/module/module_example/LORA/example_module_lora_02.png differ diff --git a/docs/assets/img/product_pics/module/module_lego_plus_02.png b/docs/assets/img/product_pics/module/module_lego_plus_02.png new file mode 100644 index 00000000..6f68e213 Binary files /dev/null and b/docs/assets/img/product_pics/module/module_lego_plus_02.png differ diff --git a/docs/assets/img/product_pics/module/plus_sch.png b/docs/assets/img/product_pics/module/plus_sch.png new file mode 100644 index 00000000..c8489269 Binary files /dev/null and b/docs/assets/img/product_pics/module/plus_sch.png differ diff --git a/docs/assets/img/product_pics/module/servo_sch.png b/docs/assets/img/product_pics/module/servo_sch.png new file mode 100644 index 00000000..e2435db1 Binary files /dev/null and b/docs/assets/img/product_pics/module/servo_sch.png differ diff --git a/docs/assets/img/product_pics/module/sim800_sch.png b/docs/assets/img/product_pics/module/sim800_sch.png new file mode 100644 index 00000000..8aa0bdea Binary files /dev/null and b/docs/assets/img/product_pics/module/sim800_sch.png differ diff --git a/docs/assets/img/product_pics/module/stepmotor_sch.png b/docs/assets/img/product_pics/module/stepmotor_sch.png new file mode 100644 index 00000000..4ee653b1 Binary files /dev/null and b/docs/assets/img/product_pics/module/stepmotor_sch.png differ diff --git a/docs/assets/img/product_pics/unit/angle_sch.png b/docs/assets/img/product_pics/unit/angle_sch.png new file mode 100644 index 00000000..4e9eb9b0 Binary files /dev/null and b/docs/assets/img/product_pics/unit/angle_sch.png differ diff --git a/docs/assets/img/product_pics/unit/dual_button_sch.png b/docs/assets/img/product_pics/unit/dual_button_sch.png new file mode 100644 index 00000000..8ffed455 Binary files /dev/null and b/docs/assets/img/product_pics/unit/dual_button_sch.png differ diff --git a/docs/assets/img/product_pics/unit/gps_sch.png b/docs/assets/img/product_pics/unit/gps_sch.png new file mode 100644 index 00000000..f60112f5 Binary files /dev/null and b/docs/assets/img/product_pics/unit/gps_sch.png differ diff --git a/docs/assets/img/product_pics/unit/joystick_sch.png b/docs/assets/img/product_pics/unit/joystick_sch.png new file mode 100644 index 00000000..91f58f1b Binary files /dev/null and b/docs/assets/img/product_pics/unit/joystick_sch.png differ diff --git a/docs/assets/img/product_pics/unit/makey_sch.png b/docs/assets/img/product_pics/unit/makey_sch.png new file mode 100644 index 00000000..df23db2f Binary files /dev/null and b/docs/assets/img/product_pics/unit/makey_sch.png differ diff --git a/docs/en/base/plc_base.md b/docs/en/base/plc_base.md index acc42030..0b63b3aa 100644 --- a/docs/en/base/plc_base.md +++ b/docs/en/base/plc_base.md @@ -1,3 +1,52 @@ # PLC-Base -## (coming soon...) \ No newline at end of file + + +*** + +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-PLC-Proto-Industrial-Board-Module-Contains-RS485-ACS712-5B-Programmable-Logic-Controller-Relay-with-Magnet/3226069_32874916056.html?spm=2114.12010615.8148356.2.4c5b68a1WZ8sjd)** + +## Description + +The M5Stack PLC Module is a prototye industrial board, including RS484 +adapter and electricity meter module. + +With DC9~24V power input, PLC-Proto motherboard reserved 6Pin or 4Pin +relay output, digital input, communication interface etc. + +## Feature + +- Free DIY +- Programmable Logic Controller +- Individual package weight: 0.1kg (0.22lb.) +- Package size: 5cm \* 5cm \* 5cm (1.97in \* 1.97in \* 1.97in) + +## Include + +- 1x PLC-Proto Broad +- 1x RS485 module +- 1x PLC Plastic Enclosure +- 1x Slide Guide +- 1x Magnet +- 1x 6 Pin 3.96 Pitch Terminal +- 1x 4 Pin 3.96 Pitch Terminal +- 3x Hex Key +- 7x Electrical Terminal +- 1x Sticker + +## Applications + +- Programmable Logic Controller +- Programmable Motion Controller +- Digital Operation Processor +- Strong Electric Controller + +## Related Link + +- **[Offical Video](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)** + +- **[Forum](http://forum.m5stack.com/)** + +## Schematic + + \ No newline at end of file diff --git a/docs/en/module/lora.md b/docs/en/module/lora.md index b7707f1c..b126ea5a 100644 --- a/docs/en/module/lora.md +++ b/docs/en/module/lora.md @@ -1,4 +1,4 @@ -# M5Stack LORA Module +# LORA @@ -54,7 +54,13 @@ account the distance, anti-interference and power consumption ### Arduino IDE -This is point-to-point communication example between two LORA modules. One is transmitter, another is receiver. +This is point-to-point communication example between two LORA modules. Two lora nodes send and receive information to each other. + +* If a lora send message successfully, it'll display blue string. + +* If a lora receive message from another one successfully, it'll display yellow string. + +* If a lora initialize unsuccessfully, it'll display red string. *If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/LORA/Arduino)* @@ -62,49 +68,49 @@ This is point-to-point communication example between two LORA modules. One is tr #include #include -// declaration -static uint32_t counter; +//declaration +String outgoing; // outgoing message +byte msgCount = 0; // count of outgoing messages +byte localAddress = 0xBB; // address of this device +byte destination = 0xFF; // destination to send to -// initialization -// override the default CS, reset, and IRQ pins (optional) -LoRa.setPins(); // default set CS, reset, IRQ pin -M5.Lcd.println("LoRa Sender"); -// frequency in Hz (433E6, 866E6, 915E6) -LoRa.begin(433E6); - -// send data -LoRa.beginPacket(); -LoRa.print("hello "); -LoRa.print(counter);// lora send data -LoRa.endPacket(); -``` - -```arduino -/* - LoRaReceiver.ino -*/ -#include -#include - -// initialization +//initialization M5.begin(); -// override the default CS, reset, and IRQ pins (optional) -LoRa.setPins();// default set CS, reset, IRQ pin -// frequency in Hz (433E6, 866E6, 915E6) -LoRa.begin(433E6); +LoRa.setPins(); // set CS, reset, IRQ pin +LoRa.begin(433E6); // initialize ratio at 915 MHz -// try to parse packet -int packetSize = LoRa.parsePacket(); -if (packetSize) { - // read packet - while (LoRa.available()) { - char ch = (char)LoRa.read(); - M5.Lcd.print(ch); - } - // print RSSI of packet - M5.Lcd.print("\" with RSSI "); - M5.Lcd.println(LoRa.packetRssi()); +//send message +void sendMessage(String outgoing) { + LoRa.beginPacket(); // start packet + LoRa.write(destination); // add destination address + LoRa.write(localAddress); // add sender address + LoRa.write(msgCount); // add message ID + LoRa.write(outgoing.length()); // add payload length + LoRa.print(outgoing); // add payload + LoRa.endPacket(); // finish packet and send it + msgCount++; // increment message ID } + +//receive message +void onReceive(int packetSize) { + if (packetSize == 0) return; // if there's no packet, return + int recipient = LoRa.read(); // recipient address + byte sender = LoRa.read(); // sender address + byte incomingMsgId = LoRa.read(); // incoming msg ID + byte incomingLength = LoRa.read(); // incoming msg length + + String incoming = ""; + + while (LoRa.available()) { + incoming += (char)LoRa.read(); + } +} + +onReceive(LoRa.parsePacket()); ``` - \ No newline at end of file + + +## Schematic + + \ No newline at end of file diff --git a/docs/en/module/lorawan.md b/docs/en/module/lorawan.md index 935d61b5..d33587b8 100644 --- a/docs/en/module/lorawan.md +++ b/docs/en/module/lorawan.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-LoRaWAN-Module-433-470Mhz-868-915MHz-with-Internal-Antenna-and-MCX-External-Antenna-Port/3226069_32953098569.html?spm=a2g1y.12024536.productList_5885011.pic_2)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-LoRaWAN-Module-433-470Mhz-868-915MHz-with-Internal-Antenna-and-MCX-External-Antenna-Port/3226069_32953098569.html?spm=a2g1y.12024536.productList_5885011.pic_2)** ## Description @@ -132,6 +130,6 @@ void loop() { } ``` - +## Schematic - \ No newline at end of file + diff --git a/docs/en/module/plus.md b/docs/en/module/plus.md index 82beffa4..25056a90 100644 --- a/docs/en/module/plus.md +++ b/docs/en/module/plus.md @@ -1,12 +1,10 @@ -# M5Stack PLUS +# PLUS *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-PLUS-Module-Encoder-Module-with-MEGA328P-500mAh-Battery-ISP-IR-Transmitter-UART-GPIO/3226069_32949278724.html?spm=a2g1x.12024536.productList_5885013.pic_1)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-PLUS-Module-Encoder-Module-with-MEGA328P-500mAh-Battery-ISP-IR-Transmitter-UART-GPIO/3226069_32949278724.html?spm=a2g1x.12024536.productList_5885013.pic_1)** ## Description @@ -33,7 +31,7 @@ This a enhanced module including battery(500mAh), gear potentiometer, IR transmi ## Example -### 1. Arduino IDE +### Arduino IDE *The below code `plus_read_encoder.ino` is incomplete(just for usage). If you want the complete code, please click [here](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/PLUS/Arduino).* @@ -70,4 +68,8 @@ while(Wire.available()) { press = 1;//encoder was releaed } } -``` \ No newline at end of file +``` + +## Schematic + + \ No newline at end of file diff --git a/docs/en/module/servo.md b/docs/en/module/servo.md index f90a43c2..48e4d461 100644 --- a/docs/en/module/servo.md +++ b/docs/en/module/servo.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-SERVO-Module-Board-12-Channels-Servo-Controller-with-MEGA328-Inside-Power-Adapter-6-24V/3226069_32951356502.html?spm=a2g1y.12024536.productList_5885011.pic_0)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-SERVO-Module-Board-12-Channels-Servo-Controller-with-MEGA328-Inside-Power-Adapter-6-24V/3226069_32951356502.html?spm=a2g1y.12024536.productList_5885011.pic_0)** ## Description @@ -67,4 +65,6 @@ Wire.write(angle);//0-180° Wire.endTransmission(); ``` - \ No newline at end of file +## Schematic + + \ No newline at end of file diff --git a/docs/en/module/sim800.md b/docs/en/module/sim800.md index 9d7bac5a..9910ca4b 100644 --- a/docs/en/module/sim800.md +++ b/docs/en/module/sim800.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-In-Stock-GSM-Module-SIM800L-Stackable-IoT-Development-Board-for-Arduino-ESP32-with-MIC/3226069_32843211923.html?spm=2114.12010615.8148356.20.25e96be7xE1y22.html)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-In-Stock-GSM-Module-SIM800L-Stackable-IoT-Development-Board-for-Arduino-ESP32-with-MIC/3226069_32843211923.html?spm=2114.12010615.8148356.20.25e96be7xE1y22.html)** ## Description @@ -78,4 +76,6 @@ Serial2.print("AT+TEST=RFCFG,472.3,8,250,8,8,20"); Serial2.print("AT+TEST=TXLRPKT,"00 00 01 00 00 AF 80 07 02 00 00 39""); ``` --> - \ No newline at end of file +## Schematic + + \ No newline at end of file diff --git a/docs/en/module/stepmotor.md b/docs/en/module/stepmotor.md index 12f359e8..f8f9d40f 100644 --- a/docs/en/module/stepmotor.md +++ b/docs/en/module/stepmotor.md @@ -6,9 +6,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-Stepmotor-Module-for-Arduino-ESP32-GRBL-12C-Step-Motor-MEGA328P-similar-as-12V/3226069_32889109142.html?spm=2114.12010612.8148356.17.50511b9b5ViNuz)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      :electric_plug:**[Schematic](#Schematic)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-Stepmotor-Module-for-Arduino-ESP32-GRBL-12C-Step-Motor-MEGA328P-similar-as-12V/3226069_32889109142.html?spm=2114.12010612.8148356.17.50511b9b5ViNuz)** ## Description @@ -83,4 +81,6 @@ while (Serial.available() > 0) { - \ No newline at end of file +## Schematic + + \ No newline at end of file diff --git a/docs/en/unit/adc.md b/docs/en/unit/adc.md index 24008b43..23b5941b 100644 --- a/docs/en/unit/adc.md +++ b/docs/en/unit/adc.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-ADC-Unit-16-Bit-I2C-GROVE-ADS1100-Module-0V-to-12V-analog-to-digital/3226069_32946953374.html?spm=a2g1x.12024536.productList_5885013.pic_7)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       :electric_plug:**[Schematic](#Schematic)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-ADC-Unit-16-Bit-I2C-GROVE-ADS1100-Module-0V-to-12V-analog-to-digital/3226069_32946953374.html?spm=a2g1x.12024536.productList_5885013.pic_7)** ## Description diff --git a/docs/en/unit/angle.md b/docs/en/unit/angle.md index 1b7735f1..8de5a88e 100644 --- a/docs/en/unit/angle.md +++ b/docs/en/unit/angle.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-Mini-Angle-Unit-Potentiometer-Inside-Resistance-Adjustable-GPIO-GROVE-Co-n-nec-to-r/3226069_32931834705.html?spm=a2g1y.12024536.productList_5885013.subject_18)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       :electric_plug:**[Schematic](#Schematic)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-Mini-Angle-Unit-Potentiometer-Inside-Resistance-Adjustable-GPIO-GROVE-Co-n-nec-to-r/3226069_32931834705.html?spm=a2g1y.12024536.productList_5885013.subject_18)** ## Description @@ -53,9 +51,9 @@ cur_sensorValue = analogRead(sensorPin); - +## Schematic - + ### PinMap diff --git a/docs/en/unit/dual_button.md b/docs/en/unit/dual_button.md index 380e3ab3..17050a1d 100644 --- a/docs/en/unit/dual_button.md +++ b/docs/en/unit/dual_button.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-New-Mini-Dual-Button-Unit-Mini-with-GROVE-Port-Cable-Connector-Compatible-with-FIRE/3226069_32923126250.html?spm=a2g1x.12024536.productList_2187621.9)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       :electric_plug:**[Schematic](#Schematic)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-New-Mini-Dual-Button-Unit-Mini-with-GROVE-Port-Cable-Connector-Compatible-with-FIRE/3226069_32923126250.html?spm=a2g1x.12024536.productList_2187621.9)** ## Description @@ -55,9 +53,9 @@ M5.update(); - +## Schematic - + ### PinMap diff --git a/docs/en/unit/esp32cam.md b/docs/en/unit/esp32cam.md index 65cca802..f0185745 100644 --- a/docs/en/unit/esp32cam.md +++ b/docs/en/unit/esp32cam.md @@ -31,7 +31,7 @@ Because the module can generate WIFI hotspot AP, So you can use your mobile phon - ESP32 specifications + Dual-core Tensilica LX6 microprocessor + Up to 240MHz clock frequency - + **512K internal SRAM** + + **512KB internal SRAM** + **4MB Flash memory** + Integrated 802.11 BGN WiFi transceiver + Integrated dual-mode Bluetooth (classic and BLE) diff --git a/docs/en/unit/gps.md b/docs/en/unit/gps.md index 2304cc7a..d619dc03 100644 --- a/docs/en/unit/gps.md +++ b/docs/en/unit/gps.md @@ -87,9 +87,9 @@ $GNZDA,,,,,,*56 $GPTXT,01,01,01,ANTENNA OPEN*25 ``` - + ### PinMap diff --git a/docs/en/unit/joystick.md b/docs/en/unit/joystick.md index c28760de..15ed00cb 100644 --- a/docs/en/unit/joystick.md +++ b/docs/en/unit/joystick.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**      🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-New-Joystick-Unit-MEGA328P-I2C-Grove-Connector-Compatible-X-Y-Axis-Button-for-ESP32/3226069_32921785624.html?spm=a2g1x.12024536.productList_2187621.10)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       :electric_plug:**[Schematic](#Schematic)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-New-Joystick-Unit-MEGA328P-I2C-Grove-Connector-Compatible-X-Y-Axis-Button-for-ESP32/3226069_32921785624.html?spm=a2g1x.12024536.productList_2187621.10)** ## Description @@ -68,9 +66,9 @@ if (Wire.available()) { - +## Schematic - + ### PinMap diff --git a/docs/en/unit/m5camera.md b/docs/en/unit/m5camera.md index 7ebfa9f7..df36d1df 100644 --- a/docs/en/unit/m5camera.md +++ b/docs/en/unit/m5camera.md @@ -26,19 +26,19 @@ The M5Camera equips the ESP32 with everything necessary to program, run and deve - ESP32 specifications + Dual-core Tensilica LX6 microprocessor + Up to 240MHz clock frequency - + 4MB internal SRAM - + 4MB Flash memory + + **4MB internal SRAM** + + **4MB Flash memory** + Integrated 802.11 BGN WiFi transceiver + Integrated dual-mode Bluetooth (classic and BLE) + Hardware accelerated encryption (AES, SHA2, ECC, RSA-4096) -- CP2104 USB TTL +- CP2104 USB-to-TTL convertor - OV2640 sensor - Output Formats(8-bit): + YUV(422/420)/YCbCr422 + RGB565/555 + 8-bit compressed data + 8-/10-bit Raw RGB data - - Maximum Image Transfer Rate + - Maximum Image Transfer Rate according to specific format + UXGA/SXGA: 15fps + SVGA: 30fps + CIF: 60fps diff --git a/docs/en/unit/makey.md b/docs/en/unit/makey.md index 8f5015b5..90d41167 100644 --- a/docs/en/unit/makey.md +++ b/docs/en/unit/makey.md @@ -4,9 +4,7 @@ *** -:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-Makey-Unit-MEGA328P-Inside-16Key-Fruit-Paino-with-NEO-Pixel-and-BUZZER-for-ESP32/3226069_32924883456.html?spm=a2g1y.12024536.productList_5885013.subject_23)** - - +:memo:**[Description](#Description)**      :octocat:**[Example](#Example)**       :electric_plug:**[Schematic](#Schematic)**       🛒**[Purchase](https://www.aliexpress.com/store/product/M5Stack-Official-Makey-Unit-MEGA328P-Inside-16Key-Fruit-Paino-with-NEO-Pixel-and-BUZZER-for-ESP32/3226069_32924883456.html?spm=a2g1y.12024536.productList_5885013.subject_23)** ## Description @@ -79,9 +77,9 @@ while (Wire.available()) { - + ### PinMap diff --git a/docs/en/unit/rfid.md b/docs/en/unit/rfid.md index 8179c60f..c8b7a20c 100644 --- a/docs/en/unit/rfid.md +++ b/docs/en/unit/rfid.md @@ -14,12 +14,12 @@ The Unit is connected to the M5Core's GROVE A interface via the GROVE line and c ## Feature -- IIC data rate: 400 ~ 3400Kbit/s -- Supported protocol: ISO14443A, MIFARE and NTAG -- Operate temperature: -20℃-85℃ -- How long data be saved for: > 10 years -- GROVE interface, support [Arduino](http://www.arduino.cc) -- Two Lego installation holes +- I2C data rate: Fast mode: up to 400 Kbit/s; High-speed mode: up to 3400 Kbit/s +- Supported protocol: ISO14443A, MIFARE and NTAG +- Operate temperature: -20℃-85℃ +- How long data be saved for: > 10 years +- GROVE interface, support [Arduino](http://www.arduino.cc) +- Two Lego installation holes ## Related Link diff --git a/docs/en/unit/tof.md b/docs/en/unit/tof.md index 02f532cb..ed02b665 100644 --- a/docs/en/unit/tof.md +++ b/docs/en/unit/tof.md @@ -8,7 +8,7 @@ ## Description -**TOF** is a unit that can detect distance using a newest "Time-to-Flight" sensor using laser light. It is higher precision than most distance sensors. The unit comunicates with M5Core with I2C. +**TOF** is a unit that can detect distance using a newest "Time-of-Flight" sensor using laser light. It is higher precision than most distance sensors. The unit comunicates with M5Core with I2C. The unit communicates with m5core through GROVE A(IIC). And the IIC address is 0x29. diff --git a/docs/ja/base/plc_base.md b/docs/ja/base/plc_base.md index aaa314cf..79eadb9d 100644 --- a/docs/ja/base/plc_base.md +++ b/docs/ja/base/plc_base.md @@ -61,3 +61,7 @@ DC9V-24V入力、4ピンまたは6ピンのリレー出力、デジタル入力 - [PLC ベース 購入(スイッチサイエンス)](https://www.switch-science.com/catalog/3992/) - [PLC ベース 購入(AliExpress)](https://www.aliexpress.com/store/product/M5Stack-plc-rs485-ACS712-5B-dinrail/3226069_32874916056.html) + +## 回路図 + + \ No newline at end of file diff --git a/docs/ja/module/lego_plus.md b/docs/ja/module/lego_plus.md index 8269f05b..e2b6cf55 100644 --- a/docs/ja/module/lego_plus.md +++ b/docs/ja/module/lego_plus.md @@ -1,10 +1,10 @@ # LEGO+ モジュール - + *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-MEGA328-4-DC-10-DC-I2C/3226069_32961587834.html)** +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-MEGA328-4-DC-10-DC-I2C/3226069_32961587834.html)** ## 概要 @@ -37,6 +37,6 @@ - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/module/lora.md b/docs/ja/module/lora.md index beb1bd35..e3522b83 100644 --- a/docs/ja/module/lora.md +++ b/docs/ja/module/lora.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-Stock-Offer-LoRa-Module-for-ESP32-DIY-Development-Kit-Wireless-433MHz-Built-in-Antenna/3226069_32839736315.html?spm=2114.12010615.8148356.22.25e96be7xE1y22.html)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-Stock-Offer-LoRa-Module-for-ESP32-DIY-Development-Kit-Wireless-433MHz-Built-in-Antenna/3226069_32839736315.html?spm=2114.12010615.8148356.22.25e96be7xE1y22.html)** ## 概要 @@ -47,12 +45,57 @@ LoRa™は少ない消費電力で広いエリアをカバーする無線通信 digitalWrite(5,HIGH); m5.begin(); ``` - +//declaration +String outgoing; // outgoing message +byte msgCount = 0; // count of outgoing messages +byte localAddress = 0xBB; // address of this device +byte destination = 0xFF; // destination to send to - +//initialization +M5.begin(); +LoRa.setPins(); // set CS, reset, IRQ pin +LoRa.begin(433E6); // initialize ratio at 915 MHz + +//send message +void sendMessage(String outgoing) { + LoRa.beginPacket(); // start packet + LoRa.write(destination); // add destination address + LoRa.write(localAddress); // add sender address + LoRa.write(msgCount); // add message ID + LoRa.write(outgoing.length()); // add payload length + LoRa.print(outgoing); // add payload + LoRa.endPacket(); // finish packet and send it + msgCount++; // increment message ID +} + +//receive message +void onReceive(int packetSize) { + if (packetSize == 0) return; // if there's no packet, return + int recipient = LoRa.read(); // recipient address + byte sender = LoRa.read(); // sender address + byte incomingMsgId = LoRa.read(); // incoming msg ID + byte incomingLength = LoRa.read(); // incoming msg length + + String incoming = ""; + + while (LoRa.available()) { + incoming += (char)LoRa.read(); + } +} + +onReceive(LoRa.parsePacket()); +``` + + + +## 回路図 + + diff --git a/docs/ja/module/lorawan.md b/docs/ja/module/lorawan.md index 81696079..1acce23d 100644 --- a/docs/ja/module/lorawan.md +++ b/docs/ja/module/lorawan.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-LoRaWAN-Module-433-470Mhz-868-915MHz-with-Internal-Antenna-and-MCX-External-Antenna-Port/3226069_32953098569.html?spm=a2g1y.12024536.productList_5885011.pic_2)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-LoRaWAN-Module-433-470Mhz-868-915MHz-with-Internal-Antenna-and-MCX-External-Antenna-Port/3226069_32953098569.html?spm=a2g1y.12024536.productList_5885011.pic_2)** ## 概要 @@ -130,6 +128,6 @@ void loop() { } ``` - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/module/plus.md b/docs/ja/module/plus.md index 8a693546..c25518d2 100644 --- a/docs/ja/module/plus.md +++ b/docs/ja/module/plus.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-PLUS-Module-Encoder-Module-with-MEGA328P-500mAh-Battery-ISP-IR-Transmitter-UART-GPIO/3226069_32949278724.html?spm=a2g1x.12024536.productList_5885013.pic_1)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-PLUS-Module-Encoder-Module-with-MEGA328P-500mAh-Battery-ISP-IR-Transmitter-UART-GPIO/3226069_32949278724.html?spm=a2g1x.12024536.productList_5885013.pic_1)** ## 概要 @@ -74,6 +72,6 @@ while(Wire.available()) { } ``` - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/module/servo.md b/docs/ja/module/servo.md index c9e2f424..8d3b5e58 100644 --- a/docs/ja/module/servo.md +++ b/docs/ja/module/servo.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-SERVO-Module-Board-12-Channels-Servo-Controller-with-MEGA328-Inside-Power-Adapter-6-24V/3226069_32951356502.html?spm=a2g1y.12024536.productList_5885011.pic_0)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-SERVO-Module-Board-12-Channels-Servo-Controller-with-MEGA328-Inside-Power-Adapter-6-24V/3226069_32951356502.html?spm=a2g1y.12024536.productList_5885011.pic_0)** ## 概要 @@ -94,6 +92,6 @@ void loop() { } ``` - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/module/sim800.md b/docs/ja/module/sim800.md index ee2eb03b..dce5e383 100644 --- a/docs/ja/module/sim800.md +++ b/docs/ja/module/sim800.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-In-Stock-GSM-Module-SIM800L-Stackable-IoT-Development-Board-for-Arduino-ESP32-with-MIC/3226069_32843211923.html?spm=2114.12010615.8148356.20.25e96be7xE1y22.html)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-In-Stock-GSM-Module-SIM800L-Stackable-IoT-Development-Board-for-Arduino-ESP32-with-MIC/3226069_32843211923.html?spm=2114.12010615.8148356.20.25e96be7xE1y22.html)** ## 概要 @@ -63,6 +61,6 @@ M5Stackシリーズのコアを使用し、Blockly、Arduino、MicroPythonでプ ### 2. UIFlow --> - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/module/stepmotor.md b/docs/ja/module/stepmotor.md index c8729038..f435fdd7 100644 --- a/docs/ja/module/stepmotor.md +++ b/docs/ja/module/stepmotor.md @@ -6,9 +6,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-Stepmotor-Module-for-Arduino-ESP32-GRBL-12C-Step-Motor-MEGA328P-similar-as-12V/3226069_32889109142.html?spm=2114.12010612.8148356.17.50511b9b5ViNuz)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-Stepmotor-Module-for-Arduino-ESP32-GRBL-12C-Step-Motor-MEGA328P-similar-as-12V/3226069_32889109142.html?spm=2114.12010612.8148356.17.50511b9b5ViNuz)** ## 概要 @@ -83,6 +81,6 @@ while (Serial.available() > 0) { - +## 回路図 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/ja/unit/angle.md b/docs/ja/unit/angle.md index eed0b4c2..df8afc38 100644 --- a/docs/ja/unit/angle.md +++ b/docs/ja/unit/angle.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](#購入リンク)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**       :electric_plug:**[回路図](#回路図)**       🛒**[購入リンク](#購入リンク)** ## 概要 @@ -46,9 +44,9 @@ cur_sensorValue = analogRead(sensorPin); - + ### ピンマッピング diff --git a/docs/ja/unit/dual_button.md b/docs/ja/unit/dual_button.md index ec3bf00b..f9a85ea3 100644 --- a/docs/ja/unit/dual_button.md +++ b/docs/ja/unit/dual_button.md @@ -4,7 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](#購入リンク)** +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](#購入リンク)** ## 概要 @@ -47,9 +47,9 @@ M5.update(); - +## 回路図 - + ### ピンマッピング diff --git a/docs/ja/unit/esp32cam.md b/docs/ja/unit/esp32cam.md index dc422c7a..86de7ea2 100644 --- a/docs/ja/unit/esp32cam.md +++ b/docs/ja/unit/esp32cam.md @@ -15,8 +15,8 @@ - ESP32 スペック - デュアルコア Tensilica LX6 マイクロプロセッサ - 最大クロック 240MHz - - 520KB SRAM - - 4MB Flash メモリ + - **520KB SRAM** + - **4MB Flash メモリ** - 802.11 b/g/n Wi-Fi - デュアルモード Bluetooth (classic and BLE) - ハードウェアアクセラレーションによる暗号化 (AES, SHA2, ECC, RSA-4096) diff --git a/docs/ja/unit/joystick.md b/docs/ja/unit/joystick.md index 66b2314e..5f25278e 100644 --- a/docs/ja/unit/joystick.md +++ b/docs/ja/unit/joystick.md @@ -4,9 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-New-Joystick-Unit-MEGA328P-I2C-Grove-Connector-Compatible-X-Y-Axis-Button-for-ESP32/3226069_32921785624.html?spm=a2g1x.12024536.productList_2187621.10)** - - +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**       :electric_plug:**[回路図](#回路図)**       🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-New-Joystick-Unit-MEGA328P-I2C-Grove-Connector-Compatible-X-Y-Axis-Button-for-ESP32/3226069_32921785624.html?spm=a2g1x.12024536.productList_2187621.10)** ## 概要 @@ -56,9 +54,9 @@ if (Wire.available()) { - +## 回路図 - + ### ピンマップ diff --git a/docs/ja/unit/m5camera.md b/docs/ja/unit/m5camera.md index 410313df..990759bf 100644 --- a/docs/ja/unit/m5camera.md +++ b/docs/ja/unit/m5camera.md @@ -16,8 +16,8 @@ - デュアルコア Tensilica LX6 マイクロプロセッサ - 最大クロック 240MHz - 520KB SRAM - - 4MB pSRAM - - 4MB Flash メモリ + - **4MB pSRAM** + - **4MB Flash メモリ** - 802.11 b/g/n Wi-Fi - デュアルモード Bluetooth (classic and BLE) - ハードウェアアクセラレーションによる暗号化 (AES, SHA2, ECC, RSA-4096) @@ -53,5 +53,3 @@ - **[フォーラム](http://forum.m5stack.com/)** - **データシート** - [ESP32](https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_cn.pdf) - [OV2640](https://www.uctronics.com/download/cam_module/OV2640DS.pdf) - - diff --git a/docs/ja/unit/makey.md b/docs/ja/unit/makey.md index 99129441..1cfb8b01 100644 --- a/docs/ja/unit/makey.md +++ b/docs/ja/unit/makey.md @@ -4,7 +4,7 @@ *** -:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-Makey-Unit-MEGA328P-Inside-16Key-Fruit-Paino-with-NEO-Pixel-and-BUZZER-for-ESP32/3226069_32924883456.html?spm=a2g1y.12024536.productList_5885013.subject_23)** +:memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-Official-Makey-Unit-MEGA328P-Inside-16Key-Fruit-Paino-with-NEO-Pixel-and-BUZZER-for-ESP32/3226069_32924883456.html?spm=a2g1y.12024536.productList_5885013.subject_23)** ## 概要 @@ -62,9 +62,9 @@ while (Wire.available()) { - + ### ピンマップ diff --git a/docs/ja/unit/tof.md b/docs/ja/unit/tof.md index 789c257a..4c3414a4 100644 --- a/docs/ja/unit/tof.md +++ b/docs/ja/unit/tof.md @@ -8,7 +8,7 @@ ## 概要 -**ToF**ユニットはレーザー光を使った最新の「Time-to-Flight」センサーを使用して距離を検出できるユニットです。 ほとんどの距離センサーよりも高い精度で計測可能です。I2Cで値を取得可能です。 +**ToF**ユニットはレーザー光を使った最新の「Time-of-Flight」センサーを使用して距離を検出できるユニットです。 ほとんどの距離センサーよりも高い精度で計測可能です。I2Cで値を取得可能です。 ## 特徴 diff --git a/docs/zh_CN/README.md b/docs/zh_CN/README.md index f7d3cb9c..19f29d2d 100644 --- a/docs/zh_CN/README.md +++ b/docs/zh_CN/README.md @@ -9,7 +9,7 @@ [![core_basic.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/core_basic_01.png)](zh_CN/core/basic)         [![core_gray.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/core_gray_01.png)](zh_CN/core/gray)         [![product_pic_fire.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/core_fire_01.png)](zh_CN/core/fire) -      基础版M5Core              灰色升级版M5Core              红色升级版M5Core +   @@ -17,7 +17,7 @@ [![minicore_m5stick.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/core_m5stick_01.png)](zh_CN/core/m5stick) -      基础版Stick +   @@ -25,7 +25,7 @@ [![kit_m5go.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/kit_m5go_01.png)](zh_CN/core/m5go_iot_starter_kit)         [![kit_faces.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/core/kit_faces_01.png)](zh_CN/core/face_kit) -M5GO物联网开发套件              FACES套件 + *** @@ -37,7 +37,7 @@ M5GO物联网开发套件              FACES [![module_gps.png](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/module/module_gps_01.png)](zh_CN/module/gps)         [![module_lora.jpg](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/module/module_lora_01.png)](zh_CN/module/lora)         [![module_lorawan.jpg](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/module/module_lorawan_01.png)](zh_CN/module/lorawan)         [![module_sim800.jpg](http://m5-docs.oss-cn-shenzhen.aliyuncs.com/assets/img/product_pics/homepage_picture/module/module_sim800_01.png)](zh_CN/module/sim800) -   GPS定位导航模块                Lora节点模块 +   diff --git a/docs/zh_CN/base/plc_base.md b/docs/zh_CN/base/plc_base.md index 790be11d..0b63b3aa 100644 --- a/docs/zh_CN/base/plc_base.md +++ b/docs/zh_CN/base/plc_base.md @@ -46,3 +46,7 @@ relay output, digital input, communication interface etc. - **[Offical Video](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)** - **[Forum](http://forum.m5stack.com/)** + +## Schematic + + \ No newline at end of file diff --git a/docs/zh_CN/module/lego_plus.md b/docs/zh_CN/module/lego_plus.md index 04549d75..f58a792f 100644 --- a/docs/zh_CN/module/lego_plus.md +++ b/docs/zh_CN/module/lego_plus.md @@ -1,12 +1,10 @@ # LEGO+ - 乐高电机驱动模块 - + *** -:memo:**[描述](#描述)**      :octocat:**[例程](https://github.com/m5stack/M5Stack/tree/master/examples/Modules/GPS)**      🛒**[购买链接](https://www.aliexpress.com/store/product/M5Stack-MEGA328-4-DC-10-DC-I2C/3226069_32961587834.html)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](https://github.com/m5stack/M5Stack/tree/master/examples/Modules/GPS)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://www.aliexpress.com/store/product/M5Stack-MEGA328-4-DC-10-DC-I2C/3226069_32961587834.html)** ## 描述 @@ -43,4 +41,6 @@ - +## 原理图 + + diff --git a/docs/zh_CN/module/lora.md b/docs/zh_CN/module/lora.md index 3c003d14..139ffa3e 100644 --- a/docs/zh_CN/module/lora.md +++ b/docs/zh_CN/module/lora.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.70.6c2275f4nUJEfh&id=559302217850)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.70.6c2275f4nUJEfh&id=559302217850)** ## 描述 @@ -51,7 +49,7 @@ M5Stack LoRa模块适用于长距离通信,结合多个LoRa模块,能组成 ### Arduino IDE -这是两个LORA模块点对点通信的例程,一个作为信号发射节点,一个作为信号接收节点。 +这是两个LORA模块点对点通信的例程,两个节点相互发送和接收信息。成功发送出信息,则屏幕上回答应蓝色字符串;成功接收对方的信息,则在屏幕上打印黄色字符串;如果Lora初始化失败,则屏幕上打印红色信息。 *以下仅为用法示意,并不完整。如果需要完整例程请点击[这里](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/LORA/Arduino)* @@ -59,51 +57,49 @@ M5Stack LoRa模块适用于长距离通信,结合多个LoRa模块,能组成 #include #include -// declaration -static uint32_t counter; +//declaration +String outgoing; // outgoing message +byte msgCount = 0; // count of outgoing messages +byte localAddress = 0xBB; // address of this device +byte destination = 0xFF; // destination to send to -// initialization -// override the default CS, reset, and IRQ pins (optional) -LoRa.setPins(); // default set CS, reset, IRQ pin -M5.Lcd.println("LoRa Sender"); -// frequency in Hz (433E6, 866E6, 915E6) -LoRa.begin(433E6); - -// send data -LoRa.beginPacket(); -LoRa.print("hello "); -LoRa.print(counter);// lora send data -LoRa.endPacket(); -``` - -```arduino -/* - LoRaReceiver.ino -*/ -#include -#include - -// initialization +//initialization M5.begin(); -// override the default CS, reset, and IRQ pins (optional) -LoRa.setPins();// default set CS, reset, IRQ pin -// frequency in Hz (433E6, 866E6, 915E6) -LoRa.begin(433E6); +LoRa.setPins(); // set CS, reset, IRQ pin +LoRa.begin(433E6); // initialize ratio at 915 MHz -// try to parse packet -int packetSize = LoRa.parsePacket(); -if (packetSize) { - // read packet - while (LoRa.available()) { - char ch = (char)LoRa.read(); - M5.Lcd.print(ch); - } - // print RSSI of packet - M5.Lcd.print("\" with RSSI "); - M5.Lcd.println(LoRa.packetRssi()); +//send message +void sendMessage(String outgoing) { + LoRa.beginPacket(); // start packet + LoRa.write(destination); // add destination address + LoRa.write(localAddress); // add sender address + LoRa.write(msgCount); // add message ID + LoRa.write(outgoing.length()); // add payload length + LoRa.print(outgoing); // add payload + LoRa.endPacket(); // finish packet and send it + msgCount++; // increment message ID } + +//receive message +void onReceive(int packetSize) { + if (packetSize == 0) return; // if there's no packet, return + int recipient = LoRa.read(); // recipient address + byte sender = LoRa.read(); // sender address + byte incomingMsgId = LoRa.read(); // incoming msg ID + byte incomingLength = LoRa.read(); // incoming msg length + + String incoming = ""; + + while (LoRa.available()) { + incoming += (char)LoRa.read(); + } +} + +onReceive(LoRa.parsePacket()); ``` - + - +## 原理图 + + \ No newline at end of file diff --git a/docs/zh_CN/module/lorawan.md b/docs/zh_CN/module/lorawan.md index 497bd3ae..08857cab 100644 --- a/docs/zh_CN/module/lorawan.md +++ b/docs/zh_CN/module/lorawan.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.61.6c2275f4nUJEfh&id=580998112819)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.61.6c2275f4nUJEfh&id=580998112819)** ## 描述 @@ -133,4 +131,6 @@ void loop() { } ``` - \ No newline at end of file +## 原理图 + + \ No newline at end of file diff --git a/docs/zh_CN/module/plus.md b/docs/zh_CN/module/plus.md index e9de63a6..26ef3cd1 100644 --- a/docs/zh_CN/module/plus.md +++ b/docs/zh_CN/module/plus.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.11.6e32425el3pHvc&id=579821616764)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#原理图)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.11.6e32425el3pHvc&id=579821616764)** ## 描述 @@ -72,4 +70,6 @@ while(Wire.available()) { } ``` - +## 原理图 + + \ No newline at end of file diff --git a/docs/zh_CN/module/servo.md b/docs/zh_CN/module/servo.md index cc04ea1e..775972b5 100644 --- a/docs/zh_CN/module/servo.md +++ b/docs/zh_CN/module/servo.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.10.6c6f425e2rHsr9&id=581189197514)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.10.6c6f425e2rHsr9&id=581189197514)** ## 描述 @@ -91,5 +89,6 @@ void loop() { } ``` +## 原理图 - \ No newline at end of file + \ No newline at end of file diff --git a/docs/zh_CN/module/sim800.md b/docs/zh_CN/module/sim800.md index fd57e055..e86e2399 100644 --- a/docs/zh_CN/module/sim800.md +++ b/docs/zh_CN/module/sim800.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.10.1c03425emPA4gi&id=559726007780)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.10.1c03425emPA4gi&id=559726007780)** ## 描述 @@ -73,4 +71,6 @@ Serial2.print("AT+TEST=RFCFG,472.3,8,250,8,8,20"); Serial2.print("AT+TEST=TXLRPKT,"00 00 01 00 00 AF 80 07 02 00 00 39""); ``` --> - \ No newline at end of file +## 原理图 + + \ No newline at end of file diff --git a/docs/zh_CN/module/stepmotor.md b/docs/zh_CN/module/stepmotor.md index cce5cfb4..e88aa7cb 100644 --- a/docs/zh_CN/module/stepmotor.md +++ b/docs/zh_CN/module/stepmotor.md @@ -6,9 +6,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.61.501375f4xEgd84&id=572288296141)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-1172588093.61.501375f4xEgd84&id=572288296141)** ## 描述 @@ -123,4 +121,6 @@ while (Serial.available() > 0) { - +## 原理图 + + \ No newline at end of file diff --git a/docs/zh_CN/unit/adc.md b/docs/zh_CN/unit/adc.md index 94a4549b..d123b260 100644 --- a/docs/zh_CN/unit/adc.md +++ b/docs/zh_CN/unit/adc.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.37.3a93425e5PQbBs&id=580131730176)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.37.3a93425e5PQbBs&id=580131730176)** ## 描述 @@ -14,11 +12,12 @@ ## 特性 -- ADC有16位分辨率,可以设置每秒采样8、16、32、128次以进行A/D转换 -- ADC芯片内部可以产生高达8倍的放大,从而可以采集幅值更小的模拟信号 -- 能测量0~12V的电压输入 +- ADC有16位分辨率,可以设置每秒采样8、16、32、128次以进行A/D转换 +- 内置可编程放大器,从而可以采集幅值更小的模拟信号 + - 放大倍数:1, 2, 4, 或 8 +- 能测量0~12V的电压输入 -- Unit内置两个Lego插件孔,方便与Lego件结合 +- Unit内置两个Lego插件孔,方便与Lego件结合 ## 应用 diff --git a/docs/zh_CN/unit/angle.md b/docs/zh_CN/unit/angle.md index f742f7d4..53a4e261 100644 --- a/docs/zh_CN/unit/angle.md +++ b/docs/zh_CN/unit/angle.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.40.312f425eRDFbqp&id=578201949805)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.40.312f425eRDFbqp&id=578201949805)** ## 描述 @@ -52,9 +50,9 @@ cur_sensorValue = analogRead(sensorPin); - +## 原理图 - + ### 管脚映射 diff --git a/docs/zh_CN/unit/dual_button.md b/docs/zh_CN/unit/dual_button.md index 10e8453b..fe46d168 100644 --- a/docs/zh_CN/unit/dual_button.md +++ b/docs/zh_CN/unit/dual_button.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.58.3a93425e5PQbBs&id=577469112270)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.58.3a93425e5PQbBs&id=577469112270)** ## 描述 @@ -55,9 +53,9 @@ M5.update(); - +## 原理图 - + ### 管脚映射 diff --git a/docs/zh_CN/unit/gps.md b/docs/zh_CN/unit/gps.md index 19af7fbd..674868ac 100644 --- a/docs/zh_CN/unit/gps.md +++ b/docs/zh_CN/unit/gps.md @@ -4,27 +4,32 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.13.51a6425e6lnUwE&id=583664452054)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.13.51a6425e6lnUwE&id=583664452054)** ## 描述 -**GPS**是一款集成车载设备级别的中科微北斗导航AT6558的Unit,芯片性能强悍,能获取准确全球位置信息,支持多种卫星导航系统,同时接受六个卫星导航系统的GNSS信号,并且实现联合定位、导航和授时。接M5Core的GROVE C口,M5Core通过串口与该unit通讯。其中unit还集成了信号放大芯片MAX2659。 +**GPS**是一款集成中科微北斗导航芯片 AT6558 和信号放大芯片 MAX2659 的 Unit。AT6558 是车载设备级别的芯片,性能强悍,支持多种卫星导航系统,同时接收六个卫星导航系统的 GNSS 信号,并且实现联合定位、导航和授时,获得准确的全球位置信息。 + +该 Unit 接 M5Core 的 GROVE C(UART) 口之后,M5Core 通过串口与它通讯。 ## 特性 -- 支持多种卫星导航系统,比如中国的BDS, 美国的GPS, 俄罗斯的GLONASS等 -- AT6558 - - 15mA超低功耗 - - 集成射频、基带、flash - - 工作温度:-40~85℃ +- 功能规范 + - 定位精度:2.5米(CEP50,开阔地) + - 支持BDS/GPS/GLONASS卫星导航系统的单系统定位,或者任意组合的多系统联合定位 + - 最大定位更新频率:10Hz + - 支持D-GNSS差分定位 +- 低功耗 + - BDS/GPS双模连续运行:<23mA(@3.3V) + - 待机:<10uA(@3.3V) +- 工作温度:-40~85℃ -- Unit内置两个Lego插件孔,方便与Lego件结合 +- Unit内置两个Lego插件孔,方便与Lego件结合 ## 应用 -- 车载定位 +- 车载、船载定位与导航 +- 高精度授时 - 智能执法定位 ## 相关链接 @@ -33,17 +38,19 @@ - **[官方论坛](http://forum.m5stack.com/)** -- **[数据手册]** - [AT6558](http://www.icofchina.com/d/file/xiazai/2016-12-05/b1be6f481cdf9d773b963ab30a2d11d8.pdf) - [MAX2659](https://datasheets.maximintegrated.com/en/ds/MAX2659.pdf) +- **数据手册** - [AT6558](http://www.icofchina.com/d/file/xiazai/2016-12-05/b1be6f481cdf9d773b963ab30a2d11d8.pdf) - [MAX2659](https://datasheets.maximintegrated.com/en/ds/MAX2659.pdf) - **[TinyGPS++库官网](http://arduiniana.org/libraries/tinygpsplus/)** +- **[AT6558的信息](http://www.icofchina.com/pro/dingwei/2016-07-29/5.html)** + - **[CASIC多模卫星导航接收机协议规范](http://www.icofchina.com/d/file/xiazai/2017-05-02/ea0cdd3d81eeebcc657b5dbca80925ee.pdf)** - **[上位机软件GnssToolKit3(Windows版本)](http://www.icofchina.com/d/file/xiazai/2018-05-23/2b29a8da746eec0ef1dcd9deae895298.zip)** ## 例程 -### 1. Arduino IDE +### Arduino IDE *具体例程`GPSRaw.ino`请点击[这里](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Unit/GPS/Arduino)。* @@ -87,9 +94,9 @@ $GNZDA,,,,,,*56 $GPTXT,01,01,01,ANTENNA OPEN*25 ``` - + ### 管脚映射 diff --git a/docs/zh_CN/unit/heart.md b/docs/zh_CN/unit/heart.md index 13af81aa..586dc07c 100644 --- a/docs/zh_CN/unit/heart.md +++ b/docs/zh_CN/unit/heart.md @@ -8,12 +8,14 @@ ## 描述 -**HEART**是一款能够非侵入式检测血氧和心率的Unit,集成MAX30110模块,其原理是通过红外led灯照射,检测红血球携带氧气和非携带氧气情况数量变化情况,能够得到心率的ADC值,包含两个发光二极管和一个光检测器。unit接入M5Core的GROVE A口之后,只需要将手指紧贴在unit的MAX30110模块上,即可读出生理信息。 +**HEART**是一款集成 MAX30110 模块,能够非侵入式检测血氧和心率的 Unit。 MAX30110 模块包含两个红外发光二极管和一个光检测器,其检测血氧饱和度的原理是通过红外 led 灯照射,检测携带氧气和非携带氧气的红血球数量比例,从而得到血氧含量。 + +该 unit 接入 M5Core 的 GROVE A 口之后,只需要将手指紧贴在 unit 的 MAX30110 模块上,即可读出生理信息。 ## 特性 -- 低噪声 -- 能输出具体的血氧值和心率值 +- 高输入阻抗,低噪声 +- 工作温度范围:-40°C ~ 85°C - Unit内置两个Lego插件孔,方便与Lego件结合 diff --git a/docs/zh_CN/unit/joystick.md b/docs/zh_CN/unit/joystick.md index 8aaa41a6..a1e974c2 100644 --- a/docs/zh_CN/unit/joystick.md +++ b/docs/zh_CN/unit/joystick.md @@ -6,9 +6,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.66.159c425eoqBTTY&id=577874535012)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.66.159c425eoqBTTY&id=577874535012)** ## 描述 @@ -69,9 +67,9 @@ if (Wire.available()) { - +## 原理图 - + ### 管脚映射 diff --git a/docs/zh_CN/unit/m5camera.md b/docs/zh_CN/unit/m5camera.md index 60c92ee6..d41deb95 100644 --- a/docs/zh_CN/unit/m5camera.md +++ b/docs/zh_CN/unit/m5camera.md @@ -13,11 +13,11 @@ ## 描述 -**M5Camera**是一款基于ESP32芯片,集成OV2640摄像头驱动芯片的摄像头模块,并集成了 **including PSRAM**。你可以通过ESP-IDF来编程摄像头功能。 +**M5Camera**是一款基于 ESP32 芯片,集成 OV2640 摄像头驱动芯片的摄像头模块,并集成了 **PSRAM**。你可以通过 ESP-IDF 或 Arduino IDE 来编程摄像头功能。 -同时,M5Camera Unit还预留了9轴陀螺仪(MPU6050)、大气压3合1传感器(BME280)和**数字硅晶麦克风(SPM1423)**的焊接口,如果你需要这些器件,可以焊接到对应位置上。M5Camera Unit还预留了电池接口,如果你需要做可移动的摄像头,那么可以焊接手头的锂电池到对应位置上。 +同时,M5Camera Unit 还预留了9轴陀螺仪 (MPU6050) 、大气压3合1传感器 (BME280) 和**数字硅晶麦克风 (SPM1423)**的焊接口,如果你需要这些器件,可以焊接到对应位置上。M5Camera Unit 还预留了电池接口,如果你需要做可移动的摄像头,那么可以焊接手头的锂电池到对应位置上。 -因为模块可以生成WIFI热点AP,所以可以用手机、PC或其他设备通过WIFI无线获取摄像头图片,也可以通过模块的GROVE接口有线获取摄像头图片。目前可以实现网络摄像头、颜色识别和人脸识别功能。 +因为模块可以生成 WIFI 热点 AP,所以可以用手机、PC 或其他设备通过 WIFI 无线获取摄像头图片,也可以通过模块的 GROVE 接口有线获取摄像头图片。目前可以实现网络摄像头、颜色识别和人脸识别功能。 ## 包含 @@ -27,9 +27,9 @@ ## 特性 -- ESP32模组特性 - + 集成双核Tensilica LX6 - + 高达240MHz的时钟频率 +- ESP32 模组特性 + + 集成双核 Tensilica LX6 + + 高达 240MHz 的时钟频率 + **4MB internal SRAM** + **4MB Flash memory** + 集成802.11 BGN WiFi和双模蓝牙(经典蓝牙和BLE) @@ -39,17 +39,19 @@ - 输出格式(8-bit): + YUV(422/420)/YCbCr422 + RGB565/555 - + 8-bit compressed data - + 8-/10-bit Raw RGB data - - 图片最大传输速率 + + 8位的压缩数据 + + 8至10位的原始数据 + - 图片在不同格式时最大传输速率 + UXGA/SXGA: 15fps + SVGA: 30fps + CIF: 60fps - 扫描模式: Progressive - 摄像头特性 - + CCD尺寸: 1/4inch - + 可视范围: 78 degree + + CCD尺寸: 1/4 寸 + + 可视范围: 78 度 + 最大像素: 200W +- 传感器最大分辨率:1600 * 1200 +- 尺寸:25mm x 24mm - 重量: 5g ## 管脚对比 diff --git a/docs/zh_CN/unit/makey.md b/docs/zh_CN/unit/makey.md index ef42201c..43001107 100644 --- a/docs/zh_CN/unit/makey.md +++ b/docs/zh_CN/unit/makey.md @@ -4,9 +4,7 @@ *** -:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.51.159c425eoqBTTY&id=577636777112)** - - +:memo:**[描述](#描述)**      :octocat:**[例程](#例程)**      :electric_plug:**[原理图](#原理图)**      🛒**[购买链接](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-1172588106.51.159c425eoqBTTY&id=577636777112)** ## 描述 @@ -77,9 +75,9 @@ while (Wire.available()) { - +## 原理图 - + ### 管脚映射 diff --git a/docs/zh_CN/unit/rfid.md b/docs/zh_CN/unit/rfid.md index f850dd26..116fdcd8 100644 --- a/docs/zh_CN/unit/rfid.md +++ b/docs/zh_CN/unit/rfid.md @@ -15,7 +15,7 @@ ## 特性 -- IIC速率400 ~ 3400Kbit/s +- IIC速率:快速模式:最高400Kbit/s;高速模式:最高3400Kbit/s - RC522收发缓冲: 64bytes - 支持的RFID协议: ISO14443A、MIFARE和NTAG - 工作温度: -20℃-85℃ diff --git a/docs/zh_CN/unit/tof.md b/docs/zh_CN/unit/tof.md index e4fc696a..1d32112c 100644 --- a/docs/zh_CN/unit/tof.md +++ b/docs/zh_CN/unit/tof.md @@ -8,7 +8,7 @@ ## 描述 -**ToF**是一款用"Time-to-Flight"传感器(VL53L0X)发出940nm波长的激光来测量距离的Unit,相比其他测距传感器,具有更高的精度,可以直接确定以毫米为单位的目标物体的距离。不到30ms即可提供最长2米的毫米级的绝对距离读值。 +**ToF**是一款用"Time-of-Flight"传感器(VL53L0X)发出940nm波长的激光来测量距离的Unit,相比其他测距传感器,具有更高的精度,可以直接确定以毫米为单位的目标物体的距离。30ms内可以获得毫米级的绝对距离读值(最长测量距离2米)。 该Unit与M5Core通过PORT A(I2C)通信。I2C地址为0x29