# Optimization of Bit Allocation for Spatial Multiplexing in MIMO VLC System with Smartphones
## 4 Experimental Results  
This system is constructed with two Google Pixel 4a smartphones which are the transmitter and the receiver, respectively. The list of configurations is in Table 1. The frame size of 720 \(\times\) 1520 is the same as the display size of the Google Pixel 4a. The system architecture is shown in Figure 6. Two mobile devices are mounted on a platform and are at a fixed distance (15 cm). The transmitter (display) is in the field-of-view of the receiver (camera). The centers of the display and camera are aligned. There are four transmitters and four receivers in the proposed 4 \(\times\) 4 (\(N\) = 4) MIMO VLC system. Moreover, the signal transmitted by the VLC scheme is non-negative and could be transmitted in the wireless optical channel with IM/DD. The paradigm of image frames containing signals, captured by digital camera and segmented with a quarter area detected by the corner detection, are shown in Figure 7. These four blocks tagged with red rectangles are receivers. Instead of signal powers, the received data are the averaged grayscale of pixels in each block. This system can maintain spatial diversity due to a lack of joints of blocks and a lack of interference from other channels. In this example, the noise or interference in each channel is caused by the imperfect conditions of display, lenses, or air quality. If the system had neither precoding nor equalization, the communication quality would be severely worsened. Moreover, the signals in each channel may perform as grayscale values (integers in [0, 255] for 8-bit pixels) with \(M\)-PAM, and the maximum grayscale (\(I\)) is 255. Therefore, this study aims to improve transmission performance by adjusting the level of PAM to appropriately allocate bits for each channel based on the WF algorithm. Before the bit allocation, the gain in each channel should be determined by considering the mapping of signals from transmitters and receivers. In Figure 8a, the transmitted signals are integers in the range [0, 255], and the received signals are floating-point in the same \begin{table}
\begin{tabular}{c c} \hline \hline
**Parameters** & **Value** \\ \hline Transmission distance (cm) & 15 \\ Smartphone model & Google Pixel 4a \\ Frame rate on transmitter/receiver (fps) & 30/29.6 \\ Display pixel value (pixel) & 720 \(\times\) 1520 \\ Number of transmitters & 4 \\ Number of receivers & 4 \\ Bits per frame & 8 \\ Camera resolution (pixel) & 12.2 million \\ Smartphone chipset & Snapdragon 730 G \\ Smartphone CPU & 2.2 GHz + 1.8 GHz, 64-bitmulti-core processor \\ Smartphone RAM & 6 GB \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Configurations of the VLC system. Figure 6: The VLC system architecture with two mobile devices mounted on the platform. Figure 7: The paradigm of receivers (red rectangles) segmented with corner detection (noted with cross markers) and shrinking (from the dashed rectangles to solid ones) in the image captured by the camera. interval. With the regression, the high-order curve shown in Figure 8b can illustrate the channel gain. With the equal bit allocation, the transmission bit number in each shot is two in each channel. Accordingly, each channel is incorporated with 4-PAM. Indeed, the proposed VLC system applies grayscale values to transmitted and received signals and is still in the same range [0, 255]. Therefore, the minimum transmitted signal is 0, and the maximum is 255. Regarding the gain of each channel, the received signals, in terms of averaged grayscale values, are shown in Table 2. The minimum mean-squared error (MMSE) equalizer is applied to evaluate the proposed system with AWGN, as noted in (3), similar to ambient shot light noise and thermal noise. In a real case with 30 dB SNR (signal-to-noise ratio) and eight bits fully assigned for four channels, the BER of the MIMO VLC system with an equal bit allocation scheme [2, 2, 2, 2] is 0.1303, as shown in Table 3. The optimal allocation with the conventional WF method is [1.3, 2.6, 1.5, 2.6].