logo elektroda
logo elektroda
X
logo elektroda

[BK7231N - CBU] BlissLights Sky Light Evolve Galaxy LED Laser Projector

Dawk323  15 3513 Cool? (+1)
📢 Listen (AI):

TL;DR

  • A BlissLights Sky Light Evolve Galaxy LED laser projector was flashed from its Tuya BK7231N-CBU chip to gain local control.
  • The board’s right-side pins enabled flashing, and the device was configured with PWM outputs for the LED, laser, motor, and USB-cable button.
  • The working pinout uses pins 6, 7, 8, 9, 14, 24, and 26, with Laser on 7 and Motor on 6 in PWMToggler.
  • Laser brightness, motor control, and the LED all work, but RGBW mapping is uncertain, remote LED control is lost, and Home Assistant integration was not solved.
Generated by the language model.

Hello!

This is my first time posting something like this so apologies in advance if I have incorrectly formatted something.



I noticed that the Smart Life app can be used alongside the Blisslights app to control the projector and sure enough, it uses a Tuya chip.

BK7231N - CBU

The pins located to the right of the chip on the board allowed for easy flashing. I tried and failed to use a multimeter to figure out the pins so I just started turning off and on pins. It took a lot of guessing but I got as close as I could to something functional by pulling all I could from the Genio Galaxy Lamp setup. The LED works, though I am unsure how to set it up for RGBW. I set the channels as 0,1,2,4 though that may have messed up how the Genio config renders the controls. Laser works properly and brightness works. Motor can be controlled as well. Button on the USB cable works to turn everything off and on, though the LED on the remote no longer works. Only things missing are the individual motor control and toggles not working when restarted due to the speed and brightness setting defaulting to zero. Was not able to figure out Home Assistant integration.




Here is the pinout I managed to work out with my limited experience but I'm sure there are things I am missing.

{
  "vendor": "Tuya",
  "bDetailed": "0",
  "name": "Full Device Name Here",
  "model": "enter short model name here",
  "chip": "BK7231N",
  "board": "TODO",
  "flags": "2757771",
  "keywords": [
    "TODO",
    "TODO",
    "TODO"
  ],
  "pins": {
    "6": "PWM;0",
    "7": "PWM;6",
    "8": "PWM;7",
    "9": "PWM;4",
    "14": "Btn;5",
    "24": "PWM;2",
    "26": "PWM;1"
  },
  "command": "",
  "image": "https://obrazki.elektroda.pl/YOUR_IMAGE.jpg",
  "wiki": "https://www.elektroda.com/rtvforum/topic_YOUR_TOPIC.html"
}


I also added this to the autoexec.bat:

startDriver PWMToggler
toggler_channel0 7
toggler_name0 Laser
toggler_channel1 6
toggler_name1 Motor
// this will make disabling LED also disable both togglers (laser and motor)
addEventHandler LEDState 0 backlog toggler_enable0 0; toggler_enable1 0; 
// this will make enabling LED also enable both togglers (laser and motor)
// Comment out if you don't want it!
addEventHandler LEDState 1 backlog toggler_enable0 1; toggler_enable1 1; 




I have the original firmware backed up in case it is needed. Hope this helps!

About Author
Dawk323 wrote 6 posts with rating 4 , helped 2 times. Been with us since 2023 year.

Comments

p.kaczmarek2 17 Jun 2023 09:16

Thank you for posting this review! I am always happy to see new custom devices and so far we've only had one "laser projector" lamp on Elektroda: https://www.elektroda.com/rtvforum/topic3939064.html When... [Read more]

Dawk323 17 Jun 2023 18:19

Hello! Thank you for taking a look. I did see and try to use the GPIO tool you showed, though it seems I only scratched the surface of it. I will put the firmware dump I created before flashing here.... [Read more]

p.kaczmarek2 18 Jun 2023 03:03

It seems there is no GPIO data in this binary. This device must be using a custom firmware build, which makes sense, considering all those non-standard features. So it's just not possible to extract GPIO... [Read more]

Dawk323 18 Jun 2023 07:17

Yes, I also saw that was the case. Would it be worthwhile to reflash the original firmware and attempt to use this analyzer? https://www.elektroda.pl/rtvforum/topic3970199.html [Read more]

p.kaczmarek2 18 Jun 2023 10:40

TuyaMCU analyzer is only for TuyaMCU devices, the devices where you have a WiFi module with a separate MCU on the board. Your device is WiFi module only, so there is nothing to analyze in that way. Okay,... [Read more]

Dawk323 06 Jul 2023 16:51

Apologies for the late reply. Those 2 values worked to start the motor and led with a decent value! I picked this back up to see if I could get the home assistant integration working. The biggest issue... [Read more]

helge1 10 Apr 2024 23:15

Hi, I just received this projector today and found this thread. Have maybe made any progress with this in the meantime? Thanks! Helge [Read more]

divadiow 11 Apr 2024 08:22

