S
Reaction score
5

Latest activity Postings About

    • S
      1 us for a timer interrupt is very short. If the T4.1 runs at 600 MHz, then maybe you have a few cycles of CPU time before the next timer interrupt strikes. If running at 150 MHz CPU Speed, then expect no time left at all for the code in...
    • S
      sicco replied to the thread High temperature shutdown T4.1.
      Thanks for this. So when it is case a), then where can I find and maybe tweak the code / parameters that make it do what it does now? Was I looking in the wrong place with that commented-out-code that I quoted?
    • S
      sicco replied to the thread High temperature shutdown T4.1.
      I did as suggested. But the picture is not getting clear to me yet... I have a system in a test oven that ramps up from room temperature to 85 deg C. I display the result of tempmonGetTemp(), so what the CPU believes the RT1062 chip temperature...
    • S
      sicco replied to the thread High temperature shutdown T4.1.
      The LEDs have 1k series R. I'm still not clear if the Teensy CPU, when it sees it's temperature is getting too high, does or does not disable the LDO (and then continues in some deep sleep mode when is has Vbat). Does it? And if it does, is that...
    • S
      I'm exploring highest ambient temperature for a T4.1 system. With LEDs on the 5V and 3.3V rails, I can see that above ~75 deg C the 3.3V rail shuts down, while 5V rail stays on. Question: is that because the LDO itself goes into thermal shutdown...
    • S
      sicco replied to the thread Writing Data to Teensy 4.1 microSD.
      Writing to a file on the SD card is ‘blocking’. The main loop() will (can) ‘hang’ for up to tens if not hundreds of millisecond while doing transactions with the card. During that time, the Serial1 reception still works in parallel because it’s...
    • S
      sicco replied to the thread FFT not working properly.
      Lavanya, what is SAMPLING_FREQUENCY? You’ve shared code where it was defined at 1024, 1000 and 4000. And you mentioned ‘hope’ as justifier for correct results eventually. But you let other code measure the time it takes to grab 30000 samples and...
    • S
      Your code seems to interrogate the ADC without using the waitDRDY(). The sampling rate is set by a 5 us delay, and the SPI bus clock speed? Are you trying to read out too fast?
    • S
      sicco replied to the thread FFT not working properly.
      I think your original plan was to sample with 1000 Hz, and then do a FFT over 1024 samples, so that you get a frequency spectrum with 512 lines. Those lines correspond to 0 to 500 Hz, in steps of 1000/1024 Hz. The line that you wanted to see was...
    • S
      sicco replied to the thread Teensyduino 1.59 Released.
      I went for the update to 1.59. Code with HardwareSerial no longer compiled ok. I had things like this (only showing the troubled code - what the real app does is allowing two serial ports to take on the role of 'host communication serial port' on...
    • S
      sicco replied to the thread FFT not working properly.
      Lavanya, what do you think is the time in between adc samples?? Try to print/plot the time domain samples before you compute the FFT. Then you will see what’s wrong I think…
    • S
      sicco replied to the thread FFT not working properly.
      What do you think is the time in between adc samples?? I would say it is around 15 us. (10 + 5 + some cpu time). You‘ve not been clear on how you get ‘signal plot(5000 samples)’ data and how that relates to the 1024 samples in the code that you...
    • S
      sicco replied to the thread FFT not working properly.
      You're using interrupt on ADC DRDY. Quite likely your Teensy now hangs waiting for the interrupt to come. But it doesn't come because the ADC isn't triggered yet? Why do you let the code wait for interrupts anyway? You're doing polling in your...
    • S
      sicco replied to the thread FFT not working properly.
      The code works OK when simulating a sin wave as input. I see a problem in the way you attempt to do equidistant sampling. First you acquire a buffer with 1024 samples with a delay 10 us call in between. That does not a guarantee that there's 10...
    • S
      You’ll probably need to go DMA SPI. With lots of interrupts handling. And a timer to get the 30 kHz sample trigger pulse. Can be done, i did something similar some time ago, and shared code for a T4_DMA_SPI class. A train of SPI ‘transactions’...
    • S
      sicco replied to the thread Teensy 4.1 dead?.
      Which Teensy pin did you cut now? The Teensy 4.1 has two for 3V out… Looking at your schematics, is it P16 and P17 that carry the Teensy??
    • S
      Is the GND on pin3 of LM2596 connected to GND pin of mains power plug? Is the Cout of 220 uF still 220 uF or is it by now too old for that? A 5.1V clamping diode over the Teensy +5V and GND pins can be added… A reverse current Shottkey...
    • S
      Is really nothing else wiring any of your Teensy pins to Earth/GND? Say you have a Teensy connected wire that electrically touches a water pipe, another grounded wall socket or whatever, and you then plug in barrel jack, then the you’re not sure...
    • S
      Actually, there’s a lot more that can be explored to reduce noise with T4 ADC’s. But the chip features to exploit that are not available easily when going pre-cooked libraries as you did till now. This relates not only to isochronous hardware...
    • S
      And the H5 UART Rx1 pin never gets to see anything >3.3 or <0.0 volts? Is it really just only the Teensy bootloader chip U2 or is it merely the U4 LDO that now shorts to GND? 15V on J1 may not be the best design practice. Say you insert J1...
    • S
      If you're polling the Teensy ADC from loop() as in code examples above, then expect trouble if you're targeting 30.0 kHz deterministic sampling. A better approach would be to have a hardware timer trigger ADC conversions, with ADC results pushed...
    • S
      Try this on the T4 side: #define intervalo 1000 #define n_q 3 float q_encoder_1[3] = {0.0, 0.0, 0.0}; float q_encoder_2[3] = {0.0, 0.0, 0.0}; float q_encoder_3[3] = {0.0, 0.0, 0.0}; float q_encoder_4[3] = {0.0, 0.0, 0.0}; float q_encoder_5[3]...
  • Loading…
  • Loading…
Back
Top