0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

M5Stack Unit Necoで猫耳LEDを光らせよう

Last updated at Posted at 2025-12-30

はじめに

M5Stackシリーズの中でも一際目を引くかわいいデバイス「Unit Neco」をご紹介します!猫耳形状のRGB LEDパネルで、35個のフルカラーLEDが搭載されています。パーティーや装飾に最適なユニットです🎉

Unit Necoとは?

Unit Necoは、M5Stackが提供する猫耳形状のRGB LEDライトパネルユニットです。

主な特徴

項目 仕様
LED WS2812C-2020 × 35個
色数 16,777,216色(フルカラー)
輝度レベル 256段階
接続方式 シリアルカスケードインターフェース
インターフェース HY2.0-4P(Groveポート)× 2
サイズ 44.6 x 43.0 x 10.1mm
重量 9.6g
動作温度 0-85°C

パッケージ内容

  • Unit Neco × 2個
  • HY2.0-4P Grove接続ケーブル(20cm)× 1
  • HY2.0-4P Grove接続ケーブル(1m)× 1
  • プラスチックコーティングワイヤー × 2

2個セットで販売されているので、両耳を表現したり、カスケード接続で拡張できます!

接続方法

Unit NecoはPORT.Bを使用して接続します。

ピン 機能
GND グランド
5V 電源
DATA LEDデータ信号
BTN タクトスイッチ

Unit NecoとCoreS3のピン配置

Unit NecoのGroveコネクタとCoreS3の各ポートのピン配置を確認しましょう。

Unit Neco側

GND 5V DATA BTN

CoreS3側

ポート GND 5V 3番目 4番目
PORT.A GND 5V G2 G1
PORT.B GND 5V G9 G8
PORT.C GND 5V G17 G18

Groveケーブルで接続すると、Unit NecoのDATAピン(3番目)がCoreS3の各ポートの3番目のピンに対応します。

DATAピンの対応関係

  • PORT.Aに接続 → PIN = 2
  • PORT.Bに接続 → PIN = 9
  • PORT.Cに接続 → PIN = 17

ピン配置は公式サイトの一番下のほうで確認できます。
プルダウンお使いの機種を選択してください。

image.png

他のセンサーと併用する場合

例えば、PORT.AにI2Cセンサー(環境センサーなど)を接続している場合、Unit NecoはPORT.BまたはPORT.Cに接続することになります。
この設定が誤っているとうまく動きません。

// PORT.Aに接続した場合
#define PIN 2

// PORT.Bに接続した場合
#define PIN 9

// PORT.Cに接続した場合
#define PIN 17

ピン番号を間違えるとLEDが点灯しません。接続するポートに応じて必ずPINの値を変更してください!

Arduinoでの使い方

必要なライブラリ

Adafruit NeoPixelライブラリを使用します。Arduino IDEのライブラリマネージャーからインストールしてください。

サンプルコード

#include <Adafruit_NeoPixel.h>

// 接続ポートに応じてPINを変更してください
// CoreS3: PORT.A=2, PORT.B=9, PORT.C=17
#define PIN        9  // CoreS3のPORT.Bに接続した場合
#define NUMPIXELS  70 // Unit Neco 2個分(35 × 2)

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 100

void setup() {
  pixels.setBrightness(20); // 輝度を20に設定(推奨値)
  pixels.begin();
}

void loop() {
  pixels.clear();
  
  // すべてのLEDをピンク色に点灯
  for (int i = 0; i < NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(244, 24, 208));
  }
  pixels.show();
}

レインボーエフェクトのサンプル

#include <Adafruit_NeoPixel.h>

#define PIN        2
#define NUMPIXELS  35

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  pixels.setBrightness(20);
  pixels.begin();
}

void loop() {
  rainbow(10);
}

void rainbow(int wait) {
  for (long firstPixelHue = 0; firstPixelHue < 65536; firstPixelHue += 256) {
    for (int i = 0; i < pixels.numPixels(); i++) {
      int pixelHue = firstPixelHue + (i * 65536L / pixels.numPixels());
      pixels.setPixelColor(i, pixels.gamma32(pixels.ColorHSV(pixelHue)));
    }
    pixels.show();
    delay(wait);
  }
}

応用サンプル

GitHubにUnit Necoを使ったサンプルコードを公開しています。

sample1.ino - シンプルな点滅

タイマーベースでLEDを点滅させるシンプルなサンプルです。

// 🐱 猫耳LED点滅スケッチ (シンプル版)
#include <M5CoreS3.h>
#include <Wire.h>
#include <Adafruit_NeoPixel.h>

#define PIN        2       // PortA 🐱
#define NUMPIXELS  70
#define BLINK_INTERVAL_MS 1000

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

sample2.ino - タッチボタンでエフェクト切り替え

CoreS3のタッチパネルを使って、6種類のLEDエフェクトを切り替えられるサンプルです。

  • 🌊 CHASE - 流れる光
  • 💡 BLINK - 点滅
  • 🌈 RAINBOW - 虹色グラデーション
  • SPARKLE - キラキラ
  • 💨 BREATHE - 呼吸(フェード)
  • 🎉 PARTY - パーティーモード

心拍センサー連携サンプル

HEARTRATEフォルダには、心拍センサー(MAX30100)とUnit Necoを組み合わせたサンプルがあります。心拍を検知するとLEDが光る、面白い応用例です!

⚠️ 注意事項

LEDの焼損に注意!

全点灯状態を長時間続けるとLEDが焼損する恐れがあります。輝度は20前後に設定することを強く推奨します。

// 推奨設定
pixels.setBrightness(20);

UIFlowでの使い方

UIFlowを使えば、ビジュアルプログラミングでUnit Necoを制御できます。

活用アイデア

  1. 🏠 家庭装飾 - デスク周りのアクセントライトとして
  2. 🎉 パーティー演出 - 音楽に合わせたライティングエフェクト
  3. 🎭 コスプレ - 猫耳ヘッドバンドに装着
  4. 📢 通知ライト - Slack/Teamsの通知を光で表現
  5. 🎮 ゲーム連動 - ゲームの状態に応じて色を変化
  6. 💓 心拍連動 - 心拍センサーと組み合わせてビートに合わせて光らせる

まとめ

Unit Necoは、かわいい猫耳デザインと実用的なRGB LED機能を兼ね備えた魅力的なユニットです。M5Stackエコシステムとの親和性も高く、ArduinoやUIFlowで簡単にプログラミングできます。

2個セットなので、両耳を光らせたり、カスケード接続でさらに拡張したりと、創造性を発揮できるデバイスです!

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?