B5FsV7T

【Spark 2】Light begging board + driver

 
Overview

# Functional Description

The beggar board supports intelligent lighting products with arbitrary splicing of shapes and arbitrary color changes. Through different combinations, a variety of shapes and colorful colors can be achieved, which is an excellent personalized decoration.

# Project Progress

The software has been completed. Remember that the latest version of the firmware is matched with the latest version of the host computer. The communication protocol has changed slightly in recent updates.

# The hardware principle

is based on the parallel connection of signals with different internal resistances. Due to the huge difference in internal resistance, the signal with low internal resistance is given priority.
When not inserted, the signal flows through the resistor. After insertion, the signal passes through the external light board and is output from behind the resistor.
Thus, unlimited cascading is achieved and each LED can be controlled separately.

# Software Description

The code is the pit. The overall project is not difficult, but it is difficult to adapt to various lighting effects, and the software needs to convert the XY coordinates of different lamp beads so that the position and color are correct.

### Coordinate conversion

! [Beggar board.png]
θ is the incident angle +180°+45° as the starting conversion point.
The origin coordinates are solved by COS/SIN incident angle x R + input offset

### Recursion

![Beggar light board description 2.png]
When encountering a child node, the LED count is relayed to the child node's coordinate conversion

### Data compression

![image.png]
Use variable length code to store all the information of a light board in one byte. The data of 120 light boards can barely be stuffed into the total length of 128 bytes.
The next 6 bytes are used to store the rotation angle and accelerated transcoding. The remaining two bytes are reserved for the later power-on lighting effect and brightness.

## Instructions for use of the host computer.

Read the first page of the host computer more:

![image.png]
![F)W1T_GUJKRDJR%RX}5.png]
The interface is a pseudo-graphic interface written in command line. This tree-like branching structure can also be seen in the project directory on the left of the professional version. It can only be said to be convergent evolution. The element name has been marked in red.

![image.png]

# Physical display

![IMG_20230327_170629.jpg]
![IMG_20230327_165342.jpg]
# Notes1

. Check whether the power supply can satisfy all lights to be bright white, otherwise the USB driver will be disconnected when the load is too large2
. When the estimated power supply is insufficient, the adapter board can be used to provide auxiliary power supply through the external charging head3
. There is a version that uses a USB interface to realize power supply and data connection, but it is highly recommended not to insert a data cable to power other USB devices to avoid losses.
4. Pay attention to the positive and negative versions of the pin and female headers. Since there is no anti-foolproofing, a short circuit may occur if the plug is reversed or misplaced. Pay attention to the correctness of the connection before powering on

# Firmware update

Ver0.01:
1. Modify PID, report name and version number
2. Implement basic continuous sending of 320 RGBLED data
3. First byte escape to implement host computer communication protocol
4. Add the function of obtaining the number of lamp beads
5. Automatically open the open source network after 3.5 minutes of no operation after power on
6. Open 128 lamp beads control

Ver0.02:
1. Add power-on built-in lighting effect, CapsLock control direction
2. Modify polling interval

Ver0.03: (internal test)
1. The main frequency is increased to 24MHz
2. Fix the bug that the traffic light does not refresh when it exceeds 64
3. Modify the watchdog count loading value
4. Fix the lamp bead counting bug
5. Remove the automatic opening of the open source network
7. Remove the data synchronization package and open 192 lamp beads control

Ver0.1: (capped internal test)
1. Fix the bug that the green light logo does not go out when it exceeds a certain length
2. Modify the communication protocol and storage method to make it more stable3
. Increase the number of lamp beads to 320

Ver1.0:
1. Change the 2812 storage format back to GRB
2. Increase the number of lamp beads to 640, and more lamp beads can be controlled at 30FPS at the same time3
. Fixed the bug that only the first one is lit when the same color is filled

Ver1.10
1. Streamline the dial and multimedia endpoints to prevent overflow2
. Add offline lighting effects, add pure color and running lights on the basis of rainbow bars3
. Batch assign space to exchange time4
. No uppercase and lowercase switching for 4 minutes after power-on, and automatically open an open source website if there is no communication
参考设计图片
×
 
 
Search Datasheet?

Supported by EEWorld Datasheet

Forum More
Update:2025-08-05 12:32:41

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
community

Robot
development
community

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号