Forum Rule: Always post complete source code & details to reproduce any issue!

Search:

Type: Posts; User: jonr

Page 1 of 10 1 2 3 4

Search: Search took 0.01 seconds; generated 2 minute(s) ago.

  1. IMO, splitting or combining 25 normal sized...

    IMO, splitting or combining 25 normal sized ethernet frames at 17 Mbits/sec will be a minimal load on a teensy 4. If you see a big impact, it's not coded right.

    More info on jumbo frames here:...
  2. I'm curious - why do you care about jumbo frames...

    I'm curious - why do you care about jumbo frames vs just sending smaller ones and combining them? Only substantial drawback I know of is when there is packet loss.

    I wouldn't count on other...
  3. Replies
    12
    Views
    112

    A heatsink stuck to the T4 processor will make it...

    A heatsink stuck to the T4 processor will make it run cooler, even inside of a sealed box.
  4. Replies
    7
    Views
    144

    I encourage you to actually measure the latency.

    I encourage you to actually measure the latency.
  5. Replies
    4
    Views
    78

    Some good info here: ...

    Some good info here:

    https://forum.pjrc.com/threads/60299-1-MSPS-on-a-T4-Is-this-possible?highlight=MegaSample+T4.0+ADC
  6. Replies
    11
    Views
    170

    Some good info here. In your case, pay...

    Some good info here. In your case, pay particular attention to the USB D+/D-.
    https://www.pjrc.com/store/ic_mkl02.html

    Vias in pads are a bad idea.
  7. Replies
    1
    Views
    84

    Don't do the short connection between A6 and B6 -...

    Don't do the short connection between A6 and B6 - go around the left side to get to B6.
  8. > push to the right and fill left? Shift to...

    > push to the right and fill left?

    Shift to the left and add new samples on the right (end of array with higher index).
  9. You could shift the array 128 samples then read...

    You could shift the array 128 samples then read in 128 new samples. This yields an partially updated result every 128 samples.
  10. But AFAIK, a delay before start and a delay...

    But AFAIK, a delay before start and a delay between start of FS and start of SCK aren't the same thing. Manually connecting FS late is an easy test.


    This delay can be implemented either by...
  11. Replies
    8
    Views
    176

    This T4.1 code reads 12 usable bits of input and...

    This T4.1 code reads 12 usable bits of input and synchronizes reads to an external clock signal:


    for (register unsigned i = 0; i < FFTSize; ++i) {
    register uint32_t data;

    do...
  12. I find: i.MX RT1060 remains in Longevity Program...

    I find: i.MX RT1060 remains in Longevity Program until May 2036.
  13. I believe that this post also reported success: ...

    I believe that this post also reported success:

    https://forum.pjrc.com/threads/52175-Audio-Recording-Logging-to-SD-card-gt-microSoundRecorder
  14. Replies
    43
    Views
    788

    Using RTP vs a proprietary format should just be...

    Using RTP vs a proprietary format should just be a matter of adding a 12 byte header to the packets. Then lots of standard tools work to play and analyse the streams. For example, "RTP Player" in...
  15. Replies
    43
    Views
    788

    +1 on using the standard RTP. It does have a...

    +1 on using the standard RTP. It does have a format for Linear PCM 16-bit Stereo audio.

    Reordering of packets doesn't happen on most networks.
  16. Replies
    112
    Views
    29,633

    You posted the following code: // below here...

    You posted the following code:


    // below here is critical - we are writing to flash that could contain active code
    __disable_irq();


    This doesn't appear in the flasher4.zip in #93. Also,...
  17. Replies
    112
    Views
    29,633

    You aren't using the version in #93. You...

    You aren't using the version in #93.

    You should switch to the latest version here (for Teensy 3 and 4):
    ...
  18. Replies
    43
    Views
    788

    Add a sequence number to the sent packets and...

    Add a sequence number to the sent packets and missing or out of orders packets will be easy to detect.
  19. Replies
    43
    Views
    788

    > if the audio clocks aren't aligned ... the...

    > if the audio clocks aren't aligned ... the audio samples will be stretched or squashed

    The typical behavior is that you eventually have a buffer under or over run. Resampling would...
  20. Replies
    112
    Views
    29,633

    I can tell you that...

    I can tell you that ":10010000D8041808000000000000000000000000F3" is a valid, 43 character line and passes all checks.
  21. Thread: Freezing Problem.

    by jonr
    Replies
    5
    Views
    124

    This should make it easy to determine what code...

    This should make it easy to determine what code is executing during the freeze period. A wild guess - the problem is triggered by a data race condition.

    https://github.com/ftrias/TeensyDebug
  22. Replies
    43
    Views
    788

    > You will have to insert a sample from time time...

    > You will have to insert a sample from time time - or you have to delete it.

    Or, much better, keep tweaking the audio clocks so they match. As systems like Dante prove, the match can be...
  23. Replies
    41
    Views
    3,161

    > an inherent problem with quantization Yes,...

    > an inherent problem with quantization

    Yes, but you can pre-shift the data to the left, reducing quantization error of the filtered result.
  24. Replies
    43
    Views
    788

    With proper design and buffering, I expect that a...

    With proper design and buffering, I expect that a Teensy 4.1 could handle lots of UDP audio streams.
  25. Replies
    43
    Views
    788

    Also think about how you will sync the audio...

    Also think about how you will sync the audio clocks between the sender and receiver. Without sync, you typically eventually get under/over runs.
  26. Replies
    2
    Views
    108

    I expect that getting an Arduino Due program to...

    I expect that getting an Arduino Due program to run on the T4 will be easy.
  27. Replies
    112
    Views
    29,633

    That line fails a length check. Perhaps the...

    That line fails a length check. Perhaps the checksum was dropped?
  28. Thread: Raspberry Pi Pico

    by jonr
    Replies
    212
    Views
    20,819

    > ADC has a design flaw How much of this can...

    > ADC has a design flaw

    How much of this can be fixed in software?



    > Arduino support based on mbed

    Might be something to consider for reducing the software work needed for future...
  29. Replies
    22
    Views
    589

    Apparently some installed-by-default interrupt...

    Apparently some installed-by-default interrupt service routine takes up to 2.5 usec. That's about 2000 ISR instructions, which seems like a lot for a T4 that appears to be idle. Any idea what is...
  30. Replies
    22
    Views
    589

    Agreed, but many other interrupts aren't...

    Agreed, but many other interrupts aren't synchronized like this. Good point about the advantage of hardware timing.

    With this software timed code (derived from defragster code) I get jitter of...
  31. Replies
    22
    Views
    589

    I'd collect 100K+samples to catch another ISR's...

    I'd collect 100K+samples to catch another ISR's effect on timing. Periods of disabled interrupts (common in teensy code) will also cause jitter.
  32. Replies
    8
    Views
    2,069

    Note that the T4 has a tweak-able audio clock...

    Note that the T4 has a tweak-able audio clock rate - so good use can be made of synchronization.

    A 1 pps single wire input to the teensy also works fine. Even a once per second byte from a USB...
  33. To be pedantic, the code in #15 is using a hash. ...

    To be pedantic, the code in #15 is using a hash. Below supposedly performs well for strings (not applicable here). murmur3 might be better for ints.

    I used to think it didn't much matter. Then...
  34. Replies
    162
    Views
    14,944

    In my opinion, the example is poor, encouraging...

    In my opinion, the example is poor, encouraging code that results in unnecessary interrupt latency. Better to show an example using std::atomic.
    ...
  35. Replies
    8
    Views
    197

    With a few lines of code, you could measure (vs...

    With a few lines of code, you could measure (vs assume). Search for ARM_DWT_CYCCNT.
  36. if (myData.B == yourData.B) { // Then do...

    if (myData.B == yourData.B) {
    // Then do something
    }

    I challenge you to find a case where the if statement is true.
  37. Replies
    8
    Views
    197

    > a way of testing how fast my code is running ...

    > a way of testing how fast my code is running

    +1 on measuring before you start optimizing.

    digitalWrite(3, LOW); //S1 //0000
    ...
    digitalWrite(3, LOW); //S1

    You are...
  38. > an integer that represents the total bytes of...

    > an integer that represents the total bytes of the original array

    You can only approximate this with a hash/crc/checksum.
  39. Not sure what you are trying to do, perhaps...

    Not sure what you are trying to do, perhaps below. Frank's idea is also good (may be more efficient).



    uint8_t array[8][32];
    uint8_t prev_array[8][32];

    if (memcmp(array, prev_array,...
  40. As others said, for comparing large chunks of...

    As others said, for comparing large chunks of memory, use memcmp(). No, it doesn't require copying to a temporary array. Nor does it take much memory.

    Casting arrays of bytes to longs is a...
  41. Just make sure your amplifier ground isn't in any...

    Just make sure your amplifier ground isn't in any way connected to the teensy ground.
  42. Replies
    944
    Views
    36,732

    I have to say that I think the pricing is quite...

    I have to say that I think the pricing is quite reasonable. Which creates positive feelings about contributing to the teensy ecosystem.
  43. Replies
    25
    Views
    440

    "zero interrupt latency" is apparently commonly...

    "zero interrupt latency" is apparently commonly used to mean "as low as the hardware can go". Teensyduino adds some because it often disables all interrupts (usually for short periods).

    A tight...
  44. Replies
    25
    Views
    440

    > always want the next instruction after the...

    > always want the next instruction after the trigger to be the ISR.

    For "“zero interrupt latency”", set your interrupt priority to zero and make the change I listed here:
    ...
  45. LTSpice works great under Linux with wine.

    LTSpice works great under Linux with wine.
  46. Replies
    4
    Views
    163

    Possibly different on the T4, but "INPUT" means...

    Possibly different on the T4, but "INPUT" means "digital input". So either don't use pinMode() at all or use pinMode(n, INPUT_DISABLE).
  47. You can use a lower value load resistor to reduce...

    You can use a lower value load resistor to reduce voltage. The big issue is that spark current is highly variable - hence the limiter circuit.

    If you want to learn/understand, I recommend...
  48. Counterfeit chips are really irritating: ...

    Counterfeit chips are really irritating:

    https://www.eevblog.com/forum/projects/counterfeit-mpu6050-chips-from-china/
  49. My understanding is that all normally used...

    My understanding is that all normally used interrupts have a priority > 16. __disable_irq()/__enable_irq() blocks are used in many places and this is arguably overkill. So what if the below was...
  50. As Paul discovered, the T4 audio output rate is...

    As Paul discovered, the T4 audio output rate is tunable. I use this with a "one per second" character from the PC t to match the teensy clock to the highly accurate (ntp/chrony) PC clock. But it...
Results 1 to 50 of 498
Page 1 of 10 1 2 3 4