Right, so my Daisy Seed doesn't output any sound. More info inside.

kylewetton

Active member
I've built the Terrarium, and managed to get the Blink example working, environment all set up (this part isn't alien to me, i am a dev by trade).

I've also managed to control the LEDs with switches correctly and all seems to work okay in that area. You'll see it in the below script.

However, no sound at all, except for a very slight whistle when Switch 1 is on. I've checked all by parts and soldering and it's all there and accounted for.

So my question is, how do I go about debugging this?

One thing I should note is that I was successfully able to send an oscillator through output


Code:
    for(size_t i = 0; i < size; i++) {
        out[0][i] = osc.Process();
    }

Also, I was able to light up LED2 if it detected input?

Code:
        // if there is an input signal, light up led2
        if (std::abs(in[0][i]) > threshold) {
            dsy_gpio_write(&led2, true);
        } else {
            dsy_gpio_write(&led2, false);
        }

C++:
#include "daisy_petal.h"
#include "daisysp.h"
#include "terrarium.h"

using namespace daisy;
using namespace daisysp;
using namespace terrarium;

DaisyPetal hw;

dsy_gpio led1;
dsy_gpio led2;

void AudioCallback(AudioHandle::InputBuffer in, AudioHandle::OutputBuffer out, size_t size)
{
    hw.ProcessAllControls();
  
    if (hw.switches[Terrarium::FOOTSWITCH_1].RisingEdge())
        dsy_gpio_toggle(&led1);

    if (hw.switches[Terrarium::FOOTSWITCH_2].RisingEdge())
        dsy_gpio_toggle(&led2);

    if (hw.switches[Terrarium::SWITCH_1].Pressed())
        dsy_gpio_toggle(&led1);

    if (hw.switches[Terrarium::SWITCH_2].Pressed())
        dsy_gpio_toggle(&led2);

    for(size_t i = 0; i < size; i++) {
        out[0][i] = in[0][i];
    }
}

int main(void)
{
    hw.Init();
    hw.SetAudioBlockSize(4); // number of samples handled per callback
    hw.SetAudioSampleRate(SaiHandle::Config::SampleRate::SAI_48KHZ);
    hw.StartAdc();
    hw.StartAudio(AudioCallback);

    led1.pin = hw.seed.GetPin(22);
    led1.mode = DSY_GPIO_MODE_OUTPUT_PP;
    led1.pull = DSY_GPIO_NOPULL;
    dsy_gpio_init(&led1);

    led2.pin = hw.seed.GetPin(23);
    led2.mode = DSY_GPIO_MODE_OUTPUT_PP;
    led2.pull = DSY_GPIO_NOPULL;
    dsy_gpio_init(&led2);

    while(1) {}
}
 
Last edited:
@Robert im keen to eliminate the Terrarium from this equation. Listening to these two recordings, doesn’t sound feasible that the problem exists on the terrarium? I’ve checked the op amp is securely in the right orientation


My next steps would unfortunately be to buy everything one more time and try again

Note that the guitar signal is normalised, the volume is basically zero while monitoring the recording.

Also, osc.mp3 is me outputting osc.process(), it’s meant to be a 440hz A4 note, but it’s buzzing and the pitche is closer to a slightly sharp G
 
@kylewetton can you share some pictures of your pedal? I’ve fried a daisy seed by accident before with similar results, I think in my case it was actually static discharge that did it. There were little bubbles on the ICs on the daisy seed, that eventually gave off a little smoke.

Also what version of daisy seed are you using? It will say on the board, if it’s new it’s probably v1.2 rev 7. I reported a noise problem with using these on the terrarium that was solved by adding a low pass filter, but your problem sounds different.

Your code looks fine at first glance, and since it outputs the oscillator id look closer at the input buffer part of the circuit as well.
 
@kylewetton can you share some pictures of your pedal? I’ve fried a daisy seed by accident before with similar results, I think in my case it was actually static discharge that did it. There were little bubbles on the ICs on the daisy seed, that eventually gave off a little smoke.

Also what version of daisy seed are you using? It will say on the board, if it’s new it’s probably v1.2 rev 7. I reported a noise problem with using these on the terrarium that was solved by adding a low pass filter, but your problem sounds different.

Your code looks fine at first glance, and since it outputs the oscillator id look closer at the input buffer part of the circuit as well.
yeah I did see your problem, I was going to do the filter if it actually worked. We have the same version and revision. I haven’t fried it as far as I can tell, everything else seems to work just fine (controlling switches and LEDs etc), so not sure if we’d see this symptom if it was cooked?

I’ll try take photos in the morning
 
Last edited:
This was fixed, it was a broken 9V socket. The daisy seed can send power to the LEDs (I think?) so the IC wasn’t getting gas. Not sure if that’s what it was but replacing the socket worked
 
Back
Top