S
Reaction score
4

Latest activity Postings About

    • 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]...
    • S
      That’s not the full source code yet i think. What is q_encoder_1, sizeof(q_encoder_1) and where is it declared? One reason why your T3 fails to see the “#f” could be that it always fetches “f#” instead? This could happen easily if only one extra...
    • S
      sicco replied to the thread GCC 11.
      If modemCN in EEPROM was say 5, then it will pass your test that it's not >10. So it will stay 5. If you then do while having declared CNs as then expect CNs[5] to be an unpredictable value, leading to trouble when attempting to read that as...
    • S
      sicco replied to the thread GCC 11.
      I had a quick scan of the code - could not compile it - but spotted stuff that might easily go wrong: In setup() after that If EEPROM has random data (because why would it not after starting with a Teensy that was programmed with something...
    • S
      sicco replied to the thread GCC 11.
      When i get unexpected behavior like this then it’s nearly always stack overflow. Stack pointer overwriting global variables. Try tools that keep track of how much stack space is left over. In setup() write a fixed pattern like 0x12345678 in all...
    • S
      Those SPI slaves claim to have 20ns filters on their SCK inputs to avoid false triggering. So that should be pretty tolerant to ringing with the wire lengths that you have. The T4 SPI clock input may however still be suffering… Things to double...
      • IMG_0556.png
    • S
      c172jeff, what are the SPI slaves that you use? If these are the ST MEMS (magnetometers, gyro, accelerometers etc) then there are lots of pitfalls with I2C interface mode getting activated by accident. And issues with SDO lines being undefined...
    • S
      sicco replied to the thread Teensy 4.1 dead?.
      Yes, diode like that. Schottky. Is your T4 USB 5V still wired through to your 5V onboard regulator (TPS54331DR, easily pushes out 5V at multiple amps...)? That's potentially damaging the USB hub / PC where 5V USB normally comes from (if one...
      • 1704470564731.png
      • 1704470963126.png
      • 1704471094560.png
    • S
      Yes, Z matching is part of the solution. Source output Z on the Teensy side can be tweaked by either a series R as Paul suggested, but you can also opt for using the drive strength, slew rate and speed settings in the iMXRT1062 chip for the SCK...
    • S
      Paul’s comments and suggestions are spot on as for root cause and a remedy. Another pitfall is SPI mode selection errors. Master reading MISO right when SCK toggles may still work with short wires, but fail with long. The Teensy MCU offers many...
    • S
      sicco replied to the thread Teensy 4.1 dead?.
      These 5 to 3V3 LDOs fail when: 1) Vin is >5.5V, or, 2) Vout is driven while Vin is lower than Vout (reverse current scenario), and current out of Vin can sink to GND. You may have 5V logic outputs feeding into Teensy inputs. With that you may...
    • S
      Attached. This version allows also for 1-wire UART (Tx and Rx on same pin, tri state), RS485 direction control, interrupt on Rx idle, and 9 bit characters. T4.1 only. Not directly compatible with legacy Arduino style Serial libraries because for...
    • S
      Unclear from what’s posted is what triggers ADC sampling and conversion (a timer interrupt so that it’s deterministic?), what upstream analog anti-alias filter you use, as in order and cutoff frequencies, what (if any at all) oversampling you...
    • S
      The SPC distribution is more critical than CS or MOSI or MISO. But in your case, if you still use the code as in earlier posts, you also may have an SPI mode conflict, which manifests as a CS issue. SPI mode 3 is what you should be using...
    • S
      In answer to question 1): no, pull-up will not help you out. Except maybe just after power on reset while SPI pins (which are also I2C on ST MEMS…) are still floating. As mentioned in earlier post: unless I2C mode is actively disabled after ST...
    • S
      You may have a ground loop. You probably have an SD card that draws quite some current when writing. And you maybe use a power supply that is dipping when the Teensy draws more significant current. I think the reference voltage for the ADC is...
  • Loading…
  • Loading…
Back
Top