Error loading Autosteer_UDP_571V onto Teensy 4.1

This is the error message I received after uploading Autosteer_UDP_571V using Arduino 1.8.19. Most was red text.

Arduino: 1.8.19 (Windows 10), TD: 1.57, Board: “Teensy 4.1, Serial, 450 MHz, Faster, US English”

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\enc28j60.cpp: In static member function ‘static void ENC28J60::packetSend(uint16_t)’:

enc28j60.cpp:494: warning: label ‘resume_last_transmission’ defined but not used

 resume_last_transmission:

 ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496\pch\Arduino.h:6:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

Autosteer_UDP_v571: In function ‘void setup()’:

Autosteer_UDP_v571:212: error: ‘TCCR2B’ was not declared in this scope

       TCCR2B = TCCR2B & B11111000 | B00000110;    // set timer 2 to 256 for PWM frequency of   122.55 Hz

       ^

Autosteer_UDP_v571:213: error: ‘TCCR1B’ was not declared in this scope

       TCCR1B = TCCR1B & B11111000 | B00000100;    // set timer 1 to 256 for PWM frequency of   122.55 Hz

       ^

Autosteer_UDP_v571:218: error: ‘TCCR1B’ was not declared in this scope

       TCCR1B = TCCR1B & B11111000 | B00000010;    // set timer 1 to 8 for PWM frequency of  3921.16 Hz

       ^

Autosteer_UDP_v571:219: error: ‘TCCR2B’ was not declared in this scope

       TCCR2B = TCCR2B & B11111000 | B00000010;    // set timer 2 to 8 for PWM frequency of  3921.16 Hx

       ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:351:54: warning: invalid conversion from ‘void ()(uint16_t, uint8_t, uint16_t, uint8_t*, uint16_t) {aka void ()(short unsigned int, unsigned char, short unsigned int, unsigned char*, short unsigned int)}’ to ‘UdpServerCallback {aka void ()(short unsigned int, unsigned char, short unsigned int, const char*, short unsigned int)}’ [-fpermissive]

   ether.udpServerListenOnPort(&udpSteerRecv, 8888);

                                                  ^

In file included from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:12:0:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:489:17: note: initializing argument 1 of ‘static void EtherCard::udpServerListenOnPort(UdpServerCallback, uint16_t)’

 static void udpServerListenOnPort(UdpServerCallback callback, uint16_t port);

             ^

Autosteer_UDP_v571: In function ‘void udpSteerRecv(uint16_t, uint8_t*, uint16_t, uint8_t*, uint16_t)’:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:707:93: warning: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘const char*’ [-fpermissive]

           ether.sendUdp(PGN_253, sizeof(PGN_253), portMy, ipDestination, portDestination);

                                                                                         ^

