Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4151

Networking and servers • Need advice on sending image data from a Pi5 to several Picos

$
0
0
I have a hobby project where I use four PicoW (in particular the "pimoroni interstate 75 w"), each driving four 64x64 LED panels.

I want to generate images on a Pi 5 (the input comes from a combination of several cameras including a thermal one) and then distribute them to the Picos so that each shows a segment of the entire image.

I could use some advice on how to accomplish this in the easiest way.

I have 40 years of programming experience, so I have basic understanding of things, but I have done not much image processing, and especially have no experience on doing this on Linux or with python (it's not one of the programming languages I enjoy using).

Here's an outline of what I think I should do:

- Create the image on the Pi5 using some high-level image lib that lets me transform and copy images into a buffer. I wonder if I should do that in C or in Python (since I won't do single pixel manipulation but just take frames from the camera, and then scale, transform and plot them into the buffer, this will be fast enough in Python). Which libs would I be needing for this?
- Split the image into parts for sending to the Picos. Since each Pico drives a 256x64 RGB pixels, and if I use 16 bit per pixel, I'd have to transfer 32KB to every Pico. Since I have four Picos, I'd thus transmit 128 KB per frame. I plan to get 30 frames / second. That's about 4 MB payload per second. I guess the WiFi should be able to handle that (I expect to run it in an area with very low signal pollution).
- For transmitting the data, I thought of creating an access point on the Pi5, and have all Picos connect to it. Then use UDP to send the data to each Pico. I hope I can also do this easily in Python.
- On the Pico, I've already written C code that can manage the 30 frames/s with simply animation code. I still have to figure out how to make the code for receiving the data via UDP and expand the 16bit pixels into the frame buffer, but that shouldn't be too hard.

What do you think? Any suggestions or pitfalls I may have overlooked?

Statistics: Posted by tem_pi — Fri Jul 19, 2024 7:00 pm



Viewing all articles
Browse latest Browse all 4151

Trending Articles