Interesting to see, but a bit of apples to oranges. We expect different results when measured at double sampling frequency. Doesn't really show that they are better at the same sampling frequency.
Interrupts do happen, that's the point with IntervalTimers, not sure why they cannot be used.
The interval trigger every x seconds and sends a NoteOn to an envelop, or sets a mixer amplitude.
Another option is to...
There seems to be an error in the disconnect method, when unlinking an element from a linked list the pointer of the prevoius node most be shifted, so in AudioStream.cpp line 257
if (p == this) {
if...
After testing a bit, its quite a nice chip, the Audio library feels overengineered and does a lot of unnecessary buffer copying. The Teensy Audio code is much more efficient. The pico can run the Teensy Audio with a...
A dead zone in the middle could help.
First of all measure the adc reading with joystick centered, my experience is that this will be close to 511 (for 10 bits) but not equal.
Save this value as something like...
Since the Teensy Loader can talk to the board USB must be working, and the SerialUSB should also work if properly configured.
So look for fried code and perhaps other hw connections that might upset the board running...
To know where the problem occurs, count the number of received characters on the Teensy side, connect a serial adapter or another Teensy to the HW serialport to receive debug/status information.
Does the application crash or is it just a 'crashing' sound ?
Is the crash momentary or continous ?
Does the sound return to normal when the effect is finished playing ?
Does the issue depend on what background file...
Strange,
I took your sketch, added the Encoder library after installing it, checking version Encoder by Paul Stoffregen v 1.4.2.
Hooked up a cheap encoder on a breakout board with 10K pullup resistor on the...
Think about both buffer size and bandwidth, and the delay introduced, for every link in your chain of communications.
fill serial out buffer->transmit to BT modem-> BT transmision to receiver -> BT serial out to...
So the audio interface drivers has the multi client capability mentioned by MatrixRat, the UNO shield gives a single MIDI connection with up to 16 channels, just as the standard Teensy USB MIDI (not x4) does
If you have a number of automations sending conflicting CC values within 10ms then there is a problem with the Ableton setup, and what value this controller really has, and the rest should be dropped, even if all...
Without seeing the code we are talking about, its hard to give precise help, but filtering CC messages is not hard.
Keep an array "byte CC_value", then when receiving a message (channel,CC,value) test and filter like...
So this is not criticising anyone, just an attempt at finding the bases, and starting at the OP invitation to discussion. I have myself transitioned between developed environments and paradigms so I know this is a bit...
So 5 ns max error after 1 ms is 5 ppm error, and 5 ns after 1s is 5 ppb. The crystal on the Teensy has a 15ppm specification. If you measure the crystal speed with a high resolution time reference you can compensate for...
In text format 13 bit unsigned values are 0 to 8192 so max four characters plus the ',' separator, so max 5 and min 2 characters per sample. Lets say 3 on average.
Anyway if the python in buffer is always full the...
Normally shield should be grounded at one end.
Another option is to use current signalling, like MIDI.
Button closure send a 5mA current through an optoisolator, this should be much more resilient to electrical...
The IDE 2.0 is rather nice, feel fast and easy to work with, but there are quite a bit of raw edges.
The port selection is forgotten when USB serial is down for reload/reboot, easy to reselect but suddenly the...
Several things, its good with a proper connection from the VIN pin to the VUSB pin, having a two pin header that can be bridged with one of those little caps is very helpful when debugging problems, "bend a piece of...
Remember that integers are saved in little endian , least significant byte first.
This is what I get, Teensy 3.0
union outputLora data;
data.timepacketdata.startorfinish = 255;
data.timepacketdata.carnum = 1;...
Looks good :),
yes the USB serial runs at full USB if the sender and reader can handle this, I routinely sets the baurates at 115200. What is the effective transfer rate, in bytes/s or samples/s, have you added any...
the input voltage range for digital pins is 0 to 3.3 V
100mV pp vill not trigger as high level, also make sure to keep voltage above 0V, and below 3.3V
Sending the values in text form is a bit slower and uses a bit more bandwidth, but it is MUCH easier to handle and to monitor and debug any issues. The Serial over USB from T 3.6 to PC is real fast.
My suggestion is...
I tried the code from original post on a 3.0 and a 3.6.
if (TempString != NULL) refuses to compile, so I replaced it with if (TempString != "")
then I sprinkled the code with some writes, and tested it with input...
I think its a read timing problem, the void MySerialReader () only reads what is currently in the serial buffer, and if this is not a compete message it is fed to strtok and then discarded. You cannot assume a complete...
This might be a coincidence, but 1786ms is quite close to 2^30 processor clock cycles at 600MHz, or 2^28 timer ticks at 150Mhz. Just a wild hunch ... a missed timer somewhere.
The code checks if cycle_start pin is HIGH and calls cycleStart() that sets the output pins and led high.
You need to check when the cycle_start pin goes low to turn off the leds, or use a timer for that or the...
In UP mode you always turns relays off before setting them to correct value, that will cause spikes
if(num > PrvNum){
Serial.println("UP");
PrvNum = num;
for (int i = 0; i < 7; i++) { ...
This is slightly confusing exactly how are the Teensy, Nextion and optocouplers connected ? Which pin is input from Nextion, and which is the corresponding output from Teensy ?
You have 16 leds in the matrix and 24 steps per beat, that makes it a bit tricky to count the beats, every beat is 24=6*4 steps that is one and a half full matrix of steps.
Also the lastTime should be updated as ...
Time libraries are supposed to be able to handle times before 1970, so the times can be represented as negative numbers.
If you are sure that your use of time is after 1970 you can convert/copy/typecast time values...
Perhaps filter the incoming midi data, keep the latest master values of controllers and only update changes to the slave every ... say 1 ms or send as often as the i2c can handle dependent on how many channels are being...
You will not do any ISR based timing at more than a fraction of the processor clock divided by ( ISR setup cycles + ISR execute cycles + ISR return cycles). This might be fast compared to audio frequencies ( 600 MHz /...