## 4 Hardware Demonstration
### Tests  
Numerous tests were conducted throughout the engineering phase of the project. A key focus was on live data transmission, where the time taken for messages to travel between devices was recorded. During the tests, a private computer was connected to Dev 1 via Arduino window to monitor device responses, send messages, and track updates in real time. Several commands were used to send and transmit data, count all unread messages, read the most recent incoming message, and retrieve the timestamp of the latest message. To transmit data, the desired text had to be converted to ASCII, as the system only allows messages to be sent in a numerical format. A sufficient number of experiments were conducted during the process. However, Table 2 provides a summary of the three generally average test examples based on the time process of the research, detailing the test dates, the time taken for data transfer from the device to the satellite, and the corresponding weather conditions. Weather factors are analyzed to understand their impact on message transmission, as cloud cover can interfere with signal frequencies. Additionally, the average received signal strength (RSSI) in dBm for each packet was monitored. An RSSI value of \(-90\) dBm indicates poor signal strength (unlikely to function effectively), whereas a reading of \(-105\) dBm represents optimal signal strength for an open communication channel. The number of satellites will influence the result of the RSSI value and connection overall as well, which is tracked using the SWARM Pass Checker tool [35]. As it was determined from Figure 6 in Section 2, the urban area where all the testing was conducted (Winnipeg) has high noise that prevents accurate, stable, and long connection to the satellite. Moreover, the number of satellites passing that area is low. All those factors influence the poor RSSI value. The first test experienced the longest message delivery time between the device and the satellite, largely due to high wind speeds, mostly cloudy weather, and the limited number of satellite passes at that time. Additionally, since the initial tests were conducted in June, the data may be less accurate due to potential human error. The second test recorded an average transmission time of 5.5 min. Although partly cloudy, the wind speed was lower compared with that in test 1. The RSSI value was also lower, likely due to a higher number of satellites passing overhead and improved weather conditions. \begin{table}
\begin{tabular}{c c c c c c c} \hline
**Test \#** & **Date (2022)** & **Time MSG Sent** & **Time MSG Delivered** & **Total Mean Time [min]** & **Cloudy** & **Wind Speed [km/h]** & **Ave. RSSI** \\ \hline
1 & 7 June & 15:56:32 & 16:47:54 & 51.37 & Mostly & 26 & \(-98\) \\ \hline
2 & 3 July & 13:12:53 & 13:18:23 & 5.5 & Partially & 17 & \(-100\) \\ \hline
3 & 15 August & 17:10:05 & 17:13:05 & 3.0 & Partially & 14 & \(-115\) \\ \hline \end{tabular}
\end{table} 
Table 2: Data containing the test number, date of the test, time the message has been sent from the device and delivered to the satellite, connection RSSI, and weather conditions. The third test produced the best results, with data transmission taking only 3 min. Weather conditions were similar to those in test 2, but the RSSI value was even lower. All tests were conducted in an urban environment, where high levels of noise and partial sky obstructions from tree branches may have influenced the results. This highlights the dependence of system performance on satellite visibility, particularly in regions with sparse coverage. The following test results, as mentioned above, were taken as the average from the total results conducted in multiple tests across a 3-month period.