Run Mbi6033 LED/Chip IC with WLED #715
Replies: 10 comments 44 replies
-
What uC are you using? The issue here is that it uses the CLK to do the reset. Specifically, it wants to send a single 0 bit with delay before and after. This is not achievable with hardware SPI as it sends data by bytes and can't send a single bit. Can I manually toggle it when the hardware SPI controls the PIN, that can only be answered by trying. With BitBang (which I support and implemented) theatrically it could be modified to send a single bit. There is also this timing stuff mentioned based on number chips, but DotStars (3 wire chips like this that have Clk, Data, Gnd) this isn't uncommon, but it requires special coding for it. The rest (header and 16bit elements) is already supported it would just need its header to be exposed as a feature setting (other chips have this also). |
Beta Was this translation helpful? Give feedback.
-
I read a topic about software spi in two-line chips, would it help? topic Aircoookie/WLED#2542 related setting: Aircoookie/WLED#2542 (comment) |
Beta Was this translation helpful? Give feedback.
-
https://github.com/Makuna/NeoPixelBus/tree/Mbi6033 Assuming RGB pixel order in the following examples. (updated: 16 bits per element uses NeoRgb48Feature) For bit bang, use Mbi6033Method like
For hardware SPI, use Mbi6033SpiMethod method like
and if your platform is ESP32 the pins for the hardware SPI are define when you call Begin() like
|
Beta Was this translation helpful? Give feedback.
-
The clock width shouldn't be a problem, this is why they have a clock signal as it is used to time and space bits. It can vary. If you use hardware SPI, it usually is pretty solid though. You can't reuse the same SPI for two different busses like your sample is showing. The Arduino SPI object is used, it is a singleton and a single SPI must be dedicated to the NeoPixelBus. This statement from your sketch enables both at the same time.
Further, the capture states 24 chips are being configured, but your sketch states 4 pixels or just One Chip. Are you sure you have the right sketch and capture? I want to impress upon you to keep your initial test sketch small and clean as possible to help me read it and help us diagnose the issue. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
I was able to compile the code with the edits you specified. We have now observed that the data works. What kind of a way should be followed to add mbi6033 to wled with this prepared method. We observed that the first chip works when pixelcount is 4, and the second chip works when it is 8. I am sending a working video attached. Thank you for your help. WhatsApp.Video.2023-06-17.at.12.48.56.mp4WhatsApp.Video.2023-06-17.at.12.47.37.mp4 |
Beta Was this translation helpful? Give feedback.
-
Of your videos, which end is the first pixel? From your code snippit, it would be the far end but it looks like those aren't lit. I just want make sure you have the right color order so if you set the first pixel to red, you get red. If everything looks good, then I will review the code for any cleanup and merge it into master today. |
Beta Was this translation helpful? Give feedback.
-
BTW: These chips support 16 bits per color element, so you can use Rgb48Color object to define your colors with more resolution. |
Beta Was this translation helpful? Give feedback.
-
trying to resolve an issue. The led strip is a bit dim and I suspect the first high byte and low byte assigned the probability that I can see on the analyzer won't happen. Is conversion of 8 bit data to 16 bit done in NPB or WLED libraries?. Can I get your opinion on this? @Makuna |
Beta Was this translation helpful? Give feedback.
-
I want to use neopixelbus with mbi6033 ic. I know there is a library that wled uses. They said to a question I asked from there, you can do it with neopixelbus, you have to ask to edit it.
I want to run mbi6033 with wled but I don't know how to proceed. I need help.
Mbi6033 is actually an economical solution. It runs 4 channels with 1 chip. It is an integrated that uses spi. I would like to share what we know about the mbi6033.
It has 2 different modes. with current Gain and without current gain. I want to use it without. Spi data contains a 48-bit header, and its channels consist of 16-bit and gray scale data. We have the header information. There is also a data string of a working device taken with a logic analyzer. If you need more information, please don't hesitate to ask.
MBI6033 Application Note V1.00-EN.PDF
Beta Was this translation helpful? Give feedback.
All reactions