Teensyduino 1.60 Beta #2

Paul

Administrator
Staff member
Here is a second beta test for Teensyduino 1.60.

Arduino 2.3.x, all systems:
  1. Quit Teensy Loader, if running
  2. Use Boards Manager to uninstall Teensy, if previously installed
  3. Use File > Preferences (Arduino IDE > Settings on MacOS) to install new URL
  4. Press Ctrl-Shift-P (Command-Shift-P on MacOS) click "Arduino: Update Indexes"
  5. Use Boards Manager to install Teensy
Arduino 1.8.x, Linux 64 bit:

Arduino 1.8.x, Linux ARM:

Arduino 1.8.x, Linux ARM64:

Arduino 1.8.x, Windows:

PlatformIO, DIY beta support:


Changes since Teensyduino 1.60-beta1

MacOS arm64+x86_64 universal binary built on Sequioa with Xcode16, but gcc is still x86_64 only
Linux x86_64 built with Ubuntu 22.04, previously was Ubuntu 14.04
Linux armhf built with Raspbian 12, previously was Raspbian 10
Linux aarch64 built with Raspbian 12, previously was Ubuntu 20.04 on nVidia Jetson TX2
Windows built by new machine, but should be same as prior versions
Installers for Arduino 1.8.x use better compression
Fix erroneous "Teensy should be selected from teensy ports" message
MacOS support for Arduino 1.8.19 discontinued
Linux i686 (32 bit) support discontinued
Audio effect envelope: don't re-start release if noteOff() called (Jonathan Oakley)
Audio effect granular: add guard macros (Jonathan Oakley)
Audio effect reverb: fix reverb cut off when incoming data stops (Jonathan Oakley)
 
Last edited:
I updated my build machines for all platforms.

MacOS is the biggest change. If you have a Mac, and especially any older version of MacOS, please give this a try. In theory it should run on all MacOS versions Arduino IDE 2.3.3 supports. In practice... well, you can be the judge of that! ;)

For this beta I tried to limit changes other than the way I build the software, so if there's a problem with any of these new builds, hopefully we can compare with 1.60-beta1.
 
