11#include " WiFi.h"
22
33#include " display.h"
4+ #include " socket.h"
45#include " time.h"
56#include " wifi.h"
67
@@ -73,6 +74,9 @@ Hub75_Display::Hub75_Display(MatrixPanel_I2S_DMA *matrix)
7374
7475void Hub75_Display::setup () {}
7576
77+ uint8_t wifiIcon[] PROGMEM = {B01111110, B10000001, B00111100,
78+ B01000010, B00011000, B00011000};
79+
7680void Hub75_Display::loop () {
7781 _matrix->clearScreen ();
7882 _matrix->setCursor (0 , 0 );
@@ -172,15 +176,21 @@ void Hub75_Display::loop() {
172176 _setTextColor (0xff , 0xff , 0xff );
173177 _matrix->setCursor (49 , 54 );
174178
175- _matrix->printf (" %02d:%02d" , time->tm_hour , time->tm_min );
179+ _matrix->printf (" %02d:%02d:%02d" , time->tm_hour , time->tm_min ,
180+ time->tm_sec );
176181 }
177182
178183 break ;
179184 }
180185 }
181186
182- // if ((millis() / 1000) % 2)
183- // _matrix->drawPixel(0, 0, _matrix->color333(0xff, 0xff, 0xff));
187+ if (!wifi::connected ()) {
188+ _matrix->drawBitmap (118 , 2 , (uint8_t *)&wifiIcon, 8 , 6 ,
189+ this ->_packColor (255 , 0 , 0 ), 0 );
190+ } else if (!WebSocket::connected ()) {
191+ _matrix->drawBitmap (118 , 2 , (uint8_t *)&wifiIcon, 8 , 6 ,
192+ this ->_packColor (255 , 150 , 0 ), 0 );
193+ }
184194
185195 _matrix->flipDMABuffer ();
186196 vTaskDelay (10 );
@@ -204,12 +214,15 @@ void Hub75_Display::_printBrandAnimationLetter(char letter, uint8_t &brightness,
204214 }
205215}
206216
217+ uint16_t Hub75_Display::_packColor (uint8_t r, uint8_t g, uint8_t b) {
218+ return ((uint16_t )(r & 0xF8 ) << 8 ) | ((uint16_t )(g & 0xFC ) << 3 ) | (b >> 3 );
219+ }
220+
207221void Hub75_Display::_setTextColor (uint32_t c) {
208222 _setTextColor (c >> 16 , c >> 8 , c);
209223}
210224void Hub75_Display::_setTextColor (uint8_t r, uint8_t g, uint8_t b) {
211- uint16_t packed =
212- ((uint16_t )(r & 0xF8 ) << 8 ) | ((uint16_t )(g & 0xFC ) << 3 ) | (b >> 3 );
225+ uint16_t packed = this ->_packColor (r, g, b);
213226
214227 _matrix->setTextColor (packed);
215228}
0 commit comments