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.

  1. Replies
    12
    Views
    112

    I'd put a 1K resistor in series with the gate. ...

    I'd put a 1K resistor in series with the gate. As is, damage might be possible.

    +1 on using a small logic level mosfet rated for 3.3V VGS.
  2. > interrupt priority set to 0 on INPUT pin. ...

    > interrupt priority set to 0 on INPUT pin.

    This will jitter occasionally because various things unnecessarily turn *all* interrupts off and then do things for who knows how long. I propose that...
  3. Replies
    21
    Views
    381

    > Can we get higher frequencies? If so, how?...

    > Can we get higher frequencies? If so, how? thank you

    You could add a flip-flop clock divider circuit. But I second the recommendation to just use a teensy 4.0.
  4. > even if you have 2 sides each Seems to me...

    > even if you have 2 sides each

    Seems to me that with 3D, you could have 4 sides x 144 mm˛ = 576 mm˛.

    Thermally, one could put the IMXRT chip on the top. But it's not clear to me that...
  5. Replies
    2
    Views
    163

    Besides timing and deadlocks, the slightly...

    Besides timing and deadlocks, the slightly simplified answer is don't call any non-re-entrant function that might be called from elsewhere. I don't know of a list and non-re-entrant can be hard to...
  6. Replies
    31
    Views
    2,436

    I'd just remove the biquad calls (you don't need...

    I'd just remove the biquad calls (you don't need filters on top of a convolution filter), but here it is anyway:

    26138
    26139
  7. > Define a variable like: volatile bool...

    > Define a variable like: volatile bool data_update_in_progress = false;

    My understanding is that the compiler might re-order code around this, perhaps putting the set to true after your updates. ...
  8. What you are doing should be more common. Ie...

    What you are doing should be more common. Ie don't turn off any more interrupts than necessary.

    Also, don't turn back on interrupts that were off from previous code. Unfortunately, code like...
  9. I think you could use an IntervalTimer and then...

    I think you could use an IntervalTimer and then NVIC_DISABLE_IRQ(my_timer);
  10. Replies
    2
    Views
    179

    You could get more accuracy by multiplying...

    You could get more accuracy by multiplying millis() by some floating point adjustment value (close to 1.0).
  11. Generic advice - keep simplifying the software...

    Generic advice - keep simplifying the software until the problem goes away. So in this case, down to a single channel with no averaging.
  12. Replies
    31
    Views
    2,436

    Here is the code, provided without any support -...

    Here is the code, provided without any support - it will require changes. Your correction impulse response needs to be converted to a C array of floats.
  13. As much as possible, I'd stick to standard...

    As much as possible, I'd stick to standard protocols. Like RTP.
  14. Looks like flux residue - which you could clean...

    Looks like flux residue - which you could clean off with 99% alcohol.
  15. Replies
    53
    Views
    2,493

    I assume everyone has seen this: ...

    I assume everyone has seen this:

    https://forum.pjrc.com/threads/66201-Teensy-4-1-How-to-start-using-FlexIO
  16. Replies
    53
    Views
    2,493

    My application (fast ADC) needs 12 bits of...

    My application (fast ADC) needs 12 bits of parallel input at about 50 Mhz. I suppose it doesn't matter if the clock signal is generated by the teensy or externally. But it needs to be low jitter.
    ...
  17. Replies
    53
    Views
    2,493

    I'd like to see a FlexIO library that allowed...

    I'd like to see a FlexIO library that allowed fast input of parallel data with an external clock source.
  18. This should be helpful: ...

    This should be helpful:

    https://www.baldengineer.com/low-side-vs-high-side-transistor-switch.html
  19. Replies
    5
    Views
    462

    If you want individual cell (vs pack) monitoring,...

    If you want individual cell (vs pack) monitoring, then the diyBMSv4 approach is worth looking at.
  20. Be aware of the effect on total pack capacity. ...

    Be aware of the effect on total pack capacity. Without active balancing, you are limited by the lowest cell capacity. And by any imbalance.
  21. Replies
    5
    Views
    462

    An INA230 could be used to measure current with a...

    An INA230 could be used to measure current with a low side shunt. Maybe it could handle measuring 72V if you added a voltage divider.
  22. Replies
    16
    Views
    947

    Thanks for the info. So one shouldn't expect...

    Thanks for the info.

    So one shouldn't expect teensy Strings to act like a C++ std::string or according to Arduino documentation (where we find "reserve() Returns Nothing").

    @bvernham: this adds...
  23. Replies
    16
    Views
    947

    > you can mitigate much of the risk by using the...

    > you can mitigate much of the risk by using the reserve(size)

    This leads to how does one safely use reserve()?

    > reserve(): A bad_alloc exception is thrown if the function needs to allocate...
  24. > no one ever checks the return value of new...

    > no one ever checks the return value of new anyway, not even the standard library ... probably better off just enabling exceptions

    So if one uses a teensy and the standard library, this is the...
  25. The crash I saw was caused by this same bug.

    The crash I saw was caused by this same bug.
  26. Replies
    16
    Views
    947

    > String it supposed to drop data when it can't...

    > String it supposed to drop data when it can't allocate memory, so you get a proper String variable which is blank.

    Here is code that eventually drops data but doesn't result in a String variable...
  27. Replies
    16
    Views
    947

    I did some tests: Looks like "new" with no...

    I did some tests:

    Looks like "new" with no memory will return NULL which is non-conforming C++.

    String operations that can't allocate more memory generally quietly fail, with who knows what...
  28. Replies
    16
    Views
    947

    What is the proper way to detect an out-of-memory...

    What is the proper way to detect an out-of-memory failure of "new" or some std::string related statement (eg, S += "x") in a teensy program?
  29. Replies
    16
    Views
    947

    +1 on what Paul said. For some cases, the...

    +1 on what Paul said. For some cases, the MISRA-C policy of "Dynamic heap memory allocation shall not be used" is best.

    > the odds are very low,

    But note that if there is any chance of...
  30. Replies
    1
    Views
    238

    As I read the spec sheet, anything 3.6-5.5V...

    As I read the spec sheet, anything 3.6-5.5V should be OK.
  31. > connect 3 regular LEDs Of course application...

    > connect 3 regular LEDs

    Of course application matters, but I have found 1mA to be plenty bright for generic indicator LEDs.
  32. Replies
    1
    Views
    169

    Short answer, you should have them. Longer...

    Short answer, you should have them. Longer answer here:

    https://www.silabs.com/documents/public/application-notes/an0046-efm32-usb-hardware-design-guidelines.pdf
  33. Replies
    69
    Views
    2,917

    Changing the while loop would be consistent with...

    Changing the while loop would be consistent with the CMSIS-CORE implementation of SCB_InvalidateDCache_by_Addr(). But IMO, a ">0 multiple of 32" comment is OK.
  34. Replies
    10
    Views
    505

    Non-preemptive threads avoid state machine coding...

    Non-preemptive threads avoid state machine coding and most of the compatibility problems. Unfortunately, that isn't an option in the above library.
  35. The ETA3000 looks reasonable for balancing,...

    The ETA3000 looks reasonable for balancing, although the error can accumulate cell-to-cell. For the record, diyBMS is a completely open design with data from each cell being available to the master.
  36. Replies
    7
    Views
    488

    Here is an example program that adapts audio...

    Here is an example program that adapts audio rate. Not hard to change it to determine rate based on incoming audio.

    25768
  37. Replies
    7
    Views
    488

    > dropouts or glitches because each tries to use...

    > dropouts or glitches because each tries to use a slightly different sample rate

    I have had good results with matching the teensy audio clock to an external clock source. That source can be...
  38. Consider the "diyBMS New cell monitor module...

    Consider the "diyBMS New cell monitor module V4.40". Or a derived design.
  39. Replies
    69
    Views
    2,917

    Paul's comment is pertinent to understanding the...

    Paul's comment is pertinent to understanding the context:

    "Normally arm_dcache_delete() is used before receiving data via DMA or from bus-master peripherals which write to memory. You want to...
  40. Replies
    69
    Views
    2,917

    No, doing nothing is bad - it doesn't delete the...

    No, doing nothing is bad - it doesn't delete the specified address range from the cache and it's not harmless if you neglect to do this. Flush then delete will a) delete from the cache and b) not...
  41. Replies
    69
    Views
    2,917

    With 1024 and 20 as address/size inputs, your...

    With 1024 and 20 as address/size inputs, your code does nothing.
  42. Replies
    69
    Views
    2,917

    As stated in #4, flush before delete is an...

    As stated in #4, flush before delete is an option. If you care about speed, don't flush more than necessary.

    I think Kurt's code would work.
  43. Replies
    69
    Views
    2,917

    No doubt that arm_dcache_delete() is...

    No doubt that arm_dcache_delete() is under-documented and dangerous when misused with non 32 byte aligned buffers. Do you have a better version?

    Off the top of my head:

    if (alignment or size...
  44. Replies
    69
    Views
    2,917

    I believe that it needs 32 byte alignment. If...

    I believe that it needs 32 byte alignment. If so, the code is correct, but arm_dcache_delete() should only be called after a flush or with a 32 byte aligned address pointing to a buffer that is a...
  45. A couple more comments: A switch() statement...

    A couple more comments:

    A switch() statement is often clearer than many if statements.

    You almost always want to code for clarity and maintainability, not speed or minimal lines of code.
  46. > Only the last exception needs special coding: ...

    > Only the last exception needs special coding:

    Pay attention to request 2.
  47. I'd probably a) handle the special cases with...

    I'd probably

    a) handle the special cases with "if"
    b) divide by 30 and switch on or off depending on even or odd
  48. Replies
    7
    Views
    394

    Perhaps more interesting to know if there is any...

    Perhaps more interesting to know if there is any noise or other performance advantage of different analog pins.
  49. Replies
    5
    Views
    369

    > I tried this out, and the noise does not occur....

    > I tried this out, and the noise does not occur. Interesting!

    This suggests that you should use a lower impedance source. Or add capacitance near the teensy pin.
  50. Replies
    5
    Views
    369

    Does it occur when you use the power supply...

    Does it occur when you use the power supply connected directly to the ADC input (no pot)?
Results 1 to 50 of 500
Page 1 of 10 1 2 3 4