## 4 CSBM-Based VLC System Description  
Figure 4 presents the total representation of a CSBM-based VLC system [13; 16]. After converting the input from serial to parallel, we define the data symbols from the light color space using constellation points. A point can be mapped to the intensities of n LEDs at the transmitter. The average of every constellation point becomes the target color. The target color may be selected from the gamut area, and the information data can be transmitted using constellation points corresponding to the target color. Thus, the proposed system enables color-independent visible light communication. On the receiving side, the target color information is optional because it can be generated from the average of received data symbols [14]. After that, intensities at the PDs are amplified. Finally, after the demapping operation, m-bit output is converted into a serial data stream. A detailed explanation of mapping and demapping can be found in the literature [13; 16]. Additive white Gaussian noise (AWGN) is assumed as channel noise. Typically, it is caused by background lighting that can interfere with the VLC signal. Optical filters can be useful for minimizing the noise, but even if the receiver is well designed, there may still be shot noise. On the receiver side, three PDs with three RGB filters were used to detect the light. To obtain the target color on the receiver side, the following cases are considered [15]. * Case-I (sending the target color): We add the target color information with the transmitted data symbols using the LED intensities as header information, thus differentiating it from the transmitted data symbols. * Case II (without sending the target color): By taking a moving average of the received symbols, we can determine the target color [14]. If the transmitter does not send the target color, many errors can occur while switching from one target color to another. This looks similar to burst errors of RF communication because of the appearance of a sequence of successive errors in the target color. Figure 5 presents the BER performance of CSBM for both Case-I and Case-II, with and without channel coding, respectively [15]. We can see that, unlike in Case I, the BER performance of Case II deteriorates without channel coding because of the burst errors occurring during the transition period when the transmitter does not send the target color. However, with channel coding, BER performance is improved by minimizing the random and burst errors, and the improved result is almost similar to that of Case-I. Figure 4: System representation of a color-space-based modulation (CSBM)-based VLC [13]. We used MATLAB to simulate our proposed system. The simulation model is represented in Figure 6[14]. First, a built-in MATLAB function was used to generate random data. FEC coding (1/2 convolutional coding) and interleaving were then adopted for the input data bits. Following GCM mapping, the data bits were mapped onto LED modules. Because AWGN is used as noise in our model, it was added to the transmitted data. We model the AWGN depending on channel SNR using MATLAB. On the receiver side, deinterleaving and Viterbi decoding were used after GCM demapping to retrieve the data. The Euclidean distance was used for symbol decision during the GCM demapping process. Finally, the received data is compared with the transmitted data to calculate the BER. Figure 7 presents the generation of three target colors for the transmitter and their corresponding symbols in the CIELUV color space [13; 14]. Figure 8 displays the BER performance for the three  
Figure 5: Bit error rate (BER) versus SNR for Case-I and Case-II (with and without channel coding) [15]. Figure 6: Simple simulation model used to demonstrate the proposed generalized color modulation (GCM)-based VLC system [14]. single target colors [13; 14]. BER performance differs noticeably because of the different sizes of the constellation diagrams for each target color. Figure 8: Comparison of BER vs. SNR for three target colors [13].