Downloaded 1.60b2 for IDE 1 : Did Keep & Keep - skipped the mark safe :(
Updating IDE 2 to 2.3.3 and updated PJRC JSON

IDE 1.8.19 install went fine

Package index update seems to have repeatedly failed to show 0.60.2 ????

I turned off the AUTO check on start as it makes the IDE 2 very slow to start - so doing the manual Ctrl+Shift+P
>> Not sure it ever completes as bar goes to about 80% and then goes away and the list is never newer even with IDE 2 close/restart

<EDIT>: Just seeing new pkg JSON ...
 
IDE 2.3.3 package for 0.60.2 installed with updated JSON URL:
Tool teensy:teensy-compile@11.3.1 already installed Tool teensy:teensy-discovery@1.59.0 already installed Tool teensy:teensy-monitor@1.59.0 already installed Downloading packages teensy:teensy-tools@0.60.2 teensy:avr@0.60.2 Installing teensy:teensy-tools@0.60.2 Configuring tool. teensy:teensy-tools@0.60.2 installed Replacing platform teensy:avr@0.60.1 with teensy:avr@0.60.2 Uninstalling teensy:avr@0.60.1 Running pre_uninstall script. Platform teensy:avr@0.60.1 uninstalled Uninstalling teensy:teensy-tools@0.60.1, tool is no more required Running pre_uninstall script. Tool teensy:teensy-tools@0.60.1 uninstalled Uninstalling teensy:teensy-compile@11.3.1, tool is no more required Uninstalling teensy:teensy-discovery@1.59.0, tool is no more required Uninstalling teensy:teensy-monitor@1.59.0, tool is no more required Configuring platform. Platform teensy:avr@0.60.2 installed
 
Windows 11 : Both IDE 1 & 2 built Code4Code [4,000 func()'s calling func()'s running from Flash)- uploaded and ran on T_4.1 without issue:
Code:
Memory Usage on Teensy 4.1:
  FLASH: code:1214588, data:328112, headers:8656   free for files:6575108
   RAM1: variables:83424, code:45992, padding:19544   free for local variables:375328
   RAM2: variables:12416  free for malloc/new:511872
 
So no more IDE-based secure Teensy programming on the Mac? I believe the tool for this is a Java program? Time to dive in…

Update: It seems like the teensy_secure program can do these tasks.
 
Last edited:
Just finished installing beta2 on 2.3.3 and 1.8.19. Downloads were fast! and both installed with no issues. Just starting day so will test more but first compile went well with warnings. And yet no message with 2.3.3

Code:
Fix erroneous "Teensy should be selected from teensy ports" message
 
Installed both:
IDE2 2.3.3
Use File > Preferences (Arduino IDE > Settings on MacOS) to install new URL
Was not clear if this was to add the new URL or to replace the current teensy URL.... I assumed replace.
Sort of curious on why new URL?

Minor side note: if you should update the picture on the Teensyduino install page, which currently shows Teensy, but the
newer updates to your URL shows Teensy (for Arduino IDE 2.0.4...) no big deal, just mentioning, because I noticed.
1727527497758.png
1727527533524.png


As mentioned in I think another thread, missing icons for Program and reboot?
1727527645689.png


As @mjs513 mentioned:
Fix erroneous "Teensy should be selected from teensy ports" message
Not sure what that meant? If I try to do an install over the com port:
1727527790234.png



1727527841995.png


The reason I sometimes use COM port instead of the Teensy port, is that using the Development boards (DB4, 4.5, 5)
with variant stuff, the DB5 will not reboot to upload a new sketch. Does work to hit the program button. But with native
com port selected works fine.

Arduino 1.8.19:

Downloaded and installed. Note: As @defragster mentioned, I again had to Tell windows again to keep the file twice, but
at least this time Norton did not error out...

All for now
 
Installed on older mac:
1727531505216.png

IDE 2.3.3 - appears to run fine.
Teensy app has icons:
1727531282997.png

Was able to program MMOD.
Shows same message as windows if the teensy serial is not selected
 
This message is supposed always appear when you upload with "Serial ports" and never appear when uploading with "teensy ports".

1727552002624.png


It was sometimes appearing even when "teensy ports" was used. There are many cases depending on which version of teensy_discovery, which version of Arduino IDE, and which operating system. I tried to cover all the cases this time, but there still might be some I missed.
 
Here is a second beta test for Teensyduino 1.60.

Arduino 2.3.x, all systems:
  1. Quit Teensy Loader, if running
  2. Use Boards Manager to uninstall Teensy, if previously installed
  3. Use File > Preferences (Arduino IDE > Settings on MacOS) to install new URL
  4. Press Ctrl-Shift-P (Command-Shift-P on MacOS) click "Arduino: Update Indexes"
  5. Use Boards Manager to install Teensy
FWIW, I am running Arduino 2.2.1 on a Fedora 39 system. I have not been able to run either 2.3.2 or 2.3.3 (they seem to hang).

I currently 0.60.1 of Teensydunio installed. I went into the boards manager package, and there is no option for loading 0.60.2. I tried re-installing Teensydunio 1.59.0 and then went back to the update tab, but 0.60.2 is not present.
 
there is no option for loading 0.60.2

Use File > Preferences to edit the URL. This beta has its own URL separate from the normal one.

Most future betas will have their own URL, partly because it's the only way to test the port discovery and serial monitor utilities, partly because it keeps Arduino IDE from nagging you to go back to 1.59, and partly because I finally wrote a script and makefile rules which automatically creates the JSON index this way (all prior betas and releases have involved a lot of manual editing).
 
Hey there! I have noticed that I can no longer install any Teensy boards under Arduino 2.3.3 on MacOS 14.6.1 running on an M2 system. I used to be able to on earlier Arduino IDEs. I'm seeing the following errors get logged (this is for 1.59, but same is happening with the beta):

Code:
Downloading packages
teensy:teensy-tools@1.59.0
teensy:teensy-compile@11.3.1
Failed to install platform: 'teensy:avr:1.59.0'.
Error: 13 INTERNAL: Server responded with: 404 Not Found

Offhand I am currently suspecting that the new IDE is looking for a new host instead of "x86_64-apple-darwin14".
 
Did you try this beta version?

I personally tested it on a M3 Macbook Air with MacOS 14.5 (Sonoma) which has Rosetta 2 installed, and also on a M2 Mac Mini with MacOS 15 (Sequoia) which lacks Rosetta. Everything worked fine on a M3 machine. It did install and does detect Teensy hardware on the M2 machine, but when you try to compile programs it gives an error about bad binary format.
 
Also carefully check Settings for the URL format. If you have any other boards than Teensy, for the sake of troubleshooting copy the whole thing to clipboard and paste into a text file for safe keeping. Then delete it all, and starting with a clean slate copy only the Teensy URL.

The 404 Not Found error is almost always due to a typo, usually with the character separating the URLs. For example, here are some the recent 404 errors the PJRC server has logged.

Code:
{IP number redacted} - - [29/Sep/2024:04:19:45 +0000] "GET /teensy/package_teensy_index.json; HTTP/1.1" 404 3823 "-" "arduino-cli.exe/0.35.3 daemon (amd64; windows; go1.21.1) Commit:95cfd654"

{IP number redacted} - - [29/Sep/2024:07:45:14 +0000] "GET /teensy/package_teensy_index.json%5C HTTP/1.1" 404 3823 "-" "arduino-cli/1.0.4 (amd64; windows; go1.22.5) Commit:a0d912da"

{IP number redacted} - - [29/Sep/2024:09:03:13 +0000] "GET /teensy/package_teensy_index.json%20https://espressif.github.io/arduino-esp32/package_esp32_index.json%20https://dl.espressif.com/dl/package_esp32_index.json HTTP/1.1" 404 3823 "-" "arduino-cli.exe/0.35.3 daemon (amd64; windows; go1.21.1) Commit:95cfd654"

{IP number redacted} - - [29/Sep/2024:11:10:53 +0000] "GET /teensy/package_teensy_index.jsonhttps://raw.githubusercontent.com/mikaelpatel/Cosa/master/package_cosa_index.json HTTP/1.1" 404 3823 "-" "arduino-cli.exe/0.35.3 daemon (amd64; windows; go1.21.1) Commit:95cfd654"

{IP number redacted} - - [29/Sep/2024:11:38:54 +0000] "GET /teensy/package_teensy_index.jsonE_Board_Manager/package_sparkfun_index.json HTTP/1.1" 404 3823 "-" "arduino-cli/1.0.4 (amd64; windows; go1.22.5) Commit:a0d912da"

{IP number redacted} - - [29/Sep/2024:20:46:28 +0000] "GET /teensy/package_teensy_index.json;https://adafruit.github.io/arduino-board-index/package_adafruit_index.json HTTP/1.1" 404 3823 "-" "arduino-cli/1.0.4 (amd64; windows; go1.22.5) Commit:a0d912da"

{IP number redacted} - - [29/Sep/2024:21:39:34 +0000] "GET /teensy/package_teensy_index.json;https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json HTTP/1.1" 404 3823 "-" "arduino-cli.exe/0.35.3 daemon (amd64; windows; go1.21.1) Commit:95cfd654"

You can see the errors are due to an extra trailing character or the person typed the wrong wrong character between 2 URLs and Arduino IDE / CLI is treating them as 1 long combined URL, which of course does not work.
 
Last edited:
Hmm.... thinking about this a bit more, I wonder if there's a way to use Apache's mod_rewrite to "fix" these bad URLs?

Obviously we can't do anything about the human errors where Teensy's URL gets appended to some other URL, but these cases where Arduino software contacts the PJRC server, there ought to be some why we could at least respond with the proper data as long as the URL begins with all the right stuff.
 
I have it sorted now. I put a http proxy in the middle to see what it was barfing on. It was successfully grabbing the /teensy/package_teensy_index.json from the server, but then still reporting a 404 error with no other network accesses happening. Turned out that I needed to remove my current Teensy board and restart the Arduino IDE. Then it downloaded it no problem. Didn't need to touch the url I had in settings. Odd that the board manager would report a 404 even though there was no associated http request. Thanks for the assist and making the Teensy board! I has been the backbone of my products since 2017.
 
Yeah, looks like we're going to need a VS code extension.

Well, after spending all weekend learning Typescript, I started a VS code extension which can do the key generation for Lockable Teensy. Here's a screenshot.

1727664471149.png


In anyone's curious, here's the source code so far.


Everything interesting is in src/extension.ts and package.json. Rest is just boilerplate stuff created by npm tools.

This also requires an updated copy of the teensy_secure utility. If anyone wants to compile and try this extension, just say the word (and which operating system) and I'll make a copy of teensy_secure for you. The update just adds 1 more simple command to put the full pathname of the key.pem file.

More work remains to be done on the pathname. Currently it all depends on a preferences file created by Arduino 1.8.x. Soon I'll add more inside teensy_secure to look for Arduino 2.x.x config in arduino-cli.yaml. I'm still trying to decide on logic to use the Arduino 1.8.19 vs Arduino 2.3.3 sketchbook locations, but the general idea is to have it implemented only by teensy_secure and the plugin queries it to get the pathname.

Right now the plugin is only usable with Ctrl-Shift-P and then run its commands. The key generation command is the only one implement so far. Once I figure out how to make the extension open a new window, I'll implement the 3 sketches.

As you can see in the screenshot, my hope is to build a GUI like we have in Arduino 1.8.19 using the side bar. Right now it's just blank space if you click that little key icon. The top menu is unintended and will go away, once I figure out how. The GUI will be accessed by clicking the key icon on the left side (which should only appear when a Teensy 4 board is selected, more TS and Arduino API learning needed). My hope is to eventually replicate the Teensy 4 Security dialog we have with Arduino 1.8.19. More Typescript and VS code learning to do.....
 
Last edited:
I'm getting a lockup with V2.3.3 and Teensy 1.5.9. I have only the teensy line in preferences and everything worked before the IDE update. When first started, the board index message comes up and never finishes. It also blocks any attempt to verify and upload. No message appears in the output window. I can make it work by going to Tools/Ports, select the wrong item then re-select the right one and it works. This happens every time I start the new IDE.
 
I'm getting a lockup with V2.3.3 and Teensy 1.5.9. I have only the teensy line in preferences and everything worked before the IDE update. When first started, the board index message comes up and never finishes. It also blocks any attempt to verify and upload. No message appears in the output window. I can make it work by going to Tools/Ports, select the wrong item then re-select the right one and it works. This happens every time I start the new IDE.
I assume you posted this as well on the Arduino forum?

A few times in the past I ran into issues like this, I sometimes used the sledgehammer apprach to fix.
But you might try subsets or the like... Good luck

Delete the Arduino15 folder (I usually rename it to start off...), I clear out the caches.
<temp folder>/Arduino/ ...

Delete there other caching data... This is user Perts workaround on an issue I had that details were not picked up when you change board.txt or platform.txt...
  1. Select File > Quit from the Arduino IDE menus if it is running.
  2. Delete the "User data" folder:
    • Windows:
      • C:\Users\<user name>\AppData\Roaming\arduino-ide\
    • Linux:
      • ~/.config/arduino-ide/
    • macOS:
      • ~/Library/Application Support/arduino-ide/
Edit: last resort, I rename/delete my sketch folder, or at least the libraries and hardware folders under the sketch folder.
 
Last edited:
I dumped two folders of nearly identical names. One was log data and the other was app data. It may have been the first time after boot that was bad. I won't be able to test that part until tomorrow. I have two remote links running to radio transmitters and can't lose the connection until tonight. Will post result tomorrow.
 
The fix appears to be removing the Teensy library and re-installing. However, the un-installer script hangs up so you have to kill the IDE after a few minutes, restart, then install the library. It's still V1.5.9 but it has a different name in the list. I rebooted the PC to be sure that was not part of the problem.
 
Back
Top