From 6925bc947afa64ab061ca503b9e8dab49905f28c Mon Sep 17 00:00:00 2001 From: Singular Devices Date: Tue, 13 Jul 2021 07:22:21 +0000 Subject: [PATCH] Replace open-led-race.ino --- open-led-race/open-led-race.ino | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/open-led-race/open-led-race.ino b/open-led-race/open-led-race.ino index 54804b9..0bc2cc1 100644 --- a/open-led-race/open-led-race.ino +++ b/open-led-race/open-led-race.ino @@ -456,7 +456,7 @@ void print_cars_positions( car_t* cars ) { for( int i = 0; i < race.numcars; ++i ) { int const rpos = get_relative_position( &cars[i] ); - sprintf( txbuff, "p%d%s%d,%d,%d,%c", i + 1, tracksID[cars[i].trackID], cars[i].nlap, rpos,cars[i].battery, EOL ); + sprintf( txbuff, "p%d%s%d,%d,%d%c", i + 1, tracksID[cars[i].trackID], cars[i].nlap, rpos,(int)cars[i].battery, EOL ); serialCommand.sendCommand(txbuff); //sendCommand(txbuff); } @@ -556,7 +556,7 @@ void draw_winner( track_t* tck, uint32_t color) { } } -void draw_car( track_t* tck, car_t* car ) { +void draw_car_tail( track_t* tck, car_t* car ) { struct cfgtrack const* cfg = &tck->cfg.track; switch ( car->trackID ){ @@ -571,6 +571,23 @@ void draw_car( track_t* tck, car_t* car ) { } } +void draw_car( track_t* tck, car_t* car ) { + struct cfgtrack const* cfg = &tck->cfg.track; + + switch ( car->trackID ){ + case TRACK_MAIN: + for(int i=0; i<=1; ++i ) + track.setPixelColor( ((word)car->dist % cfg->nled_main) - i, car->color ); + if ( (car->battery<=BATTERY_MIN) && ((millis()%100)>50)) track.setPixelColor( ((word)car->dist % cfg->nled_main) - 2, 0x493905 ); + break; + case TRACK_AUX: + for(int i=0; i<=1; ++i ) + track.setPixelColor( (word)(cfg->nled_main + cfg->nled_aux - car->dist_aux) + i, car->color); + if ( (car->battery<=BATTERY_MIN) && ((millis()%100)>50) ) track.setPixelColor( (word)(cfg->nled_main + cfg->nled_aux - car->dist_aux) + 2, 0x493905); + break; + } +} + /* * Display on LED Strip current values for Slope and Pitlane