This sort of error usually means poor quality USB signals. Circuitry connected to Teensy which draws too much power can also cause trouble.
Try a different USB cable / hub / port / computer. If possible, disconnect...
Personally, I don't tend to think of the microcontroller market and dev boards as a war or conflict.
And yeah, since the beginning with Teensy 1.0 in 2008, the situation has always been that you could get cheaper...
You can't use a function that takes inputs with IntervalTimer.
Well, yes, you can if you use that approach to rewrite IntervalTimer. It is indeed possible to create something like IntervalTimer, but more...
Except for the harmless case of trying to access the IMXRT chip too early and just retrying moments later, every problem has been a case of the bootloader was relying on the many things the Teensy 4.0 & 4.1 test...
In theory, you could connect resistors in a R-2R ladder or just binary weighted to several pins and write 8 bit numbers to a native port. You'd probably set up a timer to trigger a DMA channel to copy bytes from a...
After uploading, the bootloader chip uses the hardware reset signal to fully reset the main processor. The serial port hardware is supposed to be fully reset.
Let me answer now with another question. How could you...
Fixed 1 more very minor issue. Sometimes after loading a very small program, the bootloader would attempt to talk to the IMXRT chip before it was really ready. This is really a non-issue, since it will just retry and...
Yup. These are all the boards I've tested in one way or another over the last several days. All are in working condition for reuse in projects, but once the fuses are altered, they're no longer a valid test for the...
Starting another round of (hopefully final) late night testing.
For a visual idea of how it's going... here's an untested virgin Teensy 4.1 with its MKL02 chip removed and a freshly programmed MKL02 about to be...
Still yet another update...
For the last couple days I've been searching for the cause of a strange startup bug, going over everything in the bootloader. But it turned out to not be a booloader problem at all. ...
Looks like it's working but you're printing the wrong thing in loop().
Run this...
#include <DMAChannel.h>
#define SAMPLES 128
__attribute__((aligned(32))) static uint32_t fm_tx_buffer;
According to the data sheet on page 14, this is a 20ns access time part. A slower (presumably cheaper) version exists with 30ns access time, which is probably a sign whatever you're trying to reverse engineer is using...
It is indeed headless, but only if you run it with the "--dir=" option as documented on the web page under "Command Line Install". If you omit that command line arg, it will run with the GUI.
...
Maybe this should be a new thread, but I'll just briefly mention my hope for WebHID to become officially supported by Chrome and hopefully other browsers.
https://web.dev/hid/
Then it will become possible to make...
Wow, that's quite a statement to make!
The Teensyduino installer provides that "headless" non-GUI install option specifically so you can automate adding Teensy's files to a copy of the Arduino IDE.
Your...
Check out the "Command Line Install" info on the Teensyduino download page (scroll down... it's after the GUI installer screenshots)
https://www.pjrc.com/teensy/td_download.html
We currently do not support...
Officially, no. The 2nd USB port is only supported in USB host mode.
Unofficially, I believe WMXZ published a library with the normal device mode code converted to use the 2nd USB port. As I recall, it was only USB...
Can you give me a small self-contained program (using only libs Teensyduino installs) which I can copy into Arduino (not PlatformIO) to reproduce the problem?
To specifically answer your question:
...
Windows doesn't allow programs to write to the folders where the APP software are stored, even if run with admin privilege.
As Defragster explained, Teensyduino needs to install patches to the Java code.
With...
Yes, but you need to use these longer pins and these sockets (2 of each):
https://www.pjrc.com/store/header_14x1_d.html
https://www.pjrc.com/store/socket_14x1.html
These allow the longer board to mount higher...
Usually this error happens on Linux when attempting to install into a distro-provided copy of Arduino.
Only the original Arduino IDE from Arduino.cc website is supported. The many modified copies from Linux distros...
Looks like this should be fairly straightforward.
I've learned the hard way (many more times than I'd like to admit) about putting too much work into supporting a new platform or new tech before it really offers...
Did you create a "portable" Arduino IDE and try installing Teensyduino into that copy? That ought to be the simplest way to get Teensy working.
To fix this problem affecting all Arduino copies with any board, you'll...
Linux on Teensy would be somewhere between "not worth the incredible effort" to "pretty much impossible".
There is no MMU, so you're immediately resigned to not-so-useful ucLinux. The best case (but unlikely)...
Yet another update - programmed 3 chips today and soldered them to virgin boards. The bootloader comes up and works with Teensy Loader, but still some issues remain with booting up in certain cases. Still more work to...
Follow these instructions:
https://www.arduino.cc/en/Guide/PortableIDE
The very first step says "a compressed version of the Arduino IDE according to your OS", which for Windows means you download the ZIP version...
Click Tools > Boards. Whatever it shows, select a non-Teensy board like Arduino Uno. Wait just a moment while Arduino updates itself. Then click the menu again and select Teensy 3.6.
Arduino also has a special...
On the serial device raw mode, the Linux native functions are tcgetattr() to fetch the serial port parameters, cfmakeraw() to change the setting in the "struct termios" data, and tcsetattr() to write it back to the...
To check a digital signature, you need the public key associated with the private key which was used to generate the signature. The public key isn't secret. You can put a copy of it into the firmware image. The...
Just a blind guess, since we can't see this C++ code, but a problem which has come up many times before on all Linux system is "unix line discipline". Basically, you need to configure the serial device to use "raw...
Did you install the udev rules? Is ModemManager interfering? Those are the 2 most common problems on Linux systems.
I personally use Ubuntu 18.04 and it works great. I don't have any systems yet running 20.04.
...
Didn't see any mention of config fuses or internal flash. Maybe there's some way to do security without internal storage of a secret key or hash of a public key?
I didn't see any mention of flash encryption, firmware authentication, or other code security features. Kinda makes me wonder if they'll be able to sell these microcontrollers to traditional commercial users, or if...
I don't understand what this means? Didn't see anything like that in the datasheet.
The SWD does have a feature to allow more than 1 (perhaps up to 7) of these chips to be accessed on the same SWD signals.
I spent a couple hours reading parts of the datasheet. It's refreshing how well written it is, much nicer that what we get from NXP, Atmel/Microchip and ST. I probably read & skimmed less than 100 of the 636 pages.
...
Pico does indeed look really interesting. I've only just learned about it minutes ago. So far I don't know much about it. At only $4, it certainly is much cheaper! It's said to be Cortex-M0 at 133 MHz, so you can...
Yes, on Teensy 4.0 & 4.1, you can remap to any digital pins, even less than or more than 8 pins if you like.
In Arduino, click File > Examples > OctoWS2811 > Teensy4_PinList to see how.
On Teensy LC & 3.x,...
FWIW, the Teensy 4 experimental ADC code uses 4X oversampling and a FIR filter, but still lacks (useful) DC removal and the resampling to 44.1 kHz is crude rather than proper interpolation. The FIR coefficients...
AltSoftSerial does not work on Teensy 4.1. The main reason is a belief that 8 serial ports are enough for anyone (kinda like 640K on old PCs....) Likewise, SoftwareSerial when used with non-serial pins has limited...
Here are the 2 OSH Park links for CS42448 hardware.
Teensy 3: https://oshpark.com/shared_projects/2Yj6rFaW
Teensy 4: https://oshpark.com/shared_projects/gVFy0fWQ
ADAU1966A works with TDM output. So far only tested with Teensy 4.0 & 4.1, but almost certainly works with Teensy 3.x.
https://oshpark.com/shared_projects/O7iqdcLr
SPH0645 works, but requires a software filter to remove DC. I put an example in the library some time ago. File > Examples > Audio > HardwareTesting > Microphones > SPH0645
Edit: MP34DT01-M (PDM) definitely...
ADC input on Teensy 4.0 is still experimental and currently only supports mono. It sort-of works, but probably not well enough to be useful for most projects.
If you or anyone else wants to dive into the ADC code, I...
PCM1802 should probably link to this page.
https://www.pjrc.com/pcm1802-breakout-board-needs-hack/
In addition to the PCB error on the most common breakout board, the FSYNC signal has been a confusing point.
Yet another update... doing more testing. This morning I found (and fixed) a timing issue with initializing the flash chip's non-volatile status2 register. This is another place where the Teensy test fixture...
Any use of pinMode will do this. It completely reconfigures the pin, overwriting the previously set interrupt config.
Maybe pinMode should check for this case? I'm also considering adding a pinModeFast function,...
I copied your code into Arduino, but it doesn't compile. Stuff is missing. See below....
Since you already have the hardware wired up, try opening File > Examples > Encoder > Basic and just change the pin...
Another quick update - all the new code is in. On a virgin board, the fuses IMXRT fuses are set the first time the MKL02 talks to it. The initialization delivers a unique ethernet mac address as well. The flash chip...
Maybe move stuff like this back to setup?
AudioMemory(20);
sgtl5000_1.enable();
sgtl5000_1.volume(defaultVolume);
If that doesn't fix the problem, just keep moving more stuff back to the main...
Maybe you're using the Wire library? (can't tell from only a quick look)
Wire uses pin 18 & 19.
Again, details here:
https://www.pjrc.com/store/teensy3_audio.html
If using Teensy 3.x, use of pin 22 would also conflict. AudioOutputI2S uses pin 22 for data output on those boards.
Just move those encoder signals to unused pins and odds are good everything will start working.
...
Can you reproduce the problem with a simpler program? This one appears to depend on MegunoLink.h, Display.h, Filter.h - maybe other stuff?
Maybe try testing with the Arduino IDE and the Encoder library examples? ...
FWIW, the blink program we pre-load on every Teensy is slightly more than it seems. It's actually this code:
https://github.com/PaulStoffregen/USB_Tester/blob/master/extra/USB_Tester_Blink.ino
(Edit: looks like...
Python is by far the most requested interpreted language. I know you love Forth, but I hope you can understand that viewpoint is relatively rare among the people who buy & use Teensy.
Are you sure it's really a 4.7K resistor?
When we've seen problems like this before, with intermittent communication having CRC errors, the cause was a much higher resistor value mistakenly used instead of 4.7K.
...
Not possible. Many of the required signals are not accessible.
But you can add QSPI PSRAM.
https://www.pjrc.com/store/psram.html
The raw performance for cache misses is obviously lower for 4 bit QSPI compared...
Well, yes. You might guess that from "Posts" count. In fact Frank has a long history of contributing not just good ideas, and a lot of pretty amazing code. So his voice & opinion does carry quite a bit of weight...
Maybe consider sharing your usb_desc.h file? Might help others who find this thread.
If using Quick Reply, click "Go Advanced" to get the full editor which lets you attach a file to your message.
Yes, but you will need to edit usb_desc.h to create a custom USB config. See the comments in that file for details.
Remember there are 2 copies of this file, one for Teensy 3 and the other for Teensy 4, so make sure...
Merging and testing MTP and LittleFS pull requests is at the top of my priority list for after the T4 bootloader chip “soft” release. Sorry I can’t do it now... really want to. But so many people have been waiting for...
Yes, very likely.
Look for problems near pin 8. If stray solder got onto the pins of that little chip near pin 8, it would cause this sort of problem.
And just to be clear, this problem almost certainly means the...
I do have a plan (kinda 2 plans), but so far haven't written anything....
1: For the wav file player and other file-based audio library stuff, I'm planning to add a useFilesystem(FS &filesys) function, which would...
It's not going to do anything so complex. And even if it did, the nature of most failures is that you can't attempt the next stage anyway. If communication with the IMXRT fails, there's no way to check whether the...
Google search for "DDI0403E". If Google doesn't find the PDF, click the link to ARM's website, then click "Download" to get the PDF.
Once you're viewing the PDF, turn to page B3-602 for the AIRCR documentation.
It's supposed to "just work" if you change to that folder and just run "make" with all the files still located in the places the installer wrote them.
I can understand why you probably want to copy and arrange...