diff --git a/modules/io/audioout/pico/audioout-pico.c b/modules/io/audioout/pico/audioout-pico.c index 7ea4cc442..7be5a6e82 100644 --- a/modules/io/audioout/pico/audioout-pico.c +++ b/modules/io/audioout/pico/audioout-pico.c @@ -31,6 +31,19 @@ #include "pico/audio_i2s.h" #include "modTimer.h" +#ifndef MODDEF_AUDIOOUT_I2S_BITSPERSAMPLE + #define MODDEF_AUDIOOUT_I2S_BITSPERSAMPLE 16 +#endif +#ifndef MODDEF_AUDIOOUT_I2S_DATAOUT_PIN + #define MODDEF_AUDIOOUT_I2S_DATAOUT_PIN PICO_AUDIO_I2S_DATA_PIN +#endif +#ifndef MODDEF_AUDIOOUT_I2S_BCK_PIN + #define MODDEF_AUDIOOUT_I2S_BCK_PIN PICO_AUDIO_I2S_CLOCK_PIN_BASE +#endif +#ifndef MODDEF_AUDIOOUT_I2S_LR_PIN + #define MODDEF_AUDIOOUT_I2S_LR_PIN (MODDEF_AUDIOOUT_I2S_BCK_PIN + 1) +#endif + typedef struct AudioOutElementRecord AudioOutElementRecord; typedef struct AudioOutElementRecord *AudioOutElement; @@ -576,7 +589,7 @@ int doWrite(AudioOut audioOut, void *audioData, xsUnsignedValue requested) int16_t volumeFixed = audioOut->volumeFixed; int requestedSamples = amt >> 1; //@@ broken for stereo & 8 bit int16_t *src = (int16_t *)audioData; - int16_t *samples = buffer->buffer->bytes + audioOut->bufferPendingPos; + int16_t *samples = (int16_t *)(buffer->buffer->bytes + audioOut->bufferPendingPos); int i; for (i=0; i> 8; diff --git a/modules/io/manifest.json b/modules/io/manifest.json index 3c02532dc..378335206 100644 --- a/modules/io/manifest.json +++ b/modules/io/manifest.json @@ -15,6 +15,12 @@ "include": "./manifests/esp32/manifest.json" }, "pico": { + "include": "./manifests/pico/manifest.json" + }, + "pico/pico_w": { + "include": "./manifests/pico/manifest_net.json" + }, + "pico/pico_2_w": { "include": "./manifests/pico/manifest_net.json" }, "nrf52": { diff --git a/modules/io/manifests/pico/manifest.json b/modules/io/manifests/pico/manifest.json index 19f120abf..76b07763b 100644 --- a/modules/io/manifests/pico/manifest.json +++ b/modules/io/manifests/pico/manifest.json @@ -6,7 +6,7 @@ "$(IO)/analog/manifest.json", "$(IO)/audioout/manifest.json", "$(IO)/digital/manifest.json", - "$(IO)/i2c/manifest.json" + "$(IO)/i2c/manifest.json", "$(IO)/pulsecount/manifest.json", "$(IO)/pwm/manifest.json", "$(IO)/serial/manifest.json", @@ -18,7 +18,6 @@ "$(MODULES)/pins/digital/pico/modGPIO" ], "commodetto/Bitmap": "$(COMMODETTO)/commodettoBitmap", - "system": "$(IO)/system/*" }, "preload": [