I think this is just memory use, I see it jam with 2 copies of the bandlimited waveform - it works with only one copy,
and the memory is very tight:
It works with two bandlimited waveforms and no freeverb - so I...
It was probably getting out of step because some interrupts were dropped as they came in while the previous one
was still being handled, like I said. You don't get indefinite length queues for interrupts, and each...
The first thing to do is check the pinout of the encoder by buzzing it out with a multimeter or
continuity tester. You need to start by being certain which pin is which and connect to A, B, gnd.
Randomly guessing and...
The datasheet at least draws the schematic the right way round(!) And it has a PCB layout which you would
do well to follow verbatim.
Maybe add schottky protection diodes on the audio lines. Stops someone blowing...
Looks great - I'm very tempted to build one - I don't really need one, but I'm still very tempted!
One thought is that by replacing the opamps with something like the AD8656(*) you'd have enough drive
level to avoid...
On the ATmega328 multiple interrupts of the same interrupt vector are discarded - not queued. It
only queues interrupts of different types (in other words the queue has one entry per vector).
Not sure if the T4 is...
Could you put a block schematic for the DSP used in the README file, and it needs high-level comments
and API spec. - this all goes in gui/index.html ultimately of course.
You need to programmatically change the data used for touch event mapping when you change which form is
presented on the screen. If you make this data-driven this will be more straight-forward. Maintain lists or...
Digital isolators, not opto-isolators. They are 1Mbps and up and logic inputs/outputs. They are becoming affordable and available
in a mix of directions per chip.
For instance:...
I did notice somewhere in the LiquidCrystalFast code something like:
digitalWrite (pin, HIGH) ; // pulse for at least 450ns
digitalWrite (pin, LOW) ;
which will obviously break on the T4 which can do those...
You are flushing every sample to SD card, flushing may involve several segment writes, segments are 512 bytes each.
Better to flush regularly in time, such as every second, than every sample.
You haven't posted your code so we can't see where the problem is. You also need to show the connections you are using
as there's more than one way to connect and some are inherently slower. The particular module is...
T4 GPIO pins programmable output drive is from 1mA to 4mA... That's why I said 5mA is a tad high.
I'm fairly sure it can handle 5mA with some voltage droop, but I wouldn't want to risk heavily overloading
the pin...
The datasheet mentions 5mA a lot in the specs, which is a tad high for T4, but ought to work at that level. I wouldn't try to push it harder
per pin. Never connect an LED without limiting resistor to delicate CMOS...
They aren't, there's just some part numbers or values on the layout image. For instance the USB connector has no part number
and I wouldn't like to have to search through the many available to try and guess which...
Ah, those prominent caps must be decouplers then...
I think there is indeed a gap for a DC analysis object, AudioAnalyzePeak takes the absolute value, and of course
RMS cannot be negative.
Probably easy to knock...
Place in a metal box with ferrite toroid on the USB cable?
A different T4 with audioshield and HX8357D TFT attached:
I think that one was programmed for 150MHz
Spectrum from my SSA3021X using small B-field probe 1cm above T4.0:
background level from same probe:
These are 0 -- 2.1GHz range, with T4 running at 600MHz clock.
I think I did measure the performance of the various FFT types a while back on the T4, though I guess it matters more
on slower chips - I only have T4.0 and T3.2 at the moment to play with.
The theoretical number of...
Well I guess you just have to assume they are the same, or close enough, and apply the equations anyway - the
test circuit is ratiometric so the absolute resistance isn't important.
Because chips like this are synthesized from hardware description libraries shared between many other chips, the
silicon foundaries don't start afresh for each design, they have libraries of functional blocks and just...
A and #A form a pair, B and #B form a pair - those can be routed as twisted pairs, but twisting A with B will risk
crosstalk between the quadrature channels.
Each RS422 pair needs termination at the receiving end,...
Comparisons of the generic fft v. the existing FFT1024, for several windows, with
input being 5 test tones at -1dB, -20dB, -40dB, -60dB and -80dB compared to full scale sine.
Notable is the variation in gain in...
Had another look at the XPT2046 library code and it doesn't calculate Z values as per the datasheet, so its
sentitivity is inherently poor in one corner. The raw readings of x, y, z1, z2 have to be combined in an...
The T4 is a dual issue processor so you can get upto 1200 million instruction cycles per second with luck,
but yes the clock period is 1.67ns = 1/600000000s, so 9 clocks is 15ns
You are probably not allowing dead-time between switching off one set of LEDs and switching on
the next set - the LED junction capacitance and stored charges may be holding enough charge
for phantom illumination if...
Well I'd call them completely different. I2S requires a stable set of clocks, all phase-locked to each other and low jitter,
running continuously and communicates a pair of digital audio channels per data wire. SPI...
The library has no hysteresis for Z_THRESHOLD so will inherently generate noisy z-values. This
probably is an oversight. The Z-threshold(s) probably ought to be tweakable in the API too.
Your debounce time is...
With white LEDs the high forward voltage allows the resistors to be smaller, but 75 ohms sounds risky - for instance
no pin on the T4 can handle more than 4mA at max drive level, and 4mA through 75 ohms only drops...
Let me say it again: Nothing to do with pull-up resistors. Nothing.
And do you have current-limiting resistors? You need them to protect the output pins from overload.
PWM hardware can't run parallel Bresenhams for concerted stepper motor movement, so it has to be bit banged I believe.
(For instance for circular motion you can't set a fixed frequency...)
T4 is blindingly fast,...
Nothing to do with pullups.
With N pins you can charlieplex N(N-1) LEDs and light at most N-1 up at once, and only then if they all share
the same pin as the same sense (anode or cathode). Follows directly from...
Not sure they are documented, I read the audio lib source in depth a while back. There may be some
issues if you randomly play with connections, I recall somewhere there's a thread or two about this.
I think it would...
The MAX98306 is a CMOS chip, so will be fragile w.r.t. static.
The Adafruit breakout for it has no schottky protection diodes on the chip inputs so its vulnerable to this (same
issue with the Teensy Audio Shield I'm...
You need a more useful meter I'm afraid, with millivolts AC (!)
Where's the call to lineOutLevel(13)?:
// Comment these out if not using the audio adaptor board.
// This may wait forever if the SDA & SCL pins...
AudioConnection has these public methods that deal with attaching and detaching from the signal graph:
void disconnect(void);
void connect(void);
The constructor calls connect(), the destructor calls...
Good question - I've not heard of such, but these chips have big datasheets!
Any differential receiver ought to be high impedance, and at 1Mbps / 100ohms pin capacitance is unlikely to be an issue.
1Mbps shouldn't...
I have a fairly stable implementation now for an improved FFT along these lines, although it
turns out only the T4.x have a decent implementation of arm_rfft_q31 with a wide range of
points from 32..8192 (The T3 seems...
You've not shown your code.
Have you called "sgtl5000_1.lineOutLevel();" or similar to configure the line outs? Have you checked
there's a signal on the line outs using AC volts setting of multimeter between gnd...
The main issue with high impedance inputs is noise coupling to it from nearby signals - logic signals switch so fast that
even tiny amounts of stray capacitance will induce significant currents.
For instance a logic...
That's a dangerous circuit - press both buttons and the supply is shorted out, possibly welding the switches shut too.
Also when neither button is pressed the pin is left floating, so that its voltage is undefined -...
Could this just be a scratchy pot? This can be cured with a small capacitor from the wiper to ground, 100nF or similar.
100k is a bit high for a pot, more likely to pick up noise than ones of 5k or 10k value.
Depending on the drive level set, pins are rated from 1mA upto 4mA at full drive, sourcing or sinking.
BTW csv: you did call "pinMode (..., OUTPUT);" didn't you?
My point was that the ADS1115 is inherently integrating over its long sample period, so will have relatively little issue
with wideband noise at the input.
If you want a fast >=16 bit ADC, the ADS8885 is 18 bit SAR...
The recommendation from TI seems to be direct grounding at host end, ferrite beads to groundplane at client end. https://www.ti.com/sc/docs/apps/msp/intrface/usb/emitest.pdf
The LTC1867 only claims 89dB SNR, which is about 14.5 bits equivalent.
The ADS1115 claims full 16 bit noise-free at lower rates and not far off 16 bits at the full 860 SPS.
Couple this with the fact that noise...
Sorry for the delay in replying. Recently been tidying up some old branches and spotted this.
Its a bug in the folder, whenever the folder saw a sample value ending in 0x8000 it was glitching.
Its fixed in the...
As aside about switches - its been briefly mentioned above I think, but hard switching of audio is going to
produce potentially loud and annoying clicks, since truncating a waveform is equivalent to the sound of
a...
8MB? SDcard? No, that's going to take a while I think.
You don't want to let that amount of data go without backup anyway, so why not flush it to backing store
regularly so there's never that much to write in an...
Switch-mode power supplies don't need such large capacitors as they can pull power from the waveform
when its well below peak voltage, and thus don't have to store as much energy as a linear/transformer
supply.
Little tip about PCB prototypes - ensure every important signal has at least one via not covered by a component -
these make convenient points to stick a thin wire in for either 'scope/LA probing or for making mods. ...
Fig 37.2 in the processor manual shows that the way I2S data inputs and outputs are multiplexed in SAI1
is:
function T4 name T4 pin no
RX0 IN1 8
TX3 / RX1 OUT1D 6
TX2 / RX2 OUT1C ...
Surely you can have a setup with one ADC or DAC as master, and everything else as slave, including Teensy? The clocks are
routed from the master to everything, which should mean the Teensy can run as slave for input...
The way I'd do this is populate a lookup table with RGB values indexed by decibel. Then run through the
FFT bins converting the value to decibels, lookup the pixel colour and write that to the display. Most TFTs...
Actually LP2950Z took me to a Micrel datasheet which is a 5V only part.
There is indeed an LP2950-33 from TI. The '50' in the part number strongly suggests 5V too.
The LP2950 is 5V and is the wrong part number on the schematic as far as I can see - you need a 3.3V output regulator
in that position or bad things happen. Its not uncommon to see the wrong part number in a...
Voice spectra contain both the signature of the harmonics, related to the waveform from the vocal chords,
and the filtering envelope imposed by the throat/mouth cavity, which doesn't change in frequency with the
note,...
AccelStepper was written for slow microcontrollers and doesn't have enough delay for the
pulse generation.
Try
void setup()
{
stepper.setMinPulseWidth(15);
stepper.setMaxSpeed(1000);
...
Well I've experimented with CIC cascades and multi-state decimation and don't seem to get any speed advantage, though
some space advantage. CIC cascading can be optimized by table lookup it turns out, to about the...
The integer performance of the T4 is about 300 times the Uno, the floating point is probably 4 to 5 orders of magnitude
faster on the T4... And the T4 has enough RAM for typical DSP tasks, the Uno does not really.
So long as the signal is in the correct voltage range, 0..Vcc (otherwise you'll risk frying the chip - the suggested interface circuit in the
docs for adc input doesn't seem to feature any protection alas - at the very...
Thought I'd pop my RF spectrum analyzer on a PDM signal from one of these microphones to see what sort of
noise shaping they have - 3 plots zooming in on the audio band, with full-scales of 5MHz, 2MHz and 20kHz
...
Well the $45 seems fairly plausible - here's a competitor: https://uk.farnell.com/mikroelektronika/mikroe-1767/add-on-board-raspyplay4/dp/2521708
Not sure whats on the $99 board, but a low volume board like these...
Well the stopband is about 1/3rd of Nyquist, not 1/4th... But its about -60dB which is much better.
BTW I use Python and numpy / scipy.signal / matplotlib.pyplot packages for all my experimenting with
signal...
AudioControlSGTL5000 is the audio lib class. These are all documented in the audio lib tool - just click
on any object on the left hand side for its docs: https://www.pjrc.com/teensy/gui/
The normal way to do this is using a headphone socket with a built in switch, the switch
opens when the headphone plug is inserted, disconnecting the speaker. A series resistor
is typically used so that the headphone...
From what I can tell from the docs for the interpolation and decimation functions you are doing things right.
Have you tried without any of your intermediate processing, just interpolation straight back to...
And another observation I have - I'm not sure the PDM code has to be incompatible with I2S output on the same I2S unit, as the
clocking is the same. I might have a look at making this work, so that it works more like...