Teensy 4.0 Speeduino compile fail

Status
Not open for further replies.

milch

New member
Have tried both compiling the latest release and cloned git on windows 10 using Arduino IDE:
https://github.com/noisymime/speeduino

the error i get is:
Code:
In file included from \arduino_build_514094\sketch\src\FastCRC\FastCRCsw.cpp:38:0:

\arduino_build_514094\sketch\src\FastCRC\FastCRC_tables.h:37:22: fatal error: pgmspace.h: No such file or directory

compilation terminated.

Error compiling for board Teensy 4.0.

Which I can 'fix' by changing \src\FastCRC\FastCRC_tables.h:37
from

#include <pgmspace.h>

to

#include "pgmspace.h"

and putting Arduino\hardware\teensy\avr\cores\teensy4\avr\pgmspace.h
in the speeduino\src\FastCRC directory, which allows it to compile.
Its not responsive over serial (sending S) or with tunerstudio beta (just hangs/says 'not connected').
no luck getting platform.io to compile it yet.
checked baudrates, com ports, tested teensy with other code, reinstalled the arduino/teensy environment, reinstalled tunerstudio, cleared EEPROM, tried different PCs and cannot figure out where im going wrong.
Seems it may be tool chain related? Any insight would be appreciated.
 
Last edited:
New FastCRC fails to compile. I'll see what I can figure out when I get home later.
Code:
Arduino: 1.8.9 (Windows 10), TD: 1.47-beta7, Board: "Teensy 4.0, Serial, Faster, US English"

speeduino: In function 'void loop()':
speeduino:429: warning: unused variable 'ignition7StartAngle' 
       int ignition7StartAngle = 0;

           ^

speeduino:432: warning: unused variable 'ignition8StartAngle' 
       int ignition8StartAngle = 0;

           ^

utils: In function 'uint32_t calculateCRC32(byte)':
utils:69: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:74: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

utils:89: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:93: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

utils:108: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:112: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

utils:127: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:131: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

utils:140: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:144: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

utils:165: error: no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
       CRC32_val = CRC32.crc32(&raw_value, 1, false);

                                                   ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note: candidate: uint32_t FastCRC32::crc32(const uint8_t*, uint16_t)

   uint32_t crc32(const uint8_t *data, const uint16_t datalen);  // Alias CRC-32/ADCCP, PKZIP, Ethernet, 802.3

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:167:12: note:   candidate expects 2 arguments, 3 provided

utils:170: error: no matching function for call to 'FastCRC32::crc32_upd(byte*, int, bool)'
         CRC32_val = CRC32.crc32_upd(&raw_value, 1, false);

                                                         ^

In file included from C:\Users\D\Desktop\speeduino\speeduino\utils.ino:12:0:

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note: candidate: uint32_t FastCRC32::crc32_upd(const uint8_t*, uint16_t)

   uint32_t crc32_upd(const uint8_t *data, uint16_t len);   // Call for subsequent calculations with previous seed

            ^

C:\Users\D\AppData\Local\Temp\arduino_build_731221\sketch\src/FastCRC/FastCRC.h:170:12: note:   candidate expects 2 arguments, 3 provided

no matching function for call to 'FastCRC32::crc32(byte*, int, bool)'
 
Removed extra bool at the end of CRC32.crc32_upd(); and it compiles again and doesn't need the pgmspace.h cludge i had to use with the previous version, still the same issue though, Teensy seems hung and can't get anything out of the usb serial while the Speeduino sketch is running.

Addendum:
After a lot of digging i found this comment in the speeduino slack chat

"
noisymime 5:51 AM
Yeah, so I'm just going to put the Teensy 4 aside for a little bit. It's got some semi-serious bugs in the serial comms that need to be worked out
"
7 days ago
 
I'm still working through developing the T4.0 code for Speeduino. Even if the comms stuff was working right now, I haven't done all the timers stuff yet so it won't actually run an engine. I'll get there, but not much I can do now until the serial issue is resolved.
 
Status
Not open for further replies.
Back
Top