There is a memory thread - search forum for imxrt-size - details there may be helpful, also that exe imxrt-size will spit out info on what is allocated where at compile time. I posted an output of that in the 1.49 beta...
OK, that cleared many things for me already.
The thing I was mostly concerned about in the "bare minimum" setup was damaging or locking up the hardware by leaving something in an uninitialized state (not sure if...
I wrote a full library that does this with its own midi editor that is scalable and the editor is web based with also a desktop app running on electron. All done with sysex for communication, the library handles...
Technically, the linker only creates symbols used by startup.c. Compiling & linking your program results in a HEX file with data that goes only into the flash memory. All configuration of how the RAM gets used is done...
Yes, the documented memory layout is based on the defaults you get from startup.c and imxrt1062.ld.
But to some extent, it's also based on what the hardware provides. No matter what you do in software, the hardware...
OCRAM is all open in the TD 1.48 - for pending faster USB in TD 1.49 it looks like 12 KB is allocated to USB buffers for DMA access. When that is complete USB will be optional and turning it off should put that back to...
My son set me up on platformio with atom. I was amazed at how much more I could get done, vis-a-vis the Arduino IDE, on a Teensy 3.2. When the Teensy 4.0 came out, I redesigned my board for that (lots more rpms under...
OK, thanks for the info. I'll look around.
One more thing: when a new program is flashed onto the board, it's only writing to the flash, right? So technically I could instruct the linker to not cause anything to be...
Again hard to say what all you need or don't need. Or what your plans are.
I personally just use the Arduino setup, which is fine for the things I wish to do.
Understanding the board. I assume you found the...
I was playing with HTML today... didn't have a MIDI capable browser so I focused on building the string to paste into a MIDI utility... just leaving the WIP code here for further development.
When I'm at home with...
Hello,
I'm working on a project around the Teensy 4.0. The platform seems to be really powerful, but I wish the different features were better documented. For example, I managed to figure out how to do direct GPIO...
Get a large usb hub and run tycommander to manage and deploy to many teensies. I developed a custom usb backplane to manage and Maintain firmware to my t3.2 boards.
Just a quick status. Left it on for 4 hours last know. PC went to sleep. When I woke it up it was still running and spewing data. The processing sketch picked up as well.
@KurtE
Sorry for the delay but its probably not a bad idea. As we get more into the pins configs it will save from having to copy it in the libs all the time.
Glad you added xbara2 and xbara3. So far haven't had...
I've had a not-completely original idea that I've been kicking around for a while...
The Commodore 64 was designed to allow an alternate processor (specifically the Z80) to take over the bus and replace the 6510...
The code in the link above :: pjrc.com/threads/48450-uNav-AHRS?p=168449&viewfull=1#post168449
Puts the : attachInterrupt(digitalPinToInterrupt(GPS_SRX), GPS_serialrx_isr, RISING); - Directly on the Rx pin and it does...
That's the schematic for the Teensy 3.6, not the ref board. The big difference is the pins on the K66 are numbered for BGA and not the LQFP that's on the ref board. Ref board uses MKL04 instead of MKL02 that's on the...
Yes, I agree that it is indeed a good idea detach the interrupt on the RX watch pin when it's triggered, so it's not triggered on all the other data transitions.
Side question: You said: "Rx as a watch pin". Do you...
Thank you all for the suggestions. I will report back if I know more. Hopefully this crashes again in a timely fashion. My plan is to try one thing at a time until crash or "timeout" of a few days. This could be a...
@mjs513 - will take a look..
Here is a sublimetext mucked with table for XBar1...
Wonder this would be valid/reasonable addition for imxrt.h? And if so do I need to do XBAR2...
// XBAR1 Inputs and Outputs...
Don't update to Catalina. But DO run the 1.49-beta1 for Catalina on your Mac running Mojave. Also run the normal 1.49-beta1, where you install it into a copy of Arduino 1.8.10.
Those 2 are pretty much identical,...
I will try this too. I'm likely to copy files over my PlatformIO install too. Let's see if this approach with PlatformIO is viable...
I haven't switched to Catalina yet because of the 64-bit-only support. I still use...
I should add: I'm seeing this with Teensy 3's too, as of late. 3.2 and 3.5, so that probably narrows it down to my machine and nothing anything the Teensy is doing.
Have you tried with 1.49-beta1? Either the normal way or this build for Catalina? (which should work on Mojave)
The USB device code has some very substantial improvements in 1.49-beta1. The raw USB speed is...
@KurtE, @manitou, ...
For xbara1 stuff you can check out how I did I set it up for the encoder library. Made it pretty general or maybe not: https://github.com/mjs513/Teensy-4.x-Quad-Encoder-Library.
As for...
Hi Paul, any update on the USB type selection for Teensy 4? I got Teensy4 + Audio board to use for Line in to USB Audio and realized it doesn't work. Basically I need the USB > Audio. Any estimate on when this feature...
@mjs513, @PaulStoffregen @manitou, ...
Thought I would see how hard it is to do ADC using DMA at some specific sampling rate, Example for trying to guess if an power is running to a well pump, so with T3.6 I setup...
Another data point: I use platformio on macOS with T4 and have never had a system crash.
Also, can you reproduce the problem _without_ reprogramming the teensy?
Yep, this is a hard one because it's very difficult to reproduce. I'll take your suggestions and do the best I can to figure out what the HEX file was, which step in the procedure was happening, etc., and then re-try...
Setting up the 'Rx' as a watch pin served the desired purpose of seeing the Start of data bits in that case, so no need for low level UART operation was needed in that code. And with only 5 or 10 messages per second...
That is more than a simple blink ... so added details might be helpful. Also interesting if the same process using the standard IDE install with known TeensyDuino can reproduce - it may be T4 or PlatformIO interaction...
ok, so i should type cast the void pointer as i pass it my function in main that should help ? i've checked and it all looks like uint8_t data types anyway.
I was wondering if I'm using the pointer correctly in my...
And you also can get into problems if you use an unaligned pointer to load up multiple bytes. As I recall there are a few bytes in the Teensy 3.2 address range where doing an int load just does not work.
And there...
Thank you both for attempting to help me.
@defragster - I'm running tests using a development version of my TeensyDMX program, but I have seen some panics a couple of times when testing something simple (10's of...
You need to copy the arm_math.h, arm_const_structs.h and arm_comman_tables.h to the teensy ".../cores/teensy3/" directory in Arduino renaming or removing the old arm_math.h and arm_comman_tables.h. Then replace or...
It turns out that a lot of decent timing information can be gleaned with just the UART signals. (Verified with a scope and comparing with ostensibly-measured values.) I was avoiding using a separate pin (I'll call it a...
ok think I sorted it, I deleted some lines as per: https://forum.pjrc.com/archive/index.php/t-34685.html and linked C++ via boards.text (teensy31.build.flags.libs=-lstdc++)
touch wood I haven't tested on teensy yet,...
Haha, no problem.
So the incoming audio is a human voice that you are trying to detect what frequency they are signing at? Not sure how you would "re-start the cycles" but you could look at source code and add a...
Good Morning @KurtE - days are all beginning to merge into one.
Solved my issue to get the current bits for adiv and clk and incorporated into the function. I also just pushed it to GitHub.
Cheers.
Hi @mjs513 - Yep more coffee (Feel free to PR it)! You probably know more about all of this than I do!
@jonr - DMA does not look too hard to add here... Again @manitou has example app, which I will try out soon
That looks better.
Yes, that would be a scope problem. The variables defined inside setup() are only in scope for that method, and once that method is finished executing, they're no longer in scope... and could no...
Thanks wcalvert! Like this? Quick question, I first tried putting those lines in setup(); and it didn't work until I moved them outside of the loop and setup functions. Is that a scope thing? Thanks for the advice!
...
@KurtE
Got the hack working, now you have more options than you can shake a stick for adc clock speed. Only thing I need to fix is:
//ADC1
//NOTE: Only works once - have to change ADIV and ADICLK to get current...
Hi
I just finished my Electro-Mechanical (Electro-Acoustical Synthesizer)
THE ROTORPHON :)
Based on a Teensy 3.2 with a couple of ULN2003A and L293D, it controlls some Motors and Coils.
Two stepper motors that...
In the past, I've found it useful to set up the ADC to continually (as fast as possible) DMA a value into a single location. Then just read that location whenever your code needs an analog read. More consistent with...
I am trying to use a teensy 3.6 or 4.0 (I will be able to use either) to rapidly store (12bit) ADC data. I will be measuring voltage readings at a rate of ~10kHz. the thing is I want to be able to store this data. With...
@mjs513 @manitou... Yep I did clone that project down to my disk as well and I am curious about how one sets up to do DMA from the ADC at a specific input rate.
That is with my always never completed well monitor...
@KurtE
Working on the clock module now - not sure I am doing it right I will post when I get done. Trying to understand as I go then next up I think is the Compare which is a bit more complicated since the DAC out are...
@mjs513 - Me too, but when I did not find it in RM, decided to look.
Just pushed up a quick and dirty ReadMe.md file which is a copy of pedvide's Readme with a warning at top that this is a WIP and who knows what...
Others can maybe give you more exact answers to this...
But void* just means it is a pointer to something... So often times with functions like this, I will then cast it to something like uint8_t* to process.
...
Hi,
I'm using the teensy audio adapter with teensy 3.1
I'm having some sound output issues , the sound output from the audio board is totally distorted when I apply the NeoMatrix library
Is the NeoMatrix slowing...
@KurtE et.al.
Trying to understand a bit more about the ADC clocks. Understand about using the IPG clock (also more noisy) but a bit confused on the Async Clock (ADACK). According to RM the ADACK is a internal...
Hi, I would very much appreciate any help or guidance anyone can bring to bear on getting a better understanding of how Paul's CryptoAccel library works and how to use it for the purposes of encrypting data which was...
Hello everybody,
I was asked to make a project which requires the fastest access possible to a RAM (write and read).
I am still in a study phase and at the moment it seems to me that the SEMC interface on a Teensy...
Paul - minor update ... Interedted to hear if you try this sketch and see similar or different behavior.
I finally stopped the tSerMon - running fine - - at 348 minutes. TyComm dies at 19 minutes then 119 minutes -...
I am struggling at the moment to integrate some 3rd party code into a project I’m working on. The 3rd parties code is written in C and my main code is CPP. I’m struggling with the pointer references and I’ve still a lot...
Thanks for that Paul. I wound up using an AD420 which should do the job for the 16bit for a couple of bucks more than the DAC8565, er..bit and a couple of 12bit units I got from China for next to nothing. No loss...
You're welcome. It was surprising how little there was out there about control voltages but since it is basically an old analog synth consideration it isn't that much of a surprise really. Sheesh! Kids today just...
Hi,
We have developed a product using the teensy3.5 and demos have gone well.
My attention is now thinking about production and servicing.
If I've got say 100 units to program. Is the only way to plug them in one...
Okay, thanks. It's more clearer now and I've changed the code. There is no error when I compiled it but I tried printing the sensor values using the code below.
if (count > 0)
{
// write to file
...
@jonr - @KurtE
To test my theory of the changing the ADC clock i first ran the sketch in @KurtE's new version of the library for a baseline:
8:2:2:2(000005b3 00000000)> 255 6 7 : 255 0 8 : 255 1 4 : 255 1 4...
Tonight's edition of the Panda Synth is the synth with working test buttons using oddson's super clean and awesome idea. Also filter and reverb have been implemented.
// PANDA SYNTH
// Coded by Chris Gardella
//...
Even mine worked on the first attempt but stopped working after some time. I tried with and without the pull up resistors. Please do let us know if it stops working.
I wonder if the z-axis layering of the 3D-printed horn causes audible artifacts since the ultrasound wavelengths are very short.
Some simple observations about ultrasound horns:
Peterson's M500 detector looks like...
I just tested my PDB's audio part, which is a "reflow" of Paul's Audio Board.
The Guitar sketch works (synthesis), line input, phones, lien out work.
The microphone works, but the sound is like the "phaser" guitar...
You might try running teensy_serialmon in Terminal, without Arduino. To do this, first make a note of the USB number shown in the lower right corner of the Arduino window.
Then open Terminal and navigate to the...
Here is what I have you can probably modify it to suit your needs.
#include <SdFat.h> // SdFat V "2.0.0"
SdFat SD;
File m_pSource;
const int DIR_max = 250; //
const int max_DIR_name_lenght = 255;
char...
@ MichaelMeissner and JarkkoL.
Thanks both of you I could not reply sooner because of power outages after snow storm ‘Ezekiel’ in the Poconos USA.
@ MichaelMeissner
Yeah I'm not sure what my issues are yet Perhaps...
Interesting, I can't get anything close to the < 1 usec conversions that I thought were possible. More like 2.5 usec per conversion, about teensy 3.2 speed.
Hi Michael,
I had not notice that!
So.. thank you for your detailed analysis: at the moment I would remain on Teensy 3.6, or maybe switch to T4.0 in a next release; and for all the topics you point out I have no...
Cool. Seeing signs of good throughput as noted above - but requires the indicated delay()'s in some fashion to have my Win10 PC keep running.
Right now with the last posted 7000/700 I have two T4's on the same HUB...
@manatee. Thanks. For those uses I think you’ll be fine. I bought 10 of the PT8211 from China for just a few dollars- before I realized i could get the little PT8211 board from Paul at PJRC.