I was so excited to unbag my brand new Plasma 2350W; I have all sorts of ideas on how I want to use an internet-connected set of neopixels.
My excitement was crushed when I realized that the example code linked to from the Plasma 2035W sales page doesn’t work.
I’ve tried with both circuitpython and micropython. While I am able to make the LEDs do what LEDs do, I am unable to get the 2350W to connect to my WiFi. Why? Because I don’t have the necessary network python library referenced in the example code-- example code that was updated a mere two weeks ago.
The correct board number is 2350. This is important as you will need to download the correct MicroPython (I assume) build for this exact board: Plasma 2350 W. Unfortunately the hardware seems to be ahead of the software once again so you will have to be patient. You could try the Pico Plus 2 W code to test the WiFi. We really need a statement from Pimoroni on this. The boards are excellent once the support arrives.
Thanks-- I tried the driver you mention here and the plasma 2350 won’t boot. When I use the plasma2350-v0.0.7-pimoroni-micropython.uf2 driver I can get the board to boot and power the LEDs.
I have the Plasma 2350 and 2040 boards and also the Pico Plus 2 W which I have only recently got working. I have had to be patient waiting for MicroPython builds for their latest boards. It would be good to have a bit more clarity on the Shop as to what is stable, what is “experimental”, and what does not exist yet.
I must emphasise I really like the hardware and all I ask for is better information on the website shop. The experts might know where to look on Github for the different builds, but for the rest of us it can be far from obvious.
I agree with this, github is something you get used to but it’s a real pain point for beginners. It would be great if you could download the correct UF2 directly, with one click, from the product page.
Once I get a UF2 that will let me test the wireless connections, I’ll let you know! So far the LEDs work swimmingly, both on the board and a strip. I’ve not tried to read the A button yet.
It’s under the pre-release tab, which you may have to open under “Assets”.
I’ve not had a chance to test out the network connectivity yet, but I can confirm that this driver will boot, let’s me blink the LEDs, and contains a ‘network’ library.
Success! I can indeed get connected to my local WiFi, connect to an NTP server, and pull down web pages / .json pulls.
I can tell that this is an unstable release, though-- I have to reboot the 2350W if it’s idle for more than a few minutes. It’s often a hard reboot, too, meaning I have to pull the power.
Hello, total noob here. I bought the kit to make rainbows… and finally got it working. It works!
I struggled all day to get it working. Most things were unknown and in the order of “How do I …”. Lots of information on the web, but hard to sort out what is important and what is not.
Some difficulties I had:
How do I connect the led strip wires to the board in a correct (safe) way)
I take back my comment about this being an unstable release. I found a line in my code that was causing the hanging. In particular, this line (from cheerlights.py) seems to be the offender:
except OSError:
print("Error: Failed to get new colour")
When that was in my code, I’d have to reboot the board on a very regular basis. Now it’s been up for a week or more with no reboots, even as I start and stop the code.
Hi, maybe not the right topic for this forum section. But I have a question about hardware performance etc.
I am using the basic setup with a plasma 2350w and 66 leds. I started programming microPython, had a lot of problems like memory shortage (heap stack). I think this is under control now. I am doing a manual garbage collection. And after every animation (repeated endlessly), it shows a stable free memory number.
But why is the animation getting slower and slower, it seems like the clock ticks is slowly decreasing. Even the default Rainbow animation provided by Pimoroni on Github is slowing down.
Any clue what is happening here?
If I time each animation loops, the elapsed time is increasing by about 30-50 ms.
Yes, this works to show on-board LED running nicely:
from machine import Pin
from time import sleep
# 16 = RED
# 17 = Green
# 18 = Blue
ledr = Pin(16, Pin.OUT)
ledg = Pin(17, Pin.OUT)
ledb = Pin(18, Pin.OUT)
# Reverse logic with 1 = OFF and 0 = ON
while True:
ledr.value(1) # Turn the LED off
ledb.value(1) # Turn the LED off
ledg.value(1) # Turn the LED off
sleep(1)
ledr.value(0)
sleep(1)
ledr.value(1)
sleep(1)
ledg.value(0)
sleep(1)
ledg.value(1)
sleep(1)
ledb.value(0)
sleep(1)
ledb.value(1)
sleep(1)
# Turn on all three = white
ledr.value(0)
ledb.value(0)
ledg.value(0)
sleep(1)
I have the 144 per meter version of those LED strips. I had to use COLOR_ORDER_GRB to get it to show the correct colors.
If you set it to all red, do you get red?
No, I don’t use a time server. But it has something to do with Micropython Class objects and the garbage collector not deleting them. If I disable that piece of code, then I have stable clock speed. I’m going to do some code refactoring now that I think I understand the problem.
Yes, I use Vcode, but I followed the manual and use Thonny, which works fine. What extension do you use, there are many.