pdf-icon

Hat Joystick

SKU:U073

Description

Hat Joystick is a joystick module specially designed for the M5StickC. It is equipped with an STM32F030F4 main control chip and uses the I2C communication protocol to transmit data with the M5StickC host. This miniature joystick module supports full-range directional deflection and center press, outputting deflection angle data and switch digital signals. With the unified plug-in design of the HAT series, it provides a reliable connection to the M5StickC, delivering more human-machine interaction input in a minimalist way.

Features

  • Built-in STM32F030F4
  • Communication protocol: I2C (address: 0x38)
  • Supports full-range deflection / center button

Includes

  • 1 x Hat Joystick
  • 1 x Double-Sided Tape

Applications

  • Game controller
  • Wireless joystick device

Specifications

Specification Parameter
MCU STM32F030F4P6
Protocol I2C:0x38
Product Size 34.9 x 24.0 x 16.7mm
Product Weight 8.0g
Package Size 136.0 x 92.0 x 17.0mm
Gross Weight 16.0g

Schematics

PinMap

M5StickC G0 G26 3.3V GND
Joystick HAT SDA SCL 3.3V GND

Model Size

Hat Joystick Model Size PDF

Softwares

Arduino

UiFlow1

Protocol

I2C Address: 0x38

Registers:

0x01 Read-only 4 bytes, single-axis value 0 ~ 4096

0: X-axis raw data low 8 bits

1: X-axis raw data high 8 bits

2: Y-axis raw data low 8 bits

3: Y-axis raw data high 8 bits

0x02 Read-only 3 bytes

0: X-axis converted data (-127 ~ 127)

1: Y-axis converted data (-127 ~ 127)

2: 0 or 1 (button press = 0, release = 1)

0x03 Write-only 1 byte

0x00: Normal mode

0x01: Center point calibration

0x02: Maximum value calibration (manually rotate joystick to get max value)

0x03: Save center and max value data to flash, then restore to normal mode

Joystick Calibration Method: First write to I2C register 0x03, then send 0x02, rotate the joystick around up, down, left, and right repeatedly several times, then write 0x03 to register 0x03 to save.

EasyLoader

Easyloader Download Note
Hat Joystick Easyloader download /

Video