Search results

  1. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Adding some support files: Gerbers, zipped PNG schematics, and annotated BoM with notes on how to fix the errors I made :eek:
  2. h4yn0nnym0u5e

    Teensy 4 Multi-pin TDM audio, Multi-channel USB, and variable sample rates

    Finally got round to trying the multi-channel USB, in the hope you found something @mcginty and I missed. No such luck, I'm afraid, I still get glitches: My test code is this: #include <Audio.h> #define AUDIO_kHz ((int) AUDIO_SAMPLE_RATE / 1000) #define AUDIO_CHANNELS USB_AUDIO_TX_CHANNELS...
  3. h4yn0nnym0u5e

    changing pitch of audio samples - TeensyVariablePlayback library

    You might want to try increasing the number of buffers and their size in ResamplingSerialFlashReader.h: #define RESAMPLE_BUFFER_SAMPLE_SIZE 512 #define RESAMPLE_BUFFER_COUNT 7 This might help the "sound goes really bad", could help the loop issue too. I don't have serial flash fitted...
  4. h4yn0nnym0u5e

    No simple way to control delay time of delay object with poteniometer?

    A few things to note: the delay time is a float, in milliseconds - obviously an Arduino-style analogRead() is never going to give you fine-tuning here, but potentially worth knowing there's not much throttling the update speed of your loop(), so it's probably changing the delay time several...
  5. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    I've just knocked up a very simple thermistor-based probe, on the basis I probably won't be allowed to keep the work FLIR camera :giggle: It's not likely to be super accurate unless I can find a way of calibrating it, as the thermistor has ±5% tolerance on resistance and ±3% on β, plus so far...
  6. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Some objective values for "quite warm". Here's a couple of FLIR camera images without a heatsink, after allowing the board to warm up. Ambient is about 20°C, images are top and bottom of board and targeted as best I could at the hottest point. I then put on a 14x14x10mm aluminium 5-fin...
  7. h4yn0nnym0u5e

    A way to control 8x strips of RGB without using 8 pins

    Nope, but I can't imagine they've done anything too radical, Atmel / Microchip are usually pretty consistent. Of course, it does have to receive updates from your main controller as well as "spit out Fastled data"... In other news, just for fun, I put a Pi Pico on a Teensy 4.1's Host USB port...
  8. h4yn0nnym0u5e

    How to use different audio objects not in the design tool

    It should be possible to add the custom code to your libraries, but I think you need to put it "one level down": I can #include "custom.h" or #include "not-custom.h" in a sketch, and the Arduino search process finds them OK. The Design Tool GUI is part of the Audio library (in the gui...
  9. h4yn0nnym0u5e

    effect_delay_ext.cpp and effect_delay_ext.h support for 2 PSRAM on 4.1 board ?

    Glad you got it working. It’s possibly worth pointing out that you don’t have to assign all 95.1 seconds of EXTMEM to a single delay object, as your sample code does. You can have multiple objects each with their own maximum delay time, up to a total of 95.1s (or 190.2s if you have two PSRAMs...
  10. h4yn0nnym0u5e

    effect_delay_ext.cpp and effect_delay_ext.h support for 2 PSRAM on 4.1 board ?

    OK, a few things ... it's really helpful to post code in the </> code tags, makes it easier to read! Not vital for this short piece of code I have to assume you're using Teensyduino 1.59 - this is pretty important, a couple (?) of the previous releases broke this update ...the important one ...
  11. h4yn0nnym0u5e

    effect_delay_ext.cpp and effect_delay_ext.h support for 2 PSRAM on 4.1 board ?

    Yes. By me, nearly 2 years ago. And nearly merged with the official library, over a year ago. But not... https://github.com/PaulStoffregen/Audio/pull/433
  12. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Yes, though I could probably have made a better job of it, in hindsight. There's copper under the chip on all 4 layers, with top and bottom layers being the pad ground so tied together by the vias in the part's footprint. I'd imagine it might be better to have put a few more vias in, and...
  13. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    I've added a reset(pin#) function to the AudioControlPCM3168 object - it's pushed to the repo linked in post #1. Before you call AudioControlPCM3168::enable(), you should call AudioControlPCM3168::reset(pin), using the Teensy pin number you connected to the PCM3168's RST pin. That pulses the...
  14. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    That’s about what I’m seeing. It certainly gets pretty warm … I have some thermistors on the way to track it. Though if I can borrow the IR camera from work, that’d be fun! I seem to recall Paul observed the CS42448 gets quite toasty, too.
  15. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Very simply! I think it's quite important, but there's no very good way to force the programmer to use it, because you don't know which pin's in use. The 100ms delay is probably excessive, and certainly should be dealt with much better in proper code.
  16. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    It's pretty much all in the github repo, but... control_pcm3168.cpp: /* Audio Library for Teensy 3.X * Copyright (c) 2014, Paul Stoffregen, paul@pjrc.com * * Development of this audio library was funded by PJRC.COM, LLC by sales of * Teensy and Audio Adaptor boards. Please support PJRC's...
  17. h4yn0nnym0u5e

    A way to control 8x strips of RGB without using 8 pins

    I'm gonna plug the Pi Pico or similar one more time here ... the ATtiny only has 3k of RAM, so will max out at say 1000 LEDs per strip. I'm assuming you didn't really mean 5 million LEDs per strip, but 5 metres ... so maybe 300 per strip ... but maybe more. Then you have to build something with...
  18. h4yn0nnym0u5e

    A way to control 8x strips of RGB without using 8 pins

    You might want to look at the RP2040 (Raspberry Pi Pico etc) for a "small" processor. Very cheap, dual cores, reasonable Flash, RAM and speed for the purpose, and it looks like the PIO / DMA can be set up to drive LED strips with very little CPU overhead. I've used it myself, though not for...
  19. h4yn0nnym0u5e

    Two audio boards on a 4.1

    Yes - there's various threads and web pages around which give more-or-less comprehensive information on how to do it. The info pane for the QuadI2S objects in the Design Tool is a good starting point. The Teensy 4.x can comfortably manage 4i4o. Note that much of the advice refers to Revision C...
  20. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Thanks Mark, good to know. I did find it slightly weird to have just C46 / C47 grounding the VIN- pins: seemed one step away from leaving them floating. But as a software guy who knows just enough about hardware to be dangerous, I'll go with the datasheet.
  21. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Here you go! The dangly bit at the right is the DC-DC converter, and the DuPont cabling is connecting two differential outputs back to inputs for testing. I have no idea on C50 and C52, I cribbed them straight from “Figure 60. Buffer and Anti-Aliasing LPF for Single-Ended ADC Input” of the...
  22. h4yn0nnym0u5e

    An alternative to the obsolescent CS42448: the PCM3168

    Hi folks I've been playing around with the PCM3168, a near-alternative to the CS42448 which is now shown as discontinued on Cirrus Logic's website. From a functionality point of view, the PCM3168 doesn't have the ability to add another pair of inputs via an auxiliary interface, so you're...
  23. h4yn0nnym0u5e

    Bug in AudioOutputTDM2

    Just found this one, after a lot of head-scratching. I've done PR#472 for it. The copy from the 16 incoming audio blocks to the output buffer was copying twice as much as it should have, so the second half (presumably garbage) was overwriting memory either currently being DMAed out, or not...
  24. h4yn0nnym0u5e

    Teensy 4.0 and mp3 and FrankB's audio library

    Whoops, that sent before I was ready… I did find on the Audio Guestbook thread that the current pulses from SD write were getting into the recorded audio. It went away if the SD card was in the Teensy 4.1 on-board slot, and could be reduced (in my experience, not everyone’s) by improving the...
  25. h4yn0nnym0u5e

    Teensy 4.0 and mp3 and FrankB's audio library

    “His”, FWIW!
  26. h4yn0nnym0u5e

    USB interface for multi channel outputs, not just stereo

    Same as it was nearly a year ago at my post #42, I'm afraid. I'd like to close this out, but @mcginty bailed, and everyone else who's expressed "an interest in helping out" seems to be a one-post wonder. I simply don't have the low-level USB skills to be able to craft a complete and correct...
  27. h4yn0nnym0u5e

    troubleshooting simple project

    Incremental is always good... The print and delay only kick in if SD card initialisation fails. I've sometimes found it doesn't work first time, and altered the canonical code you find in the WavFilePlayer example and elsewhere so it tries multiple times at 500ms intervals, rather than just...
  28. h4yn0nnym0u5e

    troubleshooting simple project

    A few suggestions, apart from Paul's excellent one of trying the known-good WavFilePlayer example... you still have references to sgtl5000 in your code - remove those you're not allocating much AudioMemory() - try 20 blocks or so rather than 8 you haven't initialised the SD card - add the code...
  29. h4yn0nnym0u5e

    4-Channel Audio with Rev D2 audio shield

    ...or as Paul said in post #3, instead of (a), wire the I²C to a different port and get down and dirty with the Audio library to enable use of Wire1 as well as Wire - not recommended for those who are "not really strong with this"!
  30. h4yn0nnym0u5e

    4-Channel Audio with Rev D2 audio shield

    You can't use a Rev D2 for both audio boards, you need at least one Rev D, Typically you'd use the D2 unmodified and the D as the second one, modifying it by (a) changing its I²C address and (b) re-wiring its data pins: pin 7 to OUT1B and pin 8 to OUT1D aka IN1B.
  31. h4yn0nnym0u5e

    Just Wanted To Thank Paul For Building The Teensy 4.1

    We NEED pictures! That sounds awesome…
  32. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    Well ... not to the likes of PJRC, it seems 🤬. It's still listed as Active on their website, albeit with a 26-week lead time: https://www.nxp.com/part/MK20DX256VLH7#/ I guess that could be sustainable if you're a huge business, and tiny ones will buy from distributors, but folk like Paul just...
  33. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    https://forum.pjrc.com/index.php?threads/teensy-3-2-end-of-life.73756/
  34. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    Sounds like you’re using a Teensy 3.x with some ancient experimental SD library. That’s not at all similar to what I’m doing - are you actually using my code? Given that the 3.x series have been unfortunately rendered obsolete by NXP no longer making the parts, it makes very little sense for me...
  35. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    I think we have different definitions of "many many"... 8 files at once should be easy with the buffered SD library properly set up. I don't know what "optimized SD library" or "extra spi SD card buffer at 50 instead of 7" are, but I'm pretty sure I don't do any of that, just use the stock SD...
  36. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    How many is “many many”? I need to rework the SDpiano demo code, but that implements low latency playback by preloading the start of nearly 300 samples to PSRAM, so notes start within one audio update (~2,9ms) of being triggered. You don’t need to load the whole file, just enough to allow the...
  37. h4yn0nnym0u5e

    Quad channel output on Teensy 3.6

    Here's a slightly long-winded demo of the use of new to create the TDM objects after the CS42448 has been initialised: #include <Audio.h> // define this macro to use the "normal" // statically-created objects //#define USE_STATIC // GUItool: begin automatically generated code #if...
  38. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    There seem to be at least several threads (here’s a recent example) where public discussions of preliminary stages of stuff take place, sometimes involving quite niche applications. As we know, a fair few of those fizzle with no end result, but it does allow interested parties to lurk, comment...
  39. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    Sounds like a plan! I’ll park the hardware design and take a look at the mods needed for the TDM driver. I think theyll be fairly minor, and there aren’t too many registers to mess with to get it set up. For my evaluation board I tracked to allow for either TDM, TDM2 or I2S, also for both I2C...
  40. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    Shame, but I can quite understand your reasoning. I'm tinkering with making an evaluation board for Teensy + PCM3168, just because I always intended to mess with getting one of my own designs made, and this seemed like a suitable spur. Very much the most tenuous of vapourware at the moment...
  41. h4yn0nnym0u5e

    Fast SD Playback for Multichannel Audio File

    Great, glad you got it working! I've taken a quick look at your mods - I think ... as you didn't branch I can't diff it to see what you did in detail. One easy win is that you don't need to assume a WAV header is 44 bytes long; the true start of audio data should be in firstAudio (member of...
  42. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    No worries, it’s not just “my” thread … I was rather enjoying it TBH. I’m sure I’d‘ve objected if it’d got really silly, and it’s fun to bump threads when they’ve gone a bit Moribund the Bürgermeister for a while…
  43. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    What, all 23 minutes?! Good choice, one of my all time favourite tracks.
  44. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    The PCM3168A from TI looks pretty snazzy, but no idea if anyone has tried it with a Teensy.
  45. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    I’d imagine it’d be possible for some hoopy frood (that’d be you…) to nail an entirely independent galvo monitor module into your system for a lot less than $200, let alone $10k. Not sure what the simplest I2S ADC is, but that and a Pi Pico for about $5 should do it. Or do most of it in op-amps...
  46. h4yn0nnym0u5e

    Yet Another File Player (and recorder)

    Guess your essential question is “how likely is it that playback stalls, leaving the beam static?” Answer - I’ve no idea! SD cards can definitely be a bit weird, and I wouldn’t want to certify my code as safe (I get quite enough of that at work…). You could add a tiny bit of position...
  47. h4yn0nnym0u5e

    Play quad channel wav file from SD

    Pity the CS42448 is obsolete…
  48. h4yn0nnym0u5e

    Play quad channel wav file from SD

    Not AIFF, but if you’re OK to convert to WAV you could try this. Not sure 5-channel is a thing, but 6-channel (aka 5.1) definitely works.
Back
Top