Skip to content

Latest commit

 

History

History
89 lines (64 loc) · 3.49 KB

README.md

File metadata and controls

89 lines (64 loc) · 3.49 KB

CubeFX

Inject Colorful lighting into your ZimaCube!

CubeFX is a third-party open-source lighting control system designed for the ZimaCube, based on the ESP32-C3 and WS2812B LED strips. It allows you to customize lighting effects, colors, and speed, and control them through a web page or buttons.

GitHub release GitHub license

Demo

Learn more

Features

  • Multiple Lighting Effects: Built-in various lighting effects with support for custom effects
  • Control Interface: Easy control through a web page
  • AP Toggle: Ability to turn off the WiFi AP and reopen it with a button or power cycle
  • OTA Update Support: Update firmware wirelessly without disassembly
  • Multiple Color Formats: Compatible with RGB, HSV, and HEX color input formats
  • Power-off Memory: Automatically saves lighting settings to EEPROM, preserving them after power loss
  • ZimaOS Protocol Compatibility: Controllable lighting effects using ZimaOS (awaiting official documentation)

Usage

Method 1: OTA Update

  • Download the CubeFX_ota_xxx.bin firmware from the Releases page
  • Connect to the ZimaCube AP, the default password is homecloud
  • Visit http://172.16.1.1 in your browser
  • Upload the .bin file to the ESP32-C3 development board

Method 2: Web Flashing

  • Open the CubeFX installer
  • Connect the ESP32-C3 using a Type-C data cable
  • Follow the instructions to update the firmware

Customizing Effects

Connect to the AP and open http://172.16.1.1/post

Tip

It is recommended to use a cell phone to connect as close as possible to the 7th-Bay, because its signal is really weak.

If you just can't connect, you can also press BOOT key to "touch the blind box" and get a random set of effects. 🎲🎊

Or use other program to POST data to http://172.16.1.1/post in the following format:

{
    "on": 1,
    "id": 5,
    "speed": 128,
    "lightness": 255,
    "data": [
        {
            "h": 0,
            "s": 100,
            "v": 100
        },
        {
            "r": 0,
            "g": 255,
            "b": 0
        },
        "0000FF"
    ]
}
  • on: Light switch, optional, [0,1]
  • id: Lighting effect, currently valid range is [-71,5]. Each bead color can be customized when id=5, other effects allow a base color to be defined (but not every effect is supported).
  • speed: Effect speed, range [0,255]
  • lightness: Brightness, range [0,255]
  • data: Supports RGB, HSV, and HEX color input formats, where HEX is a 6-digit hexadecimal color value. HSV format is planned for deprecation, please use RGB or HEX format.

Donate

Enjoyed the project? Consider buying me a coffee - it helps me keep going!

Thank