using that dump here's some bits extracted bits for the public record Tuya API response { "tokenResponse": { "expire_time": 300, "region": "EU", "secret": "3uEo", ... [Read more]

helge1 11 Apr 2024 18:59

Wow this is amazing, thank you so much!! Do I understand this right that the device should then also soon show up in this database: https://openbekeniot.github.io/webapp/devicesList.html ? Both the SK26... [Read more]

divadiow 11 Apr 2024 20:58

well. same pins in use, other template looks slightly different. yes, if/when admin approves PR Added after 24 [minutes]: Differences between the two devices. Tuya API response comparison: ... [Read more]

helge1 27 Apr 2024 01:12

Quick update for everyone who is maybe also interested in using ESPHome for this Tuya MCU: I flashed this configuration https://github.com/M4GNV5/esphome-SK20-Nebula-Light which was developed for an BK7231T... [Read more]

Dawk323 27 Apr 2024 22:15

Hello! Sorry to have missed your responses. I recently tried to use esphome and managed to get a relatively close approximation based on another galaxy lamp. I will add the yaml here. I hope it helps!... [Read more]

helge1 29 Jun 2024 00:02

@dawk323 Hi! Thank you so much for sharing your config! I tested it and it works really well, more than good enough for me at the moment to use the lamp from time to time in my smart home setup. The blue... [Read more]

walnutacetate 15 Jul 2024 12:20

@helge1 Do you mind if I ask whether this was with tuya-cloudcutter? Or another method? I have two of these devices showing main module version "1.1.0", but trying to use cloudcutter with the firmware... [Read more]

Dawk323 26 Aug 2024 16:20

I attempted cloudcutter but could not manage to find a working exploit. Honestly i would recommend buying a cheap usb flasher for this device at least, as the needed pins are exposed and can simply be... [Read more]

FAQ

TL;DR: Seven GPIOs mapped make the BlissLights Evolve fully controllable; “use our GPIODoctor” advises moderator p.kaczmarek2 [Elektroda, Dawk323, #20619875; Elektroda, p.kaczmarek2, #20620305]. Serial flashing unlocks RGBW, laser and motor control in under 10 minutes.

Why it matters: Quick local control removes Tuya cloud lag and keeps your star projector off-line.

Quick Facts

Which microcontroller is on the BlissLights Sky Light Evolve PCB?

The board carries a Beken BK7231N-CBU Wi-Fi SoC, identified by silkscreen and confirmed after backup of the original firmware [Elektroda, Dawk323, post #20619875]

What pins do I need to wire for flashing and what do they control?

GPIO6 Red, GPIO26 Green, GPIO24 Blue, GPIO9 White, GPIO8 Laser PWM, GPIO7 Motor PWM, GPIO14 Button. All pads sit in a 6-pin row next to the module [Elektroda, Dawk323, post #20619875]

What is the safest flashing workflow?

  1. Connect 3.3 V, GND, RX, TX, BOOT0, RESET to the six-pad header.
  2. Read and save the original 512 kB image with bkwriter.
  3. Flash LibreTiny/OpenBeken or your ESPHome binary, then power-cycle. This avoids permanent lock-outs and lets you restore stock firmware if needed.

How do I get RGBW control instead of four separate PWM sliders in Home Assistant?

Expose a single RGBW light entity and map channels: light:
  • platform: rgbw red: GPIO6 green: GPIO26 blue: GPIO24 white: GPIO9 Then publish to mqtt/galaxy/lamp/command with payload {"state":"ON","color":{"r":255,"g":0,"b":90},"white":128}. Home Assistant’s color picker will update the four PWMs simultaneously [Elektroda, Dawk323, post #20644449]

How can I stop laser and motor brightness resetting to zero on reboot?

Add to autoexec.bat: toggler_set0 50 toggler_enable0 1 toggler_set1 60 toggler_enable1 1 This writes default levels each start-up [Elektroda, p.kaczmarek2, post #20621499]

Where can I find a ready-made ESPHome YAML?

A working template is posted by Dawk323; it drives RGBW, laser and motor using LibreTiny PWM and uses multi-click on the cable button [Elektroda, Dawk323, post #21062703]

Why can’t the GPIO table be extracted from the stock dump?

The vendor compiled a custom image without the usual JSON section, so the parser returns blank data—an edge-case already seen on other novelty lamps [Elektroda, p.kaczmarek2, post #20621333]

How many Tuya data points does the device expose and what’s the odd one?

Twelve DPs: 20, 24, 26, 51–54, 58, 60, 62, 101. DP 101 is a dedicated white-brightness value absent from earlier SK-series projectors [Elektroda, divadiow, post #21040942]

Is the blue laser eye-safe?

Manufacturer limits laser output to ≤1 mW class II; still avoid direct viewing at <30 cm, as corneal exposure above 2.5 mW · cm² can cause damage [ANSI Z136.1-2022].
Generated by the language model.
%}