Current Product Don't Have Test Firmware
Note: pls, use PC chrome/edge browser, if can't connect, refresh the webpage.
1. Click connect button
2. After connected successfully, pick a firmware
3. Click the burn button
4. After burning successfully, Unplug the device and restart.
STAMP IO is an IO expansion board
based on STM32F030 main controller, using I2C communication interface, providing 8 IO expansion. Each IO supports independent configuration of digital input/output
, ADC
, SERVO control
, RGB LED control
modes. Suitable for multi-channel digital/analog signal acquisition, and lighting/servo control applications.
Specification | Parameters |
---|---|
MCU | STM32F030 |
I2C Address | 0x45(default) |
Number of IO expansions | 8 |
IO Support Mode | Digital I/O, ADC, SERVO control, RGB LED control |
IO Support Input/Output Levels | 3.3V |
Net Weight | 2.5g |
Gross Weight | 4.3g |
Product Size | 15*4.7*16mm |
Package Size | 93*138mm |
MODE CONFING
REG | DESC | LEN | R/W |
---|---|---|---|
0x00 | MODE_CH_1 | 1 BYTE | R/W |
0x01 | MODE_CH_2 | 1 BYTE | R/W |
0x02 | MODE_CH_3 | 1 BYTE | R/W |
0x03 | MODE_CH_4 | 1 BYTE | R/W |
0x04 | MODE_CH_5 | 1 BYTE | R/W |
0x05 | MODE_CH_6 | 1 BYTE | R/W |
0x06 | MODE_CH_7 | 1 BYTE | R/W |
0x07 | MODE_CH_8 | 1 BYTE | R/W |
DIGITAL_INPUT_MODE=0
DIGITAL_OUTPUT_MODE=1
ADC_INPUT_MODE=2
SERVO_CTL_MODE=3
RGB_LED_MODE=4
DIGITAL INPUT/OUTPUT
REG | DESC | LEN | R/W |
---|---|---|---|
0x10 | OUTPUT_CTL_REG_CH_1 | 1 BYTE | W |
0x11 | OUTPUT_CTL_REG_CH_2 | 1 BYTE | W |
0x12 | OUTPUT_CTL_REG_CH_3 | 1 BYTE | W |
0x13 | OUTPUT_CTL_REG_CH_4 | 1 BYTE | W |
0x14 | OUTPUT_CTL_REG_CH_5 | 1 BYTE | W |
0x15 | OUTPUT_CTL_REG_CH_6 | 1 BYTE | W |
0x16 | OUTPUT_CTL_REG_CH_7 | 1 BYTE | W |
0x17 | OUTPUT_CTL_REG_CH_8 | 1 BYTE | W |
0x20 | DIGITAL_INPUT_REG_CH_1 | 1 BYTE | R |
0x21 | DIGITAL_INPUT_REG_CH_2 | 1 BYTE | R |
0x22 | DIGITAL_INPUT_REG_CH_3 | 1 BYTE | R |
0x23 | DIGITAL_INPUT_REG_CH_4 | 1 BYTE | R |
0x24 | DIGITAL_INPUT_REG_CH_5 | 1 BYTE | R |
0x25 | DIGITAL_INPUT_REG_CH_6 | 1 BYTE | R |
0x26 | DIGITAL_INPUT_REG_CH_7 | 1 BYTE | R |
0x27 | DIGITAL_INPUT_REG_CH_8 | 1 BYTE | R |
HIGH:1 / LOW:0
8B ANALOG INPUT
REG | DESC | LEN | R/W |
---|---|---|---|
0x30 | ANALOG_INPUT_8B_REG_CH_1 Value: 0-255 |
1 BYTE | R |
0x31 | ANALOG_INPUT_8B_REG_CH_2 Value: 0-255 |
1 BYTE | R |
0x32 | ANALOG_INPUT_8B_REG_CH_3 Value: 0-255 |
1 BYTE | R |
0x33 | ANALOG_INPUT_8B_REG_CH_4 Value: 0-255 |
1 BYTE | R |
0x34 | ANALOG_INPUT_8B_REG_CH_5 Value: 0-255 |
1 BYTE | R |
0x35 | ANALOG_INPUT_8B_REG_CH_6 Value: 0-255 |
1 BYTE | R |
0x36 | ANALOG_INPUT_8B_REG_CH_7 Value: 0-255 |
1 BYTE | R |
0x37 | ANALOG_INPUT_8B_REG_CH_8 Value: 0-255 |
1 BYTE | R |
12B ANALOG INPUT
REG | DESC | LEN | R/W |
---|---|---|---|
0x40 | ANALOG_INPUT_12B_REG_CH_1 Value: 0-4095 |
2 BYTE | R |
0x42 | ANALOG_INPUT_12B_REG_CH_2 Value: 0-4095 |
2 BYTE | R |
0x44 | ANALOG_INPUT_12B_REG_CH_3 Value: 0-4095 |
2 BYTE | R |
0x46 | ANALOG_INPUT_12B_REG_CH_4 Value: 0-4095 |
2 BYTE | R |
0x48 | ANALOG_INPUT_12B_REG_CH_5 Value: 0-4095 |
2 BYTE | R |
0x4A | ANALOG_INPUT_12B_REG_CH_6 Value: 0-4095 |
2 BYTE | R |
0x4C | ANALOG_INPUT_12B_REG_CH_7 Value: 0-4095 |
2 BYTE | R |
0x4E | ANALOG_INPUT_12B_REG_CH_8 Value: 0-4095 |
2 BYTE | R |
SERVO ANGLE CTL
REG | DESC | LEN | R/W |
---|---|---|---|
0x50 | SERVO_ANGLE_8B_REG_CH_1 Value: 0-180deg |
1 BYTE | R/W |
0x51 | SERVO_ANGLE_8B_REG_CH_2 Value: 0-180deg |
1 BYTE | R/W |
0x52 | SERVO_ANGLE_8B_REG_CH_3 Value: 0-180deg |
1 BYTE | R/W |
0x53 | SERVO_ANGLE_8B_REG_CH_4 Value: 0-180deg |
1 BYTE | R/W |
0x54 | SERVO_ANGLE_8B_REG_CH_5 Value: 0-180deg |
1 BYTE | R/W |
0x55 | SERVO_ANGLE_8B_REG_CH_6 Value: 0-180deg |
1 BYTE | R/W |
0x56 | SERVO_ANGLE_8B_REG_CH_7 Value: 0-180deg |
1 BYTE | R/W |
0x57 | SERVO_ANGLE_8B_REG_CH_8 Value: 0-180deg |
1 BYTE | R/W |
SERVO PULSE CTL
REG | DESC | LEN | R/W |
---|---|---|---|
0x60 | SERVO_PULSE_16B_REG_CH_1 Value: 500-2500us |
2 BYTE | R/W |
0x62 | SERVO_PULSE_16B_REG_CH_2 Value: 500-2500us |
2 BYTE | R/W |
0x64 | SERVO_PULSE_16B_REG_CH_3 Value: 500-2500us |
2 BYTE | R/W |
0x66 | SERVO_PULSE_16B_REG_CH_4 Value: 500-2500us |
2 BYTE | R/W |
0x68 | SERVO_PULSE_16B_REG_CH_5 Value: 500-2500us |
2 BYTE | R/W |
0x6A | SERVO_PULSE_16B_REG_CH_6 Value: 500-2500us |
2 BYTE | R/W |
0x6C | SERVO_PULSE_16B_REG_CH_7 Value: 500-2500us |
2 BYTE | R/W |
0x6E | SERVO_PULSE_16B_REG_CH_8 Value: 500-2500us |
2 BYTE | R/W |
RGB LED CTL
REG | DESC | LEN | R/W |
---|---|---|---|
0x70 | RGB_24B_REG_CH_1:RGB 888 | 3 BYTE | R/W |
0x73 | RGB_24B_REG_CH_2:RGB 888 | 3 BYTE | R/W |
0x76 | RGB_24B_REG_CH_3:RGB 888 | 3 BYTE | R/W |
0x79 | RGB_24B_REG_CH_4:RGB 888 | 3 BYTE | R/W |
0x7C | RGB_24B_REG_CH_5:RGB 888 | 3 BYTE | R/W |
0x7F | RGB_24B_REG_CH_6:RGB 888 | 3 BYTE | R/W |
0x82 | RGB_24B_REG_CH_7:RGB 888 | 3 BYTE | R/W |
0x85 | RGB_24B_REG_CH_8:RGB 888 | 3 BYTE | R/W |
Note: Do not write to the I2C address configuration register repeatedly at high frequency.
CONFIG
REG | DESC | LEN | R/W |
---|---|---|---|
0xFE | FW VERSION | 1 BYTE | R |
0xFF | I2C ADDR CONFIG (warn: Repeated writing may cause partition damage) | 1 BYTE | R/W |
Execute the following statement in Setup() of the Arduino program
When M5Core2 is stacked with other M5 modules, you need to remove the battery base of Core2, which does not support module stacking.
Reason and solution: The power supply current of the port is insufficient, which can cause the device to not enter the download mode normally. You can try to connect a capacitor (>0.1uF) between the RST pin and the GND pin, or when uploading the program, set the G0 Short-circuit to GND, so that G0 can be set to a low level state normally
Add the header file #include <driver/adc.h> and the function adc_power_acquire(); in the Arduino program
The battery life of the controller is affected by various factors such as battery capacity, operating status, and load, so there is no fixed value. Reducing the load and adopting a sleep strategy can effectively increase the battery life.
Support multiple stacks, the total capacity of the batteries in parallel increases, and the voltage remains unchanged. However, since the discharge of each battery is not balanced during use, there is a voltage difference between the batteries, which may cause the battery to charge backwards. .(will lose part of the battery capacity)
ESP32 module currently does not support WiFi in 5G band, only 2.4G.
Confirm whether the TX/RX pin on the TTL side of the pin is correct, try to add two 120Ω terminal resistors at the beginning and end of the device line to reduce signal reflection interference
Click the link below to view the product comparison table
Rotate the lens to adjust the focal length within a certain range
FACE II BOTTOM NOT CORE2 COMPATIBLE
Use esptool to read the flash content of esp32 and export the bin file. Refer to the detailed operation
Restart the Arduino IDE, the computer uses the mobile AP mobile network to download.
Refer to the Github link below, use arduino-esp32fs-plugin for file upload
Check if the COM of the corresponding device is selected and if the M5Burner is the latest version
UIFlow users can switch the Label font to Unicode, Arduino users can use the Chinese font library provided in the M5GFX driver library
Confirm whether the SD card format is FAT32, and no partitions exist.
You can refer to the following link for other ESP32 users to share the case program
STAMP C3U enters program download mode operation: 1. Long press the center button (G9) of STAMP C3U when the power is off. 2. Connect to the computer, after the port is successfully identified, program burning.
By default, USB CDC is not enabled, the serial port output started by C3U will be output through the default pins (G20, G21) of UART0. If you want to output through USB, please use the IDE to output Its USB CDC option is enabled. (Arduino users can enable it through Tools->USB CDC on Boot-Enabled. For IDF users, please refer to the ESP IDF official documentation.)
Refer to the UIFlow documentation of the corresponding device to check whether the device has entered the USB programming mode.
Make sure that the NBIoT used is not locked. Frequent device replacement or after activating the IoT card, using traffic in different places may cause the card to be locked. If the above situation occurs, please contact the IoT card supplier. If you are using the IoT card matching M5, please contact M5 after-sales through e-commerce or email. (provide the ICCID of the IoT card)
Describe the problems encountered in detail. Screenshots of the programs involved or files can be added as attachments and sent to M5Stack's official after-sales email
M5Stack related resource links: Official Github