7월, 2021의 게시물 표시

LED-11. Make a very big size 384 X 512 RGB Matrix #6(final)

이미지
 Finally, it is the day to install the 384X512 size LED signage in the cafe. Up to now, assembly, development, and testing were carried out in my office. Finished installing and testing Node-RED for minor bug fixes and electronic parts management. And to install the cafe, I disassembled the electronic parts again and took it to the cafe. Here we will install it again after reassembly. reassembly All 24 LED panels, aluminum profiles, Hub75 cables and wires were removed and reassembled in the cafe. <Rear view of reassembled LED signage> After reassembly, a simple test was conducted. Confirmed that it works without problems. The next thing to do is to fix the sign structure to the window. <Test screen after reassembly> The black line on the screen is invisible to the human eye. <LED signage installation> Four arms were connected to the LED frame and fixed to the aluminum window frame. And after playing the LED content, I checked it outside the building. <LED signa...

LED-11. Make a very big size 384 X 512 RGB Matrix #5

이미지
 In the previous post, the LED player using Python failed to process the image packet transmitted through UDP at high speed. An error occurred in the 30 FPS processing. To dramatically improve performance, this time I will port our Python code to C/C++. It is expected that performance improvement of several to tens of times is possible.    Porting Python code to C/C++  Henner Zeller's rpi-rgb-led-matrix library was originally written for C/C++. Therefore, it is not difficult to port Parison code. And image packet reception using UDP communication can also be easily implemented using C/C++ socket communication.  Since the length of the code is quite long and it is divided into several source codes, I will not introduce the code in the main body.  I will put the source code on GitHub for those who need it to download.  C/C++ programs are available with two options. The first is to receive packets, assemble and update the LED display all in one thread. An...

LED-11. Make a very big size 384 X 512 RGB Matrix #4

이미지
 A network must be used to exchange images between the LED server and the player. A method for transmitting an image over a network is possible in several ways. In most cases, in order to reduce bandwidth, data is compressed and transmitted, and the receiver undergoes a process of decoding again. However, since we will be sending images on a local LAN, we will prioritize speed over bandwidth. Therefore, in this article, we will send and receive images without decompression. For image transmission using a network, refer to the next article. LED - 7. Distrbuted display system for very large RGB LED matrices    Network display  First, let's test the network image transfer using a simple Python program. Test  The following is a server-side Python program. We will read the image and send it to the player. #!/usr/bin/python3 import argparse import numpy as np import cv2 import time from PIL import Image, ImageSequence import netsender2 as netsend...

LED-11. Make a very big size 384 X 512 RGB Matrix #3

이미지
 This article links to the previous two articles. Be sure to read these articles in advance.   LED-11. Make a very big size 384 X 512 RGB Matrix #1   LED-11. Make a very big size 384 X 512 RGB Matrix #2  In the previous section, we looked at the frame assembly, LED panel connection, power connection, etc. to make a large LED signboard of 384X512 pixel size. In this blog, we will continue to check whether the connected electronic signage works properly, and if there is a problem, we will try to solve it.   Prepare Raspberry Pi images LED players I have enjoyed using Henner Zeller's library while making LED signboards using Raspberry Pi. I recommend reading his articles on GitHub.  I will use DietPi as the OS for LED control. DietPi is a lightweight OS that removes unnecessary parts from the Raspberry Pi OS. DietPi and HZeller's library installation are explained in detail in the article below. Please refer to the article below to create 4 SD card images. ...

LED-11. Make a very big size 384 X 512 RGB Matrix #2

이미지
 In a previous article, I decided to make a large-sized LED signboard to promote the cafe (BlueBird) and even talked about the process of making the frame. In this article, we will talk about the connection and power of the LED panel, and the connection of the Raspberry Pi.   LED Pannel The LED panel I use is P2.5 128X64. In the figure below, the hole is an M3 standard hole that can fix the panel, and the depth is 5mm. <P2.5 128 X 64 LED Matrix size> There are 128X64 = 8192 pixels in one panel. Therefore, since a total of 24 panels are used, a total of 196,608(192K) pixels are used. An LED signboard of this size cannot be controlled by a single Raspberry Pi.   First Design I plan to control the LEDs using a total of 3 Raspberry Pis. <Configuration> The following figure shows the connection of the top 9 panels. <Top 9 pannels connection> This configuration worked successfully. However, the refresh rate of the screen was around 120Hz. <Top 9 panel test ...

LED-11. Make a very big size 384 X 512 RGB Matrix #1

이미지
 Recently I opened a cafe specializing in souffle pancakes. The cafe's name is BlueBird and is located in 시흥(Siheung), South Korea. <Cafe indoor scenery> The souffle is made with egg meringue, sugar, butter and it is very fluffy. <souffle pancakes> Now, the corona virus is all over the world. That's why most people are reluctant to go out and reduce access to cafes. My souffle cafe was also affected by this, so the number of customers decreased a lot compared to when I first opened the cafe. So I decided to make a large size LED Matrix that can be installed in windows to promote the cafe. The LED matrix will be made for indoor use and the location of the installation is a window marked with a box in the following picture. <Outside of the cafe> In fact, I have already made a small LED display at the entrance of the cafe. This small LED display was made using Raspberry Pi 4B and three 64x64 LED panels. In the picture below, the top display i...