Hello. I built the project one week ago. I built the version with buttons hardware. When I upload the sketch 'sstv_receive_tft' it works fine. All modes are decoded fine. But when I upload the "sstv_full' version it doesn't have any function. Only the start image (same as the receive version) is displayed. The buttons have no function anyway. No menu is displayed. The IDE compiler says 'compile ok' and upload also is ok. But while compiling I see some red lines. Maybe that they are the problem. I doesn't know. Here following some bad lines wich displayed:
###################################################################################################
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\frame_buffer.cpp: In member function 'void c_frame_buffer::draw_char(uint16_t, uint16_t, const uint8_t*, char, uint16_t, uint16_t)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\frame_buffer.cpp:87:17: warning: unused variable 'font_space' [-Wunused-variable]
87 | const uint8_t font_space = font[2];
| ^~~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In member function 'void c_slideshow::update_slideshow()':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:428:16: warning: unused variable 'width' [-Wunused-variable]
428 | uint16_t width = strlen(filename.c_str())6+10;
| ^~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In function 'void display_image(const char, bool)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:712:18: warning: unused variable 'overlay_x' [-Wunused-variable]
712 | uint16_t overlay_x = (uint32_t)x * overlay_width / width;
| ^~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In member function 'virtual void c_sstv_decoder_fileio::image_write_line(uint16_t*, uint16_t, uint16_t, uint16_t, const char*)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:26: warning: '%u' directive output may be truncated writing between 1 and 5 bytes into a region of size between 3 and 7 [-Wformat-truncation=]
192 | snprintf(buffer, 21, "%10s: %ux%u", mode_string, width, y+1);
| ^~~~~~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:26: note: directive argument in the range [1, 65536]
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:13: note: 'snprintf' output 16 or more bytes (assuming 24) into a destination of size 21
192 | snprintf(buffer, 21, "%10s: %ux%u", mode_string, width, y+1);
c:\Users\joche\Documents\Arduino\libraries\sstv_library\PWMAudio.cpp: In member function 'void PWMAudio::output_samples(const uint16_t*, uint16_t)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\PWMAudio.cpp:50:12: warning: unused variable 'busy_time_us' [-Wunused-variable]
50 | uint32_t busy_time_us = block_time_us - idle_time_us;
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp: In member function 'int16_t* ADCAudio::input_samples()':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp:54:12: warning: unused variable 'duration' [-Wunused-variable]
54 | uint32_t duration = time_us_32() - start;
| ^~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp:55:12: warning: unused variable 'max_duration' [-Wunused-variable]
55 | uint32_t max_duration = 1000000*ADC_BLOCK/m_audio_sample_rate;
| ^~~~~~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp: In member function 'void c_sstv_encoder::generate_robot(e_sstv_tx_mode)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:427:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
427 | for(uint16_t col=0u; col < width; ++col)
| ^~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:429:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
429 | if(m_abort) return;
| ^~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp: In member function 'void c_sstv_encoder::generate_bw(e_sstv_tx_mode)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:470:12: warning: unused variable 'scan_line_ms_f16' [-Wunused-variable]
470 | uint32_t scan_line_ms_f16 = scan_line_ms * (1<<16);
| ^~~~~~~~~~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ili934x.cpp:54:1: warning: multi-line comment [-Wcomment]
54 | //#define __swap_int(a, b)
###########################################################################################################
I need help to resolve..
Thank you
Hello. I built the project one week ago. I built the version with buttons hardware. When I upload the sketch 'sstv_receive_tft' it works fine. All modes are decoded fine. But when I upload the "sstv_full' version it doesn't have any function. Only the start image (same as the receive version) is displayed. The buttons have no function anyway. No menu is displayed. The IDE compiler says 'compile ok' and upload also is ok. But while compiling I see some red lines. Maybe that they are the problem. I doesn't know. Here following some bad lines wich displayed:
###################################################################################################
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\frame_buffer.cpp: In member function 'void c_frame_buffer::draw_char(uint16_t, uint16_t, const uint8_t*, char, uint16_t, uint16_t)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\frame_buffer.cpp:87:17: warning: unused variable 'font_space' [-Wunused-variable]
87 | const uint8_t font_space = font[2];
| ^~~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In member function 'void c_slideshow::update_slideshow()':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:428:16: warning: unused variable 'width' [-Wunused-variable]
428 | uint16_t width = strlen(filename.c_str())6+10;
| ^~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In function 'void display_image(const char, bool)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:712:18: warning: unused variable 'overlay_x' [-Wunused-variable]
712 | uint16_t overlay_x = (uint32_t)x * overlay_width / width;
| ^~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino: In member function 'virtual void c_sstv_decoder_fileio::image_write_line(uint16_t*, uint16_t, uint16_t, uint16_t, const char*)':
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:26: warning: '%u' directive output may be truncated writing between 1 and 5 bytes into a region of size between 3 and 7 [-Wformat-truncation=]
192 | snprintf(buffer, 21, "%10s: %ux%u", mode_string, width, y+1);
| ^~~~~~~~~~~~~
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:26: note: directive argument in the range [1, 65536]
C:\Users\joche\AppData\Local\Temp.arduinoIDE-unsaved2026627-3328-1frlgng.m3ie\sstv_full\sstv_full.ino:192:13: note: 'snprintf' output 16 or more bytes (assuming 24) into a destination of size 21
192 | snprintf(buffer, 21, "%10s: %ux%u", mode_string, width, y+1);
c:\Users\joche\Documents\Arduino\libraries\sstv_library\PWMAudio.cpp: In member function 'void PWMAudio::output_samples(const uint16_t*, uint16_t)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\PWMAudio.cpp:50:12: warning: unused variable 'busy_time_us' [-Wunused-variable]
50 | uint32_t busy_time_us = block_time_us - idle_time_us;
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp: In member function 'int16_t* ADCAudio::input_samples()':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp:54:12: warning: unused variable 'duration' [-Wunused-variable]
54 | uint32_t duration = time_us_32() - start;
| ^~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ADCAudio.cpp:55:12: warning: unused variable 'max_duration' [-Wunused-variable]
55 | uint32_t max_duration = 1000000*ADC_BLOCK/m_audio_sample_rate;
| ^~~~~~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp: In member function 'void c_sstv_encoder::generate_robot(e_sstv_tx_mode)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:427:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
427 | for(uint16_t col=0u; col < width; ++col)
| ^~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:429:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
429 | if(m_abort) return;
| ^~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp: In member function 'void c_sstv_encoder::generate_bw(e_sstv_tx_mode)':
c:\Users\joche\Documents\Arduino\libraries\sstv_library\sstv_encoder.cpp:470:12: warning: unused variable 'scan_line_ms_f16' [-Wunused-variable]
470 | uint32_t scan_line_ms_f16 = scan_line_ms * (1<<16);
| ^~~~~~~~~~~~~~~~
c:\Users\joche\Documents\Arduino\libraries\sstv_library\ili934x.cpp:54:1: warning: multi-line comment [-Wcomment]
54 | //#define __swap_int(a, b)
###########################################################################################################
I need help to resolve..
Thank you