Forum Rule: Always post complete source code & details to reproduce any issue!
Page 1 of 2 1 2 LastLast
Results 1 to 25 of 28

Thread: Teensyduino 1.56 Released

  1. #1
    Administrator Paul's Avatar
    Join Date
    Oct 2012
    Posts
    428

    Teensyduino 1.56 Released

    Teensyduino 1.56 has been released

    https://www.pjrc.com/teensy/td_download.html


    Quick summary: 1.56 brings support for Arduino 1.8.19 and many fixes and improvements. Teensy 4.0, 4.1, MicroMod get a bootloader update which allows LittleFS_Program filesystem to persist across code uploads.



    Changes since 1.56-beta6:

    SD & LittleFS listfiles PrintTime check valid month
    Fix Print::printf to call va_end (Shawn Silverman)
    SD getModifyTime getCreateTime check 0 from SdFat (KurtE)


    Complete list of changes since 1.55:

    Support for Arduino 1.8.19
    Fix serial monitor stall on Windows
    Fix upload failure to locked Teensy 4 if button pressed
    FS.h support file create and modify time
    SD support file create and modify time
    SD automatically uses RTC
    LittleFS support file create and modify time
    LittleFS automatically uses RTC
    Add makeTime, breakTime, DateTimeFields
    Fix serial monitor regression with MTP on Linux
    Fix digitalPinHasPWM for higher pin numbers on Teensy 4
    MTP configure event endpoint on Teensy 4
    Add FS format() and mediaPresent()
    Add String compatibility to FS,SD,LittleFS,etc
    Add LittleFS format() (mjs513)
    Add SD format() and mediaPresent()
    Update SdFat to version 2.1.0 and enable UTF8 filenames
    Edit SdFat examples to compile on Teensy 3 & 4
    Audio fix PT8211 when no audio data input (Frank B)
    Audio i2s2 slave mode (alex6679)
    Update FastCRC (Frank B)
    USBHost_t36 HID support 1000 Hz update (Kurt E)
    USBHost_t36 Keyboard forward API and example (Kurt E)
    Reduce wasted memory during linking (Frank B)
    Fix MTP detection on Linux
    Fix serial monitor on Linux with MTP
    Fix rare serial monitor stall on Windows
    Fix rare Null Pointer Exception when closing serial monitor
    Teensy Loader updates Teensy 4.0, 4.1, MicroMod to bootloader 1.07
    Improve SD.mediaPresent()
    Fix SD compile error on Teensy LC
    Show helpful error if original SdFat used
    Fix SdFat example compile errors, FsFile & SD_FAT_TYPE
    Delete SdFat examples not needed for Teensy
    Improve SdFat format speed with SHARED_SPI
    Improve SdFat free cluster count speed with SHARED_SPI
    Add SdFat restart(), to reinitialize hardware & card
    SdFat FAT16/32 format use existing buffer (Kurt E)
    SdFat support for GPT partitions (Kurt E)
    SdFat fix use of USE_SIMPLE_LITTLE_ENDIAN
    SdFat fix exfat corruption when using timestamps (Kurt E)
    Wire use inline functions for AVR
    Wire increase buffer size on Teensy 3 & 4
    Wire fix ambiguous requestFrom with bool
    FS use block write (Kurt E)
    Fix IMXRT_DMA_TCD define
    Add comments in imxrt.h for clock gate requirements
    Fix MTP count of bytes transferred (Kurt E)
    Improve usbMIDI.send_now() on Teensy 3.x (Robert Jonkman)
    Improve Stream comptibility with newer Arduino (Kurt E)
    Audio add play queue setMaxBuffers() (Mark T)
    Audio add play queue play() for raw data (Mark T)
    Update FastLED to 3.4
    FastLED fix OctoWS2811 driver on Teensy 4 (Shawn Silverman)
    FastLED fix WS2812B timing on Teensy 4
    OctoWS2811 add BasicTest_FastLED example
    FreqCount fix for reading less slower than gate interval (mjs513)
    FreqCount add missing end() function (mjs513)
    LittleFS update internal littlefs to version 2.4.1 (mjs513)
    Tlc5940 minor update for compiler flag setting (Adam Phelps)
    OneWire minor updates for non-Teensy boards
    USBHost_t36 fix HIDDumper example for Linux (Kurt E)
    USBHost_t36 increase enum buffer for complex MIDI devices (Robert Jonkman)
    Improve Teensy 4 Secure fusewrite and locksecuremode
    Allow some old Teensy 4.x boards to run EHEX files
    Add usage info with -h to teensy_post_compile and teensy_ports
    Fix teensy_ports -L on Windows
    Support for Arduino 1.8.18
    SD faster detection of SDIO media change (KurtE)
    SdFat fix SDIO on MicroMod (mjs513)
    Fix pins 38 & 39 on MicroMod
    LittleFS improve erase+write speed for NOR flash chips
    LittleFS fix FRAM defines
    LittleFS add Write_Speed_Test example
    Fix PXP_PS_CTRL register defines
    Fix USB receive packet loss with MTP on Teensy 4
    Audio fixes for very small buffer size (Eric Fontaine)
    FreqCount fix 1st reading on Teensy 4 (mjs513)
    Teensy Loader verbose info clearer Standard vs Lockable
    Drop Arduino 1.8.18
    SdFat use same SDIO signal strength on all Teensy 4 (mjs513)
    More MicroMod & Teensy 4 pin 38 & 39 fixes
    Fix AudioPlayQueue internal stall (h4yn0nnym0u5e)
    Add AudioControlCS42448 functions (modularev)
    AudioInputAnalog compile on Teensy LC
    Update FlexCAN_T4
    Fix ILI9488_t3 examples (KurtE)
    Update IRremote
    LittleFS add LittleFS_SPI & LittleFS_QSPI wrappers (KurtE)
    Fix LittleFS examples (mjs513)
    Remove unneed LittleFS RAM cache flush (Defragster)
    Fix OctoWS2811 VideoDisplay_Teensy4 extra cases (timethy96)
    RA8875 examples fixed (KurtE)
    RadioHead examples fixed (mjs513)
    RadioHead fixes for Teensy 2
    Snooze examples fixed (KurtE)
    ST7789_t3 examples fixed (KurtE)
    TeensyThreads updated
    TFT_ILI9163C examples fixed
    XPT2046_Touchscreen threshold adjusted (Andrew Kroll)
    Fix SD example SdFat_Usage on Teensy 2.0
    Fix SdFat example BackwardCompatibility on Teensy 2.0
    SoftwareSerial add bool operator
    Fix SD src-utility conflict when installed on top of 1.53 with Arduino 1.8.5-1.8.9
    Audio fix compiler errors & warnings with Teensy LC
    Audio Fix MidiSynthKeyboard example on Teensy 4
    Audio async spdif example to compile on all boards
    ILI9488_t3 fix compile errors in examples (KurtE)
    ILI9488_t3 better document examples (mjs513)
    LittleFS fix RAM Test_Integrity on Teensy 3.5 & 3.6 (Defragster)
    LittleFS add Cypress and Fuji 2MBit FRAM support (KurtE)
    MIDI fix DualMerger example
    Fix Snooze hibernate/sd_datalogger example
    SD & LittleFS listfiles PrintTime check valid month
    Fix Print::printf to call va_end (Shawn Silverman)
    SD getModifyTime getCreateTime check 0 from SdFat (KurtE)

  2. #2
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    8,147
    Just installed over 1.56beta6 without an issue. Gave it a quick test on the Micromod with a ILI9341 display while doing some mods with the Quad encoder library. All is good so far will be playing more later today.

  3. #3
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    8,147
    Now that 1.56 is released went ahead and locked the Teensy MicroMod board and ran the LittleFS_Program test to check limits of filesystem persistence. Ran it before and after locking just as a check. I used the following table;
    Code:
    Board            Normal  Secure
    -----            ------  ------
    Teensy 4.0       1472K   960K
    Teensy 4.1       7424K   6912K  
    MicroMod Teensy  15616K  15104K
    Prior to locking the TMM with just the fuses set with
    Code:
    PROG_FLASH_SIZE = 1024*15616
    ran the sketch twice to see if the FS persistent:
    Code:
    Startup Before LittleFS Begin - Run 2 
    LittleFS Test
    TotalSize (Bytes): 15990784
    After LittleFS Begin
    started
    MAKE files
    printDirectory -(already on filesystem from prior run)
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		19
    
     0 dirs with 1 files of Size 19 Bytes
    FILE	temp_test1.txt		19
    FILE	temp_test2.txt		19
    FILE	temp_test3.txt		1024
    
     1 dirs with 3 files of Size 1062 Bytes
    
    --------------
    printDirectory - after updating files
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		38
    
     0 dirs with 1 files of Size 38 Bytes
    FILE	temp_test1.txt		38
    FILE	temp_test2.txt		38
    FILE	temp_test3.txt		2048
    
     1 dirs with 3 files of Size 2124 Bytes
    Basically means the file system persistent across runs (pressed program button).

    Now I locked the TMM with the lock sketch
    Code:
    Set Lockable Teensy into secure mode
    Success: Secure mode set
    and repeated.

    Code:
    Startup Before LittleFS Begin
    LittleFS Test
    TotalSize (Bytes): 15466496 = 1024x15104
    After LittleFS Begin
    started
    MAKE files
    printDirectory
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		19
    
     0 dirs with 1 files of Size 19 Bytes
    FILE	temp_test1.txt		19
    FILE	temp_test2.txt		19
    FILE	temp_test3.txt		1024
    
     1 dirs with 3 files of Size 1062 Bytes
    
    --------------
    printDirectory
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		38
    
     0 dirs with 1 files of Size 38 Bytes
    FILE	temp_test1.txt		38
    FILE	temp_test2.txt		38
    FILE	temp_test3.txt		2048
    
     1 dirs with 3 files of Size 2124 Bytes
    A couple of things to note:
    1. FS was erased from previous unlocked test and reset (can tell by the first print directory of file sizes of 19 bytes)
    2. The second print directory shows that 19 bytes were added to the files that were already there which is correct for the correct

    Now if I cycle power off and on you will see the file sizes to to 57 bytes for test1 and test2.txt files and the test3 is incremented by 1024 bytes:
    Code:
    Startup Before LittleFS Begin
    LittleFS Test
    TotalSize (Bytes): 15466496
    After LittleFS Begin
    started
    MAKE files
    printDirectory
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		38
    
     0 dirs with 1 files of Size 38 Bytes
    FILE	temp_test1.txt		38
    FILE	temp_test2.txt		38
    FILE	temp_test3.txt		2048
    
     1 dirs with 3 files of Size 2124 Bytes
    
    --------------
    printDirectory
    --------------
    DIR	structureData1 / 
    	FILE	temp_test.txt		57
    
     0 dirs with 1 files of Size 57 Bytes
    FILE	temp_test1.txt		57
    FILE	temp_test2.txt		57
    FILE	temp_test3.txt		3072
    
     1 dirs with 3 files of Size 3186 Bytes
    
    Disk Usuage:
    Bytes Used: 327680, Bytes Total:15466496
    Bottom line - works as it should

  4. #4
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    10,350
    Downloaded and updated on Windows 10 64 bit, Ubuntu 64 bit and Mac... They all appear to run

    Locked MMod, now back to playing with MTP MSC...

  5. #5
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    15,890
    Release TD 1.56 worked here on IDE 1.8.19.
    ... playing more soon

  6. #6
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Posts
    10,350
    Quick update: Playing with Locked MMOD Did an upload of new program this morning and got the dual led pins blinking for awhile:
    Code:
    05:57:48.224 (post_compile 1): Begin, version=1.56, high-res time
    05:57:48.487 (loader): Teensy Loader 1.56, begin program
    05:57:48.589 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.hex", 171008 bytes
    05:57:48.625 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.ehex", 171008 bytes, and 5152 loader utility
    05:57:48.625 (loader): ehex is valid, key hash: FB63C934 9683889D 3A20DB52 811A0593 83BEA33F 0F810CDF D6AD3C83 5DF1DA1A
    05:57:48.625 (loader): File "SD_Program_SPI_QSPI_MTP-logger.ino.hex". 171008 bytes
    05:57:48.641 (loader): Listening for remote control on port 3149
    05:57:48.641 (loader): initialized, showing main window
    05:57:48.695 (loader): remote connection 1272 opened
    05:57:48.695 (loader): remote cmd from 1272: "comment: Teensyduino 1.56 - WINDOWS (teensy_post_compile)"
    05:57:48.695 (loader): remote cmd from 1272: "status"
    05:57:48.695 (loader): HID/win32:  vid:058F pid:9410 ver:0122  usb:0/140000/0/A/B
    05:57:48.695 (loader): HID/win32:  vid:058F pid:9410 ver:0122  usb:0/140000/0/A/B
    05:57:48.695 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:48.695 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:48.695 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/A
    05:57:48.702 (post_compile 1): Sending command: comment: Teensyduino 1.56 - WINDOWS (teensy_post_compile)
    05:57:48.709 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:48.709 (loader): HID/win32:  vid:16C0 pid:04D1 ver:0281  usb:0/140000/0/1/2/2
    05:57:48.709 (loader): remote cmd from 1272: "dir:C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\"
    05:57:48.709 (loader): remote cmd from 1272: "file:SD_Program_SPI_QSPI_MTP-logger.ino.hex"
    05:57:48.712 (post_compile 1): Status: 1, 0, 0, 0, 0, 0, C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\, SD_Program_SPI_QSPI_MTP-logger.ino.hex
    05:57:48.712 (post_compile 1): Sending command: dir:C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\
    05:57:48.713 (post_compile 1): Sending command: file:SD_Program_SPI_QSPI_MTP-logger.ino.hex
    05:57:48.741 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.hex", 171008 bytes
    05:57:48.756 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.ehex", 171008 bytes, and 5152 loader utility
    05:57:48.756 (loader): ehex is valid, key hash: FB63C934 9683889D 3A20DB52 811A0593 83BEA33F 0F810CDF D6AD3C83 5DF1DA1A
    05:57:48.756 (loader): File "SD_Program_SPI_QSPI_MTP-logger.ino.hex". 171008 bytes
    05:57:48.756 (loader): remote cmd from 1272: "status"
    05:57:48.772 (loader): remote cmd from 1272: "auto:on"
    05:57:48.774 (post_compile 1): Status: 1, 0, 0, 0, 0, 0, C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\, SD_Program_SPI_QSPI_MTP-logger.ino.hex
    05:57:48.774 (post_compile 1): Sending command: auto:on
    05:57:48.775 (post_compile 1): Disconnect
    05:57:48.788 (loader): remote connection 1272 closed
    05:57:51.124 (loader): handle 534
    05:57:51.124 (loader): Device came online, code_size = 100
    05:57:51.124 (loader): Board is: NXP IMXRT1062 ROM
    05:57:51.124 (loader): begin operation
    05:57:51.158 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.hex", 171008 bytes
    05:57:51.181 (loader): File "C:\Users\kurte\AppData\Local\Temp\arduino_build_SD_Program_SPI_QSPI_MTP-logger.ino\SD_Program_SPI_QSPI_MTP-logger.ino.ehex", 171008 bytes, and 5152 loader utility
    05:57:51.181 (loader): ehex is valid, key hash: FB63C934 9683889D 3A20DB52 811A0593 83BEA33F 0F810CDF D6AD3C83 5DF1DA1A
    05:57:51.181 (loader): File "SD_Program_SPI_QSPI_MTP-logger.ino.hex". 171008 bytes
    05:57:51.181 (loader): set background IMG_ONLINE
    05:57:51.194 (loader): nxp_write: success
    05:57:51.194 (loader): HAB locked secure mode
    05:57:51.199 (loader): sending ehex loader utility, 5152 bytes
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): nxp_write: success
    05:57:51.199 (loader): run it..
    05:57:51.199 (loader): nxp_write: success
    05:57:51.209 (loader): ehex loader utility sucessfully started
    05:57:51.209 (loader): end operation, total time = 0.085 seconds
    05:57:51.219 (loader): redraw timer set, image 80 to show for 2000 ms
    05:57:51.374 (loader): HID/win32:  vid:058F pid:9410 ver:0122  usb:0/140000/0/A/B
    05:57:51.374 (loader): HID/win32:  vid:058F pid:9410 ver:0122  usb:0/140000/0/A/B
    05:57:51.374 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:51.379 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:51.379 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/A
    05:57:51.379 (loader): HID/win32:  vid:045E pid:07A5 ver:0797  usb:0/140000/0/9/B
    05:57:53.219 (loader): redraw, image 9
    05:58:27.490 (loader): Verbose Info event
    After this I tried pressing the program button on board and it updated without the dual blinking.

  7. #7
    Senior Member+ mjs513's Avatar
    Join Date
    Jul 2014
    Location
    New York
    Posts
    8,147
    Had the same thing happen to me last night on the locked Micromod. The dual blinking went on for a couple of seconds but then the upload occurred. Attaching the verbose output.
    Attached Files Attached Files

  8. #8
    Senior Member
    Join Date
    Oct 2019
    Posts
    285
    Quote Originally Posted by Paul View Post
    Teensyduino 1.56 has been released
    https://www.pjrc.com/teensy/td_download.html
    There is a slight typo on the download page, the version was not updated in the description:

    Teensyduino 1.55 supports Arduino versions 1.8.5 and 1.8.9 and 1.8.12 and 1.8.13 and 1.8.15 and 1.8.16 and 1.8.19.
    Future versions of Teensyduino will drop support for Arduino 1.8.15
    On Windows, the Arduino installer and ZIP are supported, but the Windows store "app" is not.
    Windows 10 provides much better USB support than Windows 7, 8 & XP.
    On Linux, PJRC tests X86 & AARCH64 on Ubuntu and ARM32 on Raspbian. Other distros may work, but are not supported.

  9. #9
    Senior Member
    Join Date
    Mar 2017
    Location
    Oakland, CA, USA
    Posts
    467
    I'm still having some trouble seeing which bootloader a Teensy 4.1 is on. The Verbose Info from 1.55:

    Code:
    17:57:22.395 (loader): Teensy Loader 1.55, begin program
    17:57:22.474 (loader): Listening for remote control on port 3149
    17:57:22.475 (loader): initialized, showing main window
    17:57:24.882 (loader): Verbose Info event
    From 1.56:
    Code:
    17:58:54.630 (loader): Teensy Loader 1.56, begin program
    17:58:54.684 (loader): Listening for remote control on port 3149
    17:58:54.685 (loader): initialized, showing main window
    17:58:57.479 (loader): Verbose Info event
    (Ref: https://forum.pjrc.com/threads/68748...l=1#post295515)

    Each time I go to the "Verbose Info" menu item under "Help", it merely prints "Verbose Info event".
    Last edited by shawn; 12-28-2021 at 02:16 AM.

  10. #10
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    15,890
    Quote Originally Posted by shawn View Post
    I'm still having some trouble seeing which bootloader a Teensy 4.1 is on. The Verbose Info from 1.55:
    ...
    (Ref: https://forum.pjrc.com/threads/68748...l=1#post295515)

    Each time I go to the "Verbose Info" menu item under "Help", it merely prints "Verbose Info event".
    The version # is shown when Teensy enters Bootloader mode like on upload, not on power up or other log entries as Teensy events are shown.

    > Do a Verify build of Blink.ino or other for the Teensy 4.1.
    > The Teensy Loader will be open and do a 'Log / Clear' on the Verbose info window (makes it easier to find only the line showing the bootloader version)
    > Press the Button on the Teensy for an upload

    :: Or with Teensy Loader active
    > disable the 'Auto'
    > Do a 'Log / Clear' on the Verbose info window (makes it easier to find only the line showing the bootloader version)
    > Press the Button on the Teensy


    Then scan the Verbose output text - or copy to a searchable editor:
    Code:
     ...
    19:21:32.517 (loader): Device came online, code_size = 8126464
    19:21:32.520 (loader): Board is: Teensy 4.1 (IMXRT1062), version 1.07
    ...

  11. #11
    Senior Member
    Join Date
    Mar 2017
    Location
    Oakland, CA, USA
    Posts
    467
    Thanks. I was able to see `Board is: Teensy 4.1 (IMXRT1062), version 1.07`. My Log->Clear menu option, however, is greyed out. Is there a way to enable it? I tried toggling the Auto mode, but the option is still greyed out.

  12. #12
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    15,890
    Quote Originally Posted by shawn View Post
    Thanks. I was able to see `Board is: Teensy 4.1 (IMXRT1062), version 1.07`. My Log->Clear menu option, however, is greyed out. Is there a way to enable it? I tried toggling the Auto mode, but the option is still greyed out.
    Not sure what UI is showing with things 'grayed' out - not that way here in Windows.

    The Clear was just to minimize the verbose chatter to scan for the Version - but the answer was found.

  13. #13
    Senior Member
    Join Date
    Mar 2017
    Location
    Oakland, CA, USA
    Posts
    467
    It's greyed out in the Mac version. Yes, the answer was found, but I'll pose "why is 'Clear' greyed out in the Mac version" as my second question. (I should have said it was the Mac version in the first place.)

  14. #14
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    26,235
    Quote Originally Posted by shawn View Post
    "why is 'Clear' greyed out in the Mac version" as my second question.
    That's a bug, plain and simple, in the Macintosh version of Teensy Loader.

    In the Linux and Windows versions, clicking it just deletes everything from the Verbose Info window. While sometimes convenient if that window has a lot of data and you just want to capture info after a certain point, the lack of this feature isn't considered to be as serious problem. Just to be realistic, this may never get fixed in the Mac version, since that window is mostly implemented by the wxWidgets toolkit rather than specific code in Teensy Loader. I'm not necessarily saying the bug is inside wxWidgets. But I am saying it's a very low priority to fix, and attempting any sort of fix would probably mean a deep dive into wxWidgets code, which realistically means it probably will never get fixed.

    As a workaround, you can save to log to a file, with "Save as..." or by copy to clipboard and paste into another application. Then simply delete all the lines you had wanted to be deleted by the missing Clear feature.

  15. #15
    Junior Member
    Join Date
    Oct 2021
    Posts
    5
    I was randomly trying out 1.56 in a windows vm ( i normally use linux ), and it magically, and without warning, updated the bootloader of my Teensy4.0 from Halfkay Bootloader [0105] to [0107] , which (now i read the release notes) clearly corresponds to bootloader 1.07... this was NOT what i wanted, and completely undesirable to me. Please tell me how to back to the previous bootloader...?

  16. #16
    Senior Member+ defragster's Avatar
    Join Date
    Feb 2015
    Posts
    15,890
    Quote Originally Posted by davidbuzz View Post
    I was randomly trying out 1.56 in a windows vm ( i normally use linux ), and it magically, and without warning, updated the bootloader of my Teensy4.0 from Halfkay Bootloader [0105] to [0107] , which (now i read the release notes) clearly corresponds to bootloader 1.07... this was NOT what i wanted, and completely undesirable to me. Please tell me how to back to the previous bootloader...?
    Yes, the TD 1.56 Loader does that on first exposure.

    Paul the real voice of course - but reverting not likely doable or planned.

    Not sure what the fear or perceived problem is? Have been running 1.07 Beta units here for months and they act just the same as any 'normal production' Teensy - with the exception of not erasing all of Flash on Every upload. But the 15sec Restore will force a full erase, or if that was the worry a way to extend PROGMEM storage over the code could work to force overwriting beyond the used space. Some units could go through (depending on when they were made) a key writing process that would ALLOW (but not require) use of Encoded firmware to upload.

    As far as LOCKING (to require Encoded firmware) - that is not an option on Production boards even if they get the 1.07 bootloader as Production units are Fused such that they are not lockable, or in any way more brickable than units with pre 1.07 firmware.

    Unless the processor on that board was designed and made lockable by design as a separate Lockable product from PJRC - or if DIY made with a Locking PJRC bootloader chip - the ability to require that is blocked when the MCU is first set up by the bootloader with a permanent fuse.

  17. #17
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    26,235
    Sorry, there is no bootloader downgrade process. Once updated to 1.07, there is no path go back to 1.05.

    But why would you want to go back to 1.05 anyway?

  18. #18
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    26,235
    If you haven't written an encryption key into the fuse memory, the only functional difference in 1.07 is how flash memory gets erased. 1.05 would fully erase the program flash before any code upload. 1.07 fully erases the first 512K in normal mode or 1024K in secure mode. Then the rest is erased only as needed in 64K chunks, depending on the size of your program. This lets you use the rest of the program flash for storing files with LittleFS_Program, which you could also do with 1.05 but every upload would destroy the saved files. With 1.07, LittleFS_Program storage persists across code uploads, as long as your filesystem size fits in the remaining space beyond 512K or 1M, and doesn't conflict with your program's size (rounded up to 64K block size). This improved erase also avoids a noticeable lag before uploading to Teensy 4.1 or MicroMod when their flash was previously written with a large amount of data (either code upload or LittleFS_Program data).

    If you do write a key into fuse memory, 1.07 adds a way for Teensy Loader to check that the public key fingerprint inside the chip matches the key used to authenticate your code. It's meant as a safety feature to prevent programming encrypted code which can't possibly be used. If your hardware isn't permanently locked into secure mode (meaning it can run either encrypted or normal code), Teensy Loader will automatically detect the EHEX file can't work and write the HEX file which can.

    If you use Teensyduino 1.53 or earlier, 1.07 is fully backwards compatible.

  19. #19
    Junior Member
    Join Date
    Sep 2019
    Posts
    6
    About a week ago, I installed Teensyduino 1.56 on a brand-new Ubuntu (20.04.3 LTS) installation and it seemed to go well. But the icon to launch the application has since mysteriously disappeared. I've tried reinstalling TD 1.56, carefully following the instructions. Again, the installation seemed to go well. The icon only shows up after a reboot and then, it only works the first time. After that, clicking the icon does nothing. I'm new to Linux and suspect that the problem is me, rather than the new versions of the IDE. Any help would be greatly appreciated.

  20. #20
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    26,235
    Do you know the path where your copy of Arduino+Teensyduino is actually installed? Can you run it by manually navigating there?

    In other words, is the software still installed and able to work, and this is just a problem with one of the many Linux desktop environments not keeping a shortcut icon? Or did something go more fundamentally wrong, where the software can't work if you do something like open a terminal and type "cd <pathname>" and "./arduino"?

  21. #21
    Junior Member
    Join Date
    Sep 2019
    Posts
    6
    Thanks for your help. I found it and when I typed in ./arduino, the IDE flashed on briefly, but immediately disappeared and the following message came up on the terminal.

    Picked up JAVA_TOOL_OPTIONS:
    Incorrect IDE installation folder: Your copy of the IDE is installed in a subfolder of your sketchbook.
    Please move the IDE to another folder.

  22. #22
    Junior Member
    Join Date
    Sep 2019
    Posts
    6
    I FINALLY solved the problem. Just in case anyone else has a similar problem, here is the solution.
    Somehow, I managed to get the path for the "sketchbook" in the same folder as the IDE. The error message (which only shows up if you run ./arduino from the terminal) tells you to move the IDE out of the folder. I have no idea how you'd do that, so the error message is of limited value. However, the web says to load preferences.txt into a text editor and change sketchbook.path = ... to a path that is outside of the IDE folder. The problem I hit was that there are two copies of preferences.txt - one in the lib subfolder of the arduino folder and one in the home/tom/.arduino15 folder. While both are needed for the IDE to run, It is the latter that needs to be modified.

  23. #23
    Is there a known reason as to why USB Type: "No USB" no longer works in 1.56? (Used to work fine in 1.54b7).

    Compiling for Teensy 4.1. Enabled No USB by uncommenting these lines in the boards.txt file:

    Code:
    teensy41.menu.usb.disable=No USB
    teensy41.menu.usb.disable.build.usbtype=USB_DISABLED
    None of my usual 'No USB' sketches are working. Not even the blink example compiles in 'No USB' mode.

    Here's the output errors after a failed compile for the blink example with No USB:

    Code:
    /Applications/Teensyduino 1.8.19.app/Contents/Java/arduino-builder -dump-prefs -logger=machine -hardware /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware -hardware /Users/isaacjacobson/Library/Arduino15/packages -tools /Applications/Teensyduino 1.8.19.app/Contents/Java/tools-builder -tools /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/tools/avr -tools /Users/isaacjacobson/Library/Arduino15/packages -built-in-libraries /Applications/Teensyduino 1.8.19.app/Contents/Java/libraries -libraries /Users/isaacjacobson/Documents/Arduino/libraries -fqbn=teensy:avr:teensy41:usb=disable,speed=600,opt=o2std,keys=en-us -ide-version=10819 -build-path /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787 -warnings=none -build-cache /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_cache_754067 -verbose /Applications/Teensyduino 1.8.19.app/Contents/Java/examples/01.Basics/Blink/Blink.ino
    /Applications/Teensyduino 1.8.19.app/Contents/Java/arduino-builder -compile -logger=machine -hardware /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware -hardware /Users/isaacjacobson/Library/Arduino15/packages -tools /Applications/Teensyduino 1.8.19.app/Contents/Java/tools-builder -tools /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/tools/avr -tools /Users/isaacjacobson/Library/Arduino15/packages -built-in-libraries /Applications/Teensyduino 1.8.19.app/Contents/Java/libraries -libraries /Users/isaacjacobson/Documents/Arduino/libraries -fqbn=teensy:avr:teensy41:usb=disable,speed=600,opt=o2std,keys=en-us -ide-version=10819 -build-path /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787 -warnings=none -build-cache /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_cache_754067 -verbose /Applications/Teensyduino 1.8.19.app/Contents/Java/examples/01.Basics/Blink/Blink.ino
    Using board 'teensy41' from platform in folder: /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr
    Using core 'teensy4' from platform in folder: /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr
    Detecting libraries used...
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/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=156 -DARDUINO=10819 -DARDUINO_TEENSY41 -DF_CPU=600000000 -DUSB_DISABLED -DLAYOUT_US_ENGLISH "-I/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4" /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/sketch/Blink.ino.cpp -o /dev/null
    Generating function prototypes...
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/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=156 -DARDUINO=10819 -DARDUINO_TEENSY41 -DF_CPU=600000000 -DUSB_DISABLED -DLAYOUT_US_ENGLISH "-I/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4" /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/sketch/Blink.ino.cpp -o /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/preproc/ctags_target_for_gcc_minus_e.cpp
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/tools-builder/ctags/5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/preproc/ctags_target_for_gcc_minus_e.cpp
    Compiling sketch...
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/../tools/precompile_helper" "/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4" /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787 "/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/../tools/arm/bin/arm-none-eabi-g++" -x c++-header -O2 -g -Wall -ffunction-sections -fdata-sections -nostdlib -MMD -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=156 -DARDUINO=10819 -DARDUINO_TEENSY41 -DF_CPU=600000000 -DUSB_DISABLED -DLAYOUT_US_ENGLISH "-I/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4" /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/pch/Arduino.h -o /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/pch/Arduino.h.gch
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/../tools/arm/bin/arm-none-eabi-g++" -c -O2 -g -Wall -ffunction-sections -fdata-sections -nostdlib -MMD -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=156 -DARDUINO=10819 -DARDUINO_TEENSY41 -DF_CPU=600000000 -DUSB_DISABLED -DLAYOUT_US_ENGLISH -I/var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/pch "-I/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4" /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/sketch/Blink.ino.cpp -o /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/sketch/Blink.ino.cpp.o
    Compiling libraries...
    Compiling core...
    Using precompiled core: /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_cache_754067/core/core_5a1995182c771da1243827323527d949.a
    Linking everything together...
    "/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/../tools/arm/bin/arm-none-eabi-gcc" -O2 -Wl,--gc-sections,--relax "-T/Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4/imxrt1062_t41.ld" -mthumb -mcpu=cortex-m7 -mfloat-abi=hard -mfpu=fpv5-d16 -o /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/Blink.ino.elf /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/sketch/Blink.ino.cpp.o /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/../arduino_cache_754067/core/core_5a1995182c771da1243827323527d949.a -L/var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787 -larm_cortexM7lfsp_math -lm -lstdc++
    /var/folders/l9/xltrt2yj42v2l7dr42xj_dzw0000gn/T/arduino_build_77787/../arduino_cache_754067/core/core_5a1995182c771da1243827323527d949.a(startup.c.o): In function `unused_interrupt_vector':
    /Applications/Teensyduino 1.8.19.app/Contents/Java/hardware/teensy/avr/cores/teensy4/startup.c:592: undefined reference to `usb_isr'
    collect2: error: ld returned 1 exit status
    Error compiling for board Teensy 4.1.
    I'm slightly noobish, so I really don't understand how to resolve this error.

    My reason for No USB is that it's necessary to use for TinyUSB (as far as I know).

  24. #24
    Junior Member
    Join Date
    Oct 2021
    Posts
    19
    This is all a but much for a 3.1 user. I don't understand what's going on here. I hooked up my Teensy 3.1 board to my iMac and Arduino IDE doesn't see it anymore. Instead I get Teensy 4 Security message. I don't have a Teensy 4 board and I can no longer use the IDE to upload sketches into my Teensy. Is the IDE broken? The Teensy toast? And what's this about a Security Key? What Key? There IS NO key .HEX nor .EHEX that I can see anywhere. Who's doing this and why?

  25. #25
    Junior Member
    Join Date
    Oct 2021
    Posts
    19
    I get a green line then a green box on my Smart Matrix then the SD card gets read and the display program runs behind the green box, about 4X4" in size. Any ideas what's going on here as I can no longer upload anything into my Teensy 3.1 board. (See above message)
    Last edited by FredEBear; 02-09-2022 at 12:11 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •