PbHub Expander unit is a single-bus board which is controlled using GROVE PortB connector (The black port on the M5Go Base). The expander unit contains 6 ports all in 1 unit. PortB can be used as GPIO and Analog in (the two data lines are connected to GPIO36 and GPIO26 on the ESP32 module).
Similar to the PaHub Unit, the PbHub provides solution for multiple devices control using a single port - PortB. With PbHub each of the IO can be configured as input and output, it has a built-in MEGA328 MCU with a simple driver firmware installed.
Resources | Parameter |
---|---|
Communication protocol | I2C: 0x61(can be modified by resistance A0, A1, A2) |
Net weight | 7g |
Gross weight | 19g |
Product Size | 48*24*12mm |
Package Size | 67*53*12mm |
0-5V
, and the corresponding ADC resolution is 10bit
(1024), so when using an analog signal input with an input range less than 5V, it will not reach the maximum The value is 1024. 1.EasyLoader is a precise and fast program writer which has a built-in functionalities related to the 4-Relay unit. The Easyloader program can burn the firmware to the main controller board by simple easy to follow steps.
2. After downloading the software, double-click to run the application, connect the M5 device to the computer through the data cable, select the port parameters, click "Burn" to start burning. (For M5StickC burning, please Set the baud rate to 750000 or 115200)
3. Currently EasyLoader is only suitable for Windows operating system, Please install the corresponding driver according to the device type.
Please click here to view the CP210X driver installation tutorial
, M5StickC/V/T/ATOM series can be used without driver)
Mega328 ISP footprint definition
The Default I2C address of the unit is 0x61 (which can be changed by using solder resistors A0 ~ A2, the address range is 0x61 ~ 0x68).
A0 | A1 | A2 | I2C Address |
---|---|---|---|
/ | / | / | 0x61 |
Resistors | / | / | 0x62 |
/ | Resistors | / | 0x63 |
Resistors | Resistors | / | 0x64 |
/ | / | Resistors | 0x65 |
Resistors | / | Resistors | 0x66 |
/ | Resistors | Resistors | 0x67 |
Resistors | Resistors | Resistors | 0x68 |
For the complete Arduino code please click here
Extended IO interface
pos digitalRead Read pin digital value
pos digitalWrite value Write a digital value to the pin
analogRead Read analog value
Set pos RGB number to Set the number of specified pins RGB
Set pos num RGB pos color Set the color of the specified serial number RGB
Set pos num RGB begin count color Set the RGB color within the specified range
Set pos RGB brightness Set the specified pin RGB brightness
For the Complete UIFlow example code please click here
state | IO0 Digital Write | IO1 Digital Write | IO0 Analog Write | IO1 Analog Write | IO0 Digital Read | IO1 Digital Read | IO0 Analog Read | reserve | Set RGB LED Num | Set oneLED Color* | Set moreLED Color* | Set Brightness |
---|---|---|---|---|---|---|---|---|---|---|---|---|
r/w | w | w | w | w | r | r | r | r | w | w | w | w |
data length (Byte) | 1 | 1 | 1 | 1 | 1 | 1 | 2 | / | 2 | 5 | 7 | 1 |
ch0 cmd | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 4A | 4B |
ch1 cmd | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 5A | 5B |
ch2 cmd | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 6A | 6B |
ch3 cmd | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 7A | 7B |
ch4 cmd | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 8A | 8B |
ch5 cmd | A0 | A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | AA | AB |