Skip to content

Commit

Permalink
shields: Add support for M5Stack-Core2 base shield.
Browse files Browse the repository at this point in the history
M5Stack-Core2 comes with a base shield that is connected to the M5Stack
extention connector. It features a MPU6886 6-axis motion tracker
and a SPM1423 microphone.

Signed-off-by: Martin Kiepfer <m.kiepfer@teleschirm.org>
  • Loading branch information
Martin Kiepfer authored and Martin Kiepfer committed Oct 3, 2023
1 parent f5ee484 commit 95da89a
Show file tree
Hide file tree
Showing 5 changed files with 85 additions and 2 deletions.
5 changes: 5 additions & 0 deletions boards/shields/m5stack_core2_ext/Kconfig.shield
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2023 Martin Kiepfer <mrmarteng@teleschirm.org>
# SPDX-License-Identifier: Apache-2.0

config SHIELD_M5STACK_CORE2_EXT
def_bool $(shields_list_contains,m5stack_core2_ext)
Binary file not shown.
56 changes: 56 additions & 0 deletions boards/shields/m5stack_core2_ext/doc/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
.. _m5stack_core2_ext:

M5Stack-Core2 base shield
####################################

Overview
********

`M5Stack-Core2`_ comes with a base shield that is connected to the M5Stack
extension connector. It features an MPU6886 6-axis motion tracker (6DOF IMU)
and a SPM1423 microphone.

.. figure:: img/m5stack_core2_ext.webp
:align: center
:alt: M5Stack-Core2-EXT
:width: 400 px

M5Stack-Core2-Extension module

.. note::
The SPM1423 microphone functionality is not implemented yet.

Pins Assignments
================

+----------------------+--------------+
| Shield Connector Pin | Function |
+======================+==============+
| 0 | GND |
+----------------------+--------------+
| 11 | 3.3V |
+----------------------+--------------+
| 16 | I2C - intSDA |
+----------------------+--------------+
| 17 | I2C - intSCL |
+----------------------+--------------+

Programming
***********

Set ``-DSHIELD=m5stack_core2_ext`` when you invoke ``west build``.
For example:

.. zephyr-app-commands::
:zephyr-app: samples/sensor/mpu6050
:board: m5stack_core2
:shield: m5stack_core2_ext
:goals: build

References
**********

.. target-notes::

.. _M5Stack-Core2:
https://docs.m5stack.com/en/core/core2
21 changes: 21 additions & 0 deletions boards/shields/m5stack_core2_ext/m5stack_core2_ext.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
/*
* Copyright (c) 2023 Martin Kiepfer <mrmarteng@teleschirm.org>
*
* SPDX-License-Identifier: Apache-2.0
*/

/ {
aliases {
accel0 = &mpu6886_m5stack_core2_ext;
};
};

&m5stack_mbus_i2c0 {
status = "okay";

mpu6886_m5stack_core2_ext: mbus_mpu6886@68 {
status = "okay";
compatible = "invensense,mpu6050";
reg = <0x68>;
};
};
5 changes: 3 additions & 2 deletions boards/xtensa/m5stack_core2/doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,9 @@ of the M5Stack Core2 board.
|| LCD screen || Built-in LCD TFT display \(`LCD-ILI9342C`_, 2", 320x240 px\) |
|| || controlled via SPI interface |
+------------------+--------------------------------------------------------------------------+
|| 3-axis || The `MPU-6886`_ is a 6-axis MotionTracking device that combines a |
|| gyrosopce || 3-axis gyroscope and a 3-axis accelerometer. |
|| 6-axis IMU || The `MPU-6886`_ is a 6-axis motion tracker (6DOF IMU) device that |
|| MPU6886 || combines a 3-axis gyroscope and a 3-axis accelerometer. |
|| || For details please refer to :ref:`m5stack_core2_ext` |
+------------------+--------------------------------------------------------------------------+
|| Built-in || The `SPM-1423`_ I2S driven microphone. |
|| microphone || |
Expand Down

0 comments on commit 95da89a

Please sign in to comment.