In file included from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:12:0:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:445:17: note: initializing argument 1 of ‘static void EtherCard::sendUdp(const char*, uint8_t, uint16_t, const uint8_t*, uint16_t)’

 static void sendUdp (const char *data, uint8_t len, uint16_t sport,

             ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:726:101: warning: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘const char*’ [-fpermissive]

                   ether.sendUdp(PGN_250, sizeof(PGN_250), portMy, ipDestination, portDestination);

                                                                                                 ^

In file included from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:12:0:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:445:17: note: initializing argument 1 of ‘static void EtherCard::sendUdp(const char*, uint8_t, uint16_t, const uint8_t*, uint16_t)’

 static void sendUdp (const char *data, uint8_t len, uint16_t sport,

             ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:746:115: warning: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘const char*’ [-fpermissive]

           ether.sendUdp(helloFromAutoSteer, sizeof(helloFromAutoSteer), portMy, ipDestination, portDestination);

                                                                                                               ^

In file included from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:12:0:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:445:17: note: initializing argument 1 of ‘static void EtherCard::sendUdp(const char*, uint8_t, uint16_t, const uint8_t*, uint16_t)’

 static void sendUdp (const char *data, uint8_t len, uint16_t sport,

             ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:867:87: warning: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘const char*’ [-fpermissive]

               ether.sendUdp(scanReply, sizeof(scanReply), portMy, ipDest, portDest);

                                                                                   ^

In file included from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\Autosteer_UDP_v571.ino:12:0:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:445:17: note: initializing argument 1 of ‘static void EtherCard::sendUdp(const char*, uint8_t, uint16_t, const uint8_t*, uint16_t)’

 static void sendUdp (const char *data, uint8_t len, uint16_t sport,

             ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\dhcp.cpp:17:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\webutil.cpp:7:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\dns.cpp:7:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:12:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\BNO08x_AOG.cpp: In member function ‘float BNO080::getPitch()’:

BNO08x_AOG.cpp:461: warning: unused variable ‘ysqr’

float ysqr = dqy * dqy;

    ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:158:38: note: in expansion of macro ‘PROGMEM’

void Stash::prepare (const char* fmt PROGMEM, …) {

                                  ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp: In static member function ‘static void Stash::extract(uint16_t, uint16_t, void*)’:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute cannot be specified for local variables

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:229:21: note: in expansion of macro ‘PROGMEM’

 const char* fmt PROGMEM = (const char*)((segs[2] << 16) | segs[1]);

                 ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp: In static member function ‘static void Stash::cleanup()’:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute cannot be specified for local variables

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:297:21: note: in expansion of macro ‘PROGMEM’

 const char* fmt PROGMEM = (const char*)((segs[2] << 16) | segs[1]);

                 ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp: At global scope:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:319:43: note: in expansion of macro ‘PROGMEM’

void BufferFiller::emit_p(const char* fmt PROGMEM, …) {

                                       ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp: In member function ‘void BufferFiller::emit_p(const char*, …)’:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute cannot be specified for local variables

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.cpp:368:27: note: in expansion of macro ‘PROGMEM’

         const char* s PROGMEM = va_arg(ap, const char*);

                       ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\BNO08x_AOG.cpp: In member function ‘boolean BNO080::checkReportEnable(uint8_t, uint16_t)’:

BNO08x_AOG.cpp:1602: warning: suggest parentheses around comparison in operand of ‘&’

if(getFeatureReportId() == reportID & getReportInterval() == reportIntervalMicrosecond) return (true);

                      ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\tcpip.cpp:14:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/WProgram.h:41:0,

             from C:\Users\Warren\AppData\Local\Temp\arduino_build_726496/pch/Arduino.h:6,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:30,

             from C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\udpserver.cpp:8:

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:171:42: note: in expansion of macro ‘PROGMEM’

 static void prepare (const char* fmt PROGMEM, ...);

                                      ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘fmt’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:240:34: note: in expansion of macro ‘PROGMEM’

 void emit_p (const char* fmt PROGMEM, ...);

                              ^

C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy4/avr/pgmspace.h:30:52: error: section attribute not allowed for ‘p’

#define PROGMEM attribute((section(“.progmem”)))

                                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\EtherCard_AOG.h:252:36: note: in expansion of macro ‘PROGMEM’

 void emit_raw_p (const char* p PROGMEM, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }

                                ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\udpserver.cpp: In static member function ‘static bool EtherCard::udpServerHasProcessedPacket(uint16_t)’:

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\udpserver.cpp:68:22: warning: invalid conversion from ‘uint8_t* {aka unsigned char*}’ to ‘const char*’ [-fpermissive]

             (gPB + UDP_DATA_P),

                  ^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\tcpip.cpp: In static member function ‘static uint16_t EtherCard::packetLoop(uint16_t)’:

tcpip.cpp:674: warning: unused variable ‘len’

 uint16_t len;

          ^

tcpip.cpp:837: warning: control reaches end of non-void function

}

^

C:\Users\Warren\Downloads\AgOpenGPS_Boards-master (2)\AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571\tcpip.cpp: At global scope:

tcpip.cpp:37: warning: ‘tcpclient_src_port_l’ defined but not used

static uint8_t tcpclient_src_port_l=1; // Source port (LSB) for tcp/ip client connections - increments on each TCP/IP request

            ^

tcpip.cpp:196: warning: ‘void make_echo_reply_from_request(uint16_t)’ defined but not used

static void make_echo_reply_from_request(uint16_t len) {

         ^

tcpip.cpp:492: warning: ‘void client_syn(uint8_t, uint8_t, uint8_t)’ defined but not used

static void client_syn(uint8_t srcport,uint8_t dstport_h,uint8_t dstport_l) {

         ^

‘TCCR2B’ was not declared in this scope

This report would have more information with
“Show verbose output during compilation”
option enabled in File → Preferences.

That’s a lot of errors, I would hazard a guess you haven’t got all the ino files in the same folder.
12 tabs should be open in Arduino IDE when you upload the firmware.

I have 17 tabs in Arduino IDE.

One for each file in my AgOpenGPS_Boards-master\Support\ArduinoModules\UDP\Autosteer_UDP_v571 folder.

Autosteer_UDP_v571
AutosteerPID
AutosteerRelays
BNO08x_AOG.cpp
BNO08x_AOG.h
EtherCard_AOG.cpp
EtherCard_AOG.h
dhcp.cpp
dns.cpp
enc28j60.cpp
enc28j60.h
net.h
tcpip.cpp
udpserver.cpp
webutil.cpp
zADS1115.cpp
zADS1115.h

I don’t think you can use that arduino code on a Teensy, can you?

Shouldn’t you be using code from the Teensy folder, not from the “ ArduinoModules” folder?

1 Like

I was thinking the same.

Next question? Are all the ino files (the folder) set to both read and write
Happened once for me , that files were set to read only, when loading to a nano ! Resulting in a bunch of faults . Nano were working though.

I bet that’s it. I was using arduino ide and mistakenly thought that meant I should use the arduinomudules folder. I’ll upload using the teensy folder when I’m back inside.

Thank you for the information and help.

EDIT: My Support/TeensyModules/Firmware folder has Autosteer_gps_teensy_v5_5 but no v571. Is that the latest version?

EDIT2: I see from the Telegram group that v5_5 should work and just wasn’t renamed as v571.

1 Like

Also, in IDE, make sure you pick Teensy 4.1 before compiling. Compilation success depends on the code in your project matching what system you’re compiling for, so it needs to be selected first. If you inadvertently pick Teensy4.0 (it can sometimes pick the wrong Teensy if you plug it in after the IDE was started), the modules won’t compile, for example.

With that many errors I would delete the .ino files, and download a new set. Remember to unzip the package.

Buy accidentally deleting a { you can cause a pile of errors and good luck finding where it happened. Starting over is free and fast.