Anyhow, this is a question to TeensyThread (ftrias)
maybe you cannot have TeensyTread AND loop together?
I would first try another thread that only does delay(1000);
Normally I would say:
- download code
- edit config.h to reflect your adc situation
open microSoundRecorder.ino with Arduino IDE and compile (Verify)
Don't get worried about include files.
They are only including...
It seems that the example was using a very transient implementation of SdFat as indicated by
SdioCardEX card;
maybe you try first the SDFormatter examples provided with SdFat library.
or ask the person that...
I did some correction and updated https://github.com/WMXZ-EU/MTP_t4/
For @KurtE et al that have WIP forks, this is the new code
void MTPStorage_SD::removeFile(uint32_t store, char *file)
{
char tname;
File...
Does the same operation work on T4? (Have not used T3.6 for a while)
what exactly do you mean by copy: PC to T3.6, T3.6 to PC, T3.6 to T3.6 same directory level, different directory level?
file size?
what are...
Let's ignore that DFT formula is
y_k = Σ 0,...,N-1 (x_n * e^-i2πkn/N )
i.e. no left-hand side sum
FFT is called Fast because it does not implement this formula, which has O(N^2) complex multiplies and add...
On castellation.
I understand while it could useful, but it would not be useful in presence of bottom mounted components, as done on T4.1.
Also inboard pin soldering would not be possible.
On the other side, if there...
IMHO, If it is not there it should not be used!
the fact that Arduino/Makefiles are not adapting to changing gcc is not the problem of gcc
maybe there is an equivalent library, or installation of toolchain is not...
Another way to look into this is
For a 1Hz resolution you need an analysis window of 1 second or so and the signal must be stable for all this time.
If the signal is only 0.1 s long, then the spectrum will be at...
While I have no idea what RT101X/RT102X is, I would be very surprised if PJRC licenses the bootloader chip code, which, however, is not a question to the forum.
All what I wanted to say is that, at least according to...
a side question
in arm_dcache* functions we find
asm volatile("": : :"memory");
asm("dsb");
if I take disable_irq() we have
#define __disable_irq() __asm__ volatile("CPSID i":::"memory");
how should we read...
or something like this?
in cmsis_gcc.h
\brief Enable IRQ Interrupts
\details Enables IRQ interrupts by clearing the I-bit in the CPSR.
Can only be executed in Privileged modes.
*/...
IMHO, using the audio datapath is better than RawHID, if you can live with the predefined sampling rate.
IIRC, with RawHID you have up to 64 byte/ms.
Obviously, with some low-level programming data rates can be...
the reply #2 still holds.
the best way to transfer two queues to the is to use USB-Output and connect it to the two queues. This will take the data and transfer to PC.
what you do with data on PC is your business. ...
You can easily avoid Arduino pre-processing but continue to use Arduino IDE
Put all your code into a local .cpp file (main.cpp is fine, but can be anything.cpp) and let the sketch.ino file empty.
Arduino Pre-processor...
"Aliasing" the signal does indeed work (sampling a 40 kHz signal with 38kHz), but you still have to make sure that no unwanted signal passes through.
In this case you must make sure that no signal is between 0 and 19...
Kurt, Frank,
thanks for answer.
Yes, in my DMA isr I'm using the arm_cache functions.
I was only confused by the psram_memtest program that uses arm_dcache functions between write and read.
Anyhow, my program...
I wanted to know what the proper use of PSRAM is in relation to data cache
I use PSRAM as huge databuffer in my recorder
for this I plan to use the following (simple) Queue object where buffer may be initializes...
Question now is, is 1.7s freeze related with use of PSRAM or with doubling (or 'wrong'/huge size) in startup.c ?
IOW, do all freeze code use PSRAM?
Is access to PSRAM cached?, does this cache then be cleared as with...
Serial.begin does not do anything (I even do not use one)
USB_serial is always used if usb_type is set to Serial. you could test using Seremu to see if it is the Serial implementation that freezes.
if you do write to...
I try since yesterday to generate stand-alone freeze example, but no success. All too deterministic.
Unfortunately my freeze application, which does not freeze anymore (fortunately)
uses as HW
custom ADC (custom...
while trying to improve my code I got on Serial line the following message
"(NS Blank RT Family (SE Blank RT Family (SP Blank RT Family (FR Blank RT Family"
and
":NXP SemiConductors Inc :"
embedded in...
To be completely honest,
I had always issues with USB after T3.2 times.
In my freeze case I thought it maybe PC, so I run program from battery, disconnecting PC but wrote log to uSD. 1.7s freeze continued to occur....
however this seems a permanent freeze, while OP is a temporary freeze (1.7 s). Let's not diverge discussion.
we need to know the origin of the CPU clock dependent freeze of 2^30 CPU cycles (1.7s at 600 MHz), even if...
As it was asked, I was compiling with -O2 and is now -Os
and my yield was
void yield(void) {}
but is now
void yield(void)
{ // USB Serail - Add hack to minimize impact...
if (yield_active_check_flags &...
I'm not necessarily pointing to to issue, but I do not understand
do {
__LDREXW(&systick_safe_read);
smc = systick_millis_count;
scc = systick_cycle_count;
} while ( __STREXW(1, &systick_safe_read));
So,...
If I take my application where I count I2S-DMA interrupts (that are also easily visible on LED). Typically there are 750 interrupts/s and LED is flashing.
when freeze occurred, LED remains off, interrupt counts drops...
while my system did not freeze (hold for 1786 ms) in last two days, I'm still convinced that:
it is either something on CPU level (generating interrupts) then we cannot do anything about it
or it has something to do...
I'm fighting a similar issue on T4.1, same freeze, happening randomly about 1.8 s for 600 MHz clock but 2.8 at a MCU clock of 396 MHz.
Freeze was observed with I2S-DMA that runs at elevated priority. visual symptoms...
As I'm one of the people Paul is most likely referring to.
What you see on a scope is broadband noise. However, if you look to a spectrogram you can see tonal that are not easily seen on broad band time series. Sure,...
No,
I have a very tight space (not large enough for a USB connector) so USB data dots are connected to a PCB connector that is connected to a Underwater Bulkhead etc.
All in a water tight pressure housing.
An...
How to set the USB dev speed on T4.1 to 12 MHz?
I wanted the connect to T4.1 USB via some connectors, but I only get unknown device on my PC.
I suspect that the waveform gets disturbed too much when passing through...
I used one of these extenders, Bill is talking about, to try sdio-access to multiple microSD.
while the extenders worked fine, my attempts to have multiple SD cards on the sdio bus failed. only one card was responding...
@mborgerson
the endpoint definition are somewhat modelled after the other devices.
Anyhow, T3 and T4 have different USB implementations therefore there will be different descriptors.
There was some years ago a...
If you stick with microSD cards (as I do it) the actual MTP_t4 https://github.com/WMXZ-EU/MTP_t4 is a reasonable solution.
Obviously feel free to follow the MTP responder thread or wait until Paul includes MTP to...
I'm using SDFat as supplied via Teensyduino, which has in ExFatConfig.h as default "#define USE_EXFAT_UNICODE_NAMES 0 "
It works for me and I'm sorry for non-latin charactersets.
However, if someone develops the code...
Increase AudioMemory. 2 is too few. try different values.
if thy start with 50 you can use AudioMemoryUsageMax() to learn what is the minimum value you have to set (defined in cores: AudioStream.h)
Also, push at least...
I have a T4.1 with a custom daughter board (having 6 spi uSD cards) : total 7 disks
Originally I wanted to use only sdio bus, but unfortunately the uSD cards to not implement the sdio addressing system (similar to i2c)...
No, also as my application calls in general for all slots populated with SD cards.
However, could add the test on Data3 to void sdfs.begin to tell me that it failed.
I wanted to share an observation T4.1 with Win10
I typically have 6 SD cards attached to my T4.1 (with sdio)
observation:
MTP may fail to work (shows only sdio, with no files in it), when I populate only a part of...
Reason is, that index list assumes that for N storages, the first N indices indicate the N root devices and have itself as parent. So if storage is added at a later time, a reset is required. Assuming this is working, a...
the symbol is defined in cores/teensy(3/4)/FS.h
can you check its existence, or if you have a second FS.h on your system?
maybe in "SD-Juse_Use_SfFat"?
It will be hard to get ALL spectral values printed in REAL TIME to serial terminal.
To start I would only printout 1 to 10 spectra per second and throw the others away.
You cannot program Teensy via USB host pins.
To use USB host pins as USB device (e.e. for Seria, MIDI etc) you have to write your own USB device SW for USB2 (the one accessible via USB host pins)
To use access...
IMHO, you will never get a realistic performance picture without a solid soldered setup (best is pcb or veroboard)
Then measurements should be made in a tin-box to shield electric fields that couple into wires.
A...