Teensyduino 1.48 Released

Status
Not open for further replies.
Kurt,
i am a dummy - after seeing your post i realize that the error messages should have led me where i needed to go,
but since i had not ever been using setup() and loop() for the last two years and had forgotten about them i
thought the error message meant some missing setup and loop reference inside one of the system files - not in
my source file - everyone saw that connection except me

Not a problem...

I did try out the fix I mentioned and it appears to work...
Issued a PR back to @PaulStoffregen...

https://github.com/PaulStoffregen/cores/pull/397
 
Not a problem...

I did try out the fix I mentioned and it appears to work...
Issued a PR back to @PaulStoffregen...

https://github.com/PaulStoffregen/cores/pull/397

Kurt,
no joy trying to duplicate, copied main.cpp from teensy3 dir to teensy4 dir

edited starup.c

Code:
near top startup.c


#include "imxrt.h"
#include "wiring.h"
#include "usb_dev.h"

#include "debug/printf.h"

extern int main (void);

// from the linker
extern unsigned long _stextload;
extern unsigned long _stext;
extern unsigned long _etext;


further down

	startup_late_hook();
	while (millis() < 300) ; // wait at least 300ms before calling user code
	//printf("before C++ constructors\n");
	__libc_init_array();
	//printf("after C++ constructors\n");
	//printf("before setup\n");
	setup();
	//printf("after setup\n");
	while (1) {
		//printf("loop\n");
		loop();
		yield();
	}

	main();
	
	while (1) ;

}




// ARM SysTick is used for most Ardiuno timing functions, delay(), millis(),

compiles ok with setup and loop

same error message as before if use main

no doubt i misinterpreted something in your instuctions
 
Quote Originally Posted by KurtE View Post
Not a problem...

I did try out the fix I mentioned and it appears to work...
Issued a PR back to @PaulStoffregen...

Kurt,
got away from it a few hours and found my oversight - works just fine this end
win7 pro x64, arduino 1.8.5, teensyduino 1.48 release, setup w loop or just main
both work with teensy4.

thanks again for your time and advice.
 
Does anyone know if the different USB Type options will be back any time soon for the teensy 4.0 ?
 
Does anyone know if the different USB Type options will be back any time soon for the teensy 4.0 ?
Back? they never were there ;)

There has been probably 10 threads on this already...

As Paul mentioned in the thread: https://forum.pjrc.com/threads/57894-Teensyduino-1-48-Beta-3?p=217953&viewfull=1#post217953
My hope is to release 1.48 soon, probably very close to this 3rd beta.

The serial monitor timestamp feature still missing. Sorry, it just isn't going to happen for 1.48, since the speedup stuff bypasses that part of the serial monitor's abstraction layers.

After we have a stable 1.48 release, I'm going to start work again on the missing USB types and porting the remaining Teensy3-only libraries like OctoWS2811.
So hopefully soon he will get chance to start working on this again
 
@PaulStoffregen>> Two - things ... sort of three:

I updated IDE 1.8.9 to TD 1.48 because for some reason the :: 1.8.10 IDE always rebuilds many USBHost ethernet libs even on a small sketch change That is the vjmuzik thread << LINK ADDED

Yes, it used to show more info. Looks like Arduino made some changes to that part of the IDE.

Unless something is really wrong, I'm not going to consider this a bug or put it on my (already too long) list to stuff to investigate.

Regarding this 'missing info' … I see that missing on IDE 1.8.9 now as well - so not new to 1.8.10

Thirdly::
Teensy_SerMon showing this rare anomaly in output - similar to something before - rare but eye catching and 'not really there'???
td148display.jpg
The upper text with missing last half of the line is T_sermon. When I select and copy that text into notepad the missing line text is displayed - so not really missing - just not visible.


ANOTHER ITEM OF NOTE::
To get above screen shot it was LEFT is AutoScroll OFF about 1.5 hours with 1 line printed 10/sec. Just going back I paged down looking for other anomalies - saw none, there was a LOT of buffer.

>> GOT to the bottom and last line was stopped at "deg C" with no '=temp' showing.
>> enabled AutoScroll to resume - No effect.
>> Ethernet adapter still running LAN lights.
>> Opened TyCommander as SerMon and indeed the 10 lines/sec are still active from Teensy

-->> It seems like the freeze for paused Autoscroll failed to restart or got lost?

Only Console note in IDE seems to be from closing t_sermon:
Code:
TeensyPipeMonitor close
window_close
GUI update interrupted
TeensyPipeMonitor close
errorPipeListener thread exit
inputPipeListener thread exit
 
Last edited:
I updated IDE 1.8.9 to TD 1.48 because for some reason the :: 1.8.10 IDE always rebuilds many USBHost ethernet libs even on a small sketch change That is the vjmuzik thread << LINK ADDED

These are probably bugs in Arduino's "builder" program. Hopefully there's some way to reproduce the bug with one of Arduino's products. It's much easier to report a bug to them if it can happen with one of their boards.
 
These are probably bugs in Arduino's "builder" program. Hopefully there's some way to reproduce the bug with one of Arduino's products. It's much easier to report a bug to them if it can happen with one of their boards.

The lib used there vjmuzik pulled in to good effect - but it throws this error during build:
Code:
"T:\\arduino-1.8.9t4\\hardware\\teensy/../tools/arm/bin/arm-none-eabi-g++" -E -CC -x c++ -w -g -Wall -ffunction-sections -fdata-sections -nostdlib -std=gnu++14 -fno-exceptions -fpermissive -fno-rtti -fno-threadsafe-statics -felide-constructors -Wno-error=narrowing -mthumb -mcpu=cortex-m7 -mfloat-abi=hard -mfpu=fpv5-d16 -D__IMXRT1062__ -DTEENSYDUINO=148 -DARDUINO=10809 -DF_CPU=600000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\cores\\teensy4" "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\libraries\\USBHost_t36" "-IT:\\tCode\\libraries\\TeensyASIXEthernet" "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\libraries\\TeensyThreads" "-IT:\\tCode\\libraries\\FNET\\src" "T:\\tCode\\libraries\\FNET\\src\\service\\serial\\fnet_serial.c" -o nul
[COLOR="#FF0000"]Error while detecting libraries included by T:\tCode\libraries\FNET\src\service\serial\fnet_serial.c
[/COLOR]"T:\\arduino-1.8.9t4\\hardware\\teensy/../tools/arm/bin/arm-none-eabi-g++" -E -CC -x c++ -w -g -Wall -ffunction-sections -fdata-sections -nostdlib -std=gnu++14 -fno-exceptions -fpermissive -fno-rtti -fno-threadsafe-statics -felide-constructors -Wno-error=narrowing -mthumb -mcpu=cortex-m7 -mfloat-abi=hard -mfpu=fpv5-d16 -D__IMXRT1062__ -DTEENSYDUINO=148 -DARDUINO=10809 -DF_CPU=600000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\cores\\teensy4" "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\libraries\\USBHost_t36" "-IT:\\tCode\\libraries\\TeensyASIXEthernet" "-IT:\\arduino-1.8.9t4\\hardware\\teensy\\avr\\libraries\\TeensyThreads" "-IT:\\tCode\\libraries\\FNET\\src" "T:\\tCode\\libraries\\FNET\\src\\service\\shell\\fnet_shell.c" -o nul

That is the error text from IDE 1.8.9 - same as IDE 1.8.10. Wondering if the 1.8.10 builder sees that and somehow doesn't record the 'prior build' as usable in rebuild?

Ideally that error should be done away with - apparently that part of the lib in use doesn't actually feed anything to the linker that it misses.

vjmuzik looked after the error some - then moved to 1.8.9. Which is all I did after suffering longer until TD 1.48 released.

I have an UNO - but nothing to do with it - not sure that builder fail is common as nobody else has posted - thus my guess on the 'error' in build ...
 
i don't necessarily agree with you.

Installing Arduino,1.8.10,and Teensyduino 148 will run under Catalina in a standard user account without problems, but you must first install Arduino and Tennsyduino in an admin account. Installing in a standard uaer account and giving the install admin authority does not work. The only real downside I don't like is that you have to explicitly assign full disk access to Arduino (again, must be in admin account for settings to take effect), but this is an Arduino issue, not a Catalina issue.

If you're careful and do what the message boxes ask, all should be well. Don't forget to set full disk access. I'm running Catalina on a late 2012 Mac Mini, and all of my Teensy projects are compiling and running. The "input" and "keystroke" message boxes do not come up.
 
In file included from /home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp:8:0:
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp: In member function 'uint16_t DNSClient::BuildRequest(const char*)':
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/utility/w5100.h:457:25: warning: result of '(256 << 8)' requires 18 bits to represent, but 'int' only has 16 bits [-Wshift-overflow=]
#define htons(x) ( (((x)<<8)&0xFF00) | (((x)>>8)&0xFF) )
~~~^~~
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp:164:18: note: in expansion of macro 'htons'
twoByteBuffer = htons(QUERY_FLAG | OPCODE_STANDARD_QUERY | RECURSION_DESIRED_FLAG);
^~~~~

This is a warning message
Board is teensy ++2.0; ubuntu 18.04
I took a look at Dns.cpp and you have a comment:
// FIXME We should also check that there's enough space available to write to, rather
// FIXME than assume there's enough space (as the code does at present)
 
I tried 1.49Beta 4 but still get the same error. This error did not occur in versions 1.46 and earlier (I never used 1.47). When this error happens I seem to be getting memory errors when the code runs.Is there anything I can do in my code - in general - to keep this from happening?
The teensy code in question does not seem to be any different in 1.46, 1.148 or 1.49B4. So something else must have changed. My code has not changed.
Thanks!

In file included from /home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp:8:0:
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp: In member function 'uint16_t DNSClient::BuildRequest(const char*)':
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/utility/w5100.h:457:25: warning: result of '(256 << 8)' requires 18 bits to represent, but 'int' only has 16 bits [-Wshift-overflow=]
#define htons(x) ( (((x)<<8)&0xFF00) | (((x)>>8)&0xFF) )
~~~^~~
/home/rich/Arduino/arduino-1.8.10/hardware/teensy/avr/libraries/Ethernet/src/Dns.cpp:164:18: note: in expansion of macro 'htons'
twoByteBuffer = htons(QUERY_FLAG | OPCODE_STANDARD_QUERY | RECURSION_DESIRED_FLAG);
^~~~~

This is a warning message
Board is teensy ++2.0; ubuntu 18.04
I took a look at Dns.cpp and you have a comment:
// FIXME We should also check that there's enough space available to write to, rather
// FIXME than assume there's enough space (as the code does at present)
 
Any recommendations for a heatsink for the Teensy 4.1?

How does one attach it to the micro? I am wary of double sided tape because my teensy in placed vertically where, with time, the heat sink may fall off.
 
Chipset heatsinks typically come with suitable adhesive already - I measure on a T4.0 that there's a 20mmx12mm area clear of obstructions,
can probably cut down a chipset heatsink for that.

There's also special thermally conductive tape called thermal transfer tape.
 
Thank you MarkT.

Yes, you are correct that they come with an adhesive. Reviews though indicate that cheap adhesives tend to lose their grip over time. Also, my Teensy is not flat, it is placed vertically in an enclosure so there is also the action of shear on the heat sink adhesive from gravity.
 
Status
Not open for further replies.
Back
Top