electro-smith / daisyduino Goto Github PK
View Code? Open in Web Editor NEWArduino Support for the Daisy Audio Platform.
Home Page: https://www.electro-smith.com/daisy
License: MIT License
Arduino Support for the Daisy Audio Platform.
Home Page: https://www.electro-smith.com/daisy
License: MIT License
According to the stm32duino wiki, upload methods that don't require stm32cube to be installed have been deprecated so I think we should also call out that in order to use this library, you have to install stm32cube.
Hi, when using DAISY.end() to stop the audio callback I get the following error:
undefined reference to 'dsy_audio_stop'
I think becasue this is declared as dsy_audio_stop in hid_audio.h but is called audio_stop in hid_audio.c
An easy workaround for now is to declare it in my own file as follows and call audio_stop directly:
extern "C" {
void audio_stop(uint8_t intext);
}
audio_stop(DSY_AUDIO_INTERNAL);
The init function currently disables the dcache to get things to work correctly.
Best solution is to update/fix the linker in the DAISY SEED variant to allow the use of the the right memory sections
Then we have to add MPU back into mark the dma buffer section as non-cacheable
A possible band-aid is to map the specific dma buffers in the MPU as non-cached memory, and leave everything else as is.
Line 67 in ac3698a
CV_1 is initialized twice on the patch, rather than initializing CV_1, then CV_2.
For now we can do our dsy_sdram_init
and dsy_mpu_init
function in the init. This will at least give us access until we can get a patch with native support baked into the core.
Adding a call to dsy_sdram_init() will be sufficient, and then if there isn't a macro somewhere yet for DSY_SDRAM_BSS
or similar. We should add that because:
float __attribute__((section(".sdram_bss"))) big_array[1024*1024];
isn't easy or fun to type.
This error presented when trying to upload any DaisyDuino example in PlatformIO for VSCode using a Daisy Seed Rev4.
.pio/libdeps/electrosmith_daisy/DaisyDuino/src/AudioClass.cpp: In member function 'AudioClass::BoardVersion AudioClass::BoardVersionCheck()':
.pio/libdeps/electrosmith_daisy/DaisyDuino/src/AudioClass.cpp:271:13: error: 'PD3' was not declared in this scope; did you mean 'D3'?
BoardVersionCheck() within AudioClass.cpp references 'PD3' which is defined within daisy_patch_sm.h. This is included in DaisyDuino.h but seems wrong since I'm not using a patch/submodule. I managed to work around this by hardcoding the rev4 as my board within AudioClass.cpp.
AudioClass::BoardVersion AudioClass::BoardVersionCheck()
{
/** Version Checks:
* * Fall through is Daisy Seed v1 (aka Daisy Seed rev4)
* * PD3 tied to gnd is Daisy Seed v1.1 (aka Daisy Seed rev5)
* * PD4 tied to gnd reserved for future hardware
*/
// pinMode(PD3, INPUT_PULLUP);
// if (!digitalRead(PD3))
// {
// return BoardVersion::DAISY_SEED_1_1;
// }
// else
// {
return BoardVersion::DAISY_SEED;
//}
}
After updating the board and the library there is no audio output when uploading a compiled example sketch with arduino.
Using board 'GenH7' from platform in folder: C:\Users\...\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.1.0
Using core 'arduino' from platform in folder: C:\Users\...\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.1.0
Alternatives for DaisyDuino.h: [[email protected]]
ResolveLibrary(DaisyDuino.h)
-> candidates: [[email protected]]
Compiler and linker is used from this directory:
\AppData\\Local\\Arduino15\\packages\\STMicroelectronics\\tools\\xpack-arm-none-eabi-gcc\\10.2.1-1.1/bin/
The blink example was successful (led was blinking). In addition to that, adding print statements and activation of CDC was also successful. Only the audio seems to be dead.
Controls stopped working since stm32duino update. Not sure why yet, need to look into it.
I'm just copying this over from the original issue: electro-smith/DaisyExamples#280
There was a request for NE Versio/Legio platforms to have some examples.
Line 67 in eb2964f
the constrain function should restrict the value range to -5 to 5 not to 0 to 1024
Pretty self-explanatory, but there are several UARTs available on the Daisy. I've personally only verified UART 1 works with DaisyDuino. We should check that others are also usable.
I'm not sure whether this is a bug or a feature request - I want to use DaisyDuino with the Arduino 2.0 IDE. I tried the "blink" example on a Pod the other day. It works fine on the 1.8.19 IDE but on the 2.0.0 RC7 IDE is doesn't. The IDE sees the board when it's running the blinker, but as soon as I put it into bootloader mode to upload the sketch, the IDE reports that the board isn't connected and it won't upload.
I'm guessing this is an issue in the Arduino code and not in the Daisy code, but I don't know how to troubleshoot this. Is there a plan to support the Arduino 2.0.0 IDE?
The datasheet for the SM (https://www.electro-smith.com/s/ES_Patch_SM_datasheet_v103.pdf) indicates that the I2C1_SCL pin is PB8 but the define in the library indicates that it is PB7:
DaisyDuino/src/daisy_patch_sm.h
Line 34 in 389ee95
this is to fix conflicts with the teensy audio library as that is also called AUDIO.h
The ArduinoDaisySP repo already has this applied, and therefore cannot be used yet..
Any chance to have Tap tempo library with LED rate in Daisyduino? Thank you
The Button API changed at some point, adding an optional argument for pinmode.
The Button example no longer compiles.
Proposed Fix: set default argument of INPUT_PULLUP
for mode
argument.
I'm just copying this over from the original issue: electro-smith/DaisyExamples#280
As stated in title, the latest release (to fix audio on PatchSM) didn't go through to the library manager.
This may already be known since it appears to be in the TODO in tim.h (Dispatch periodic callback(s)) but thought I'd log it here as I ran into that tonight and it took me some time to realize it was missing from DaisyDuino when looking at the general libDaisy docs (https://electro-smith.github.io/libDaisy/classdaisy_1_1_timer_handle.html#a6a3a083902c7b5fbfc431242d60571f4).
I wanted to attach a callback to an interrupt much like the audio interrupt only I'll be adjusting the timer's counter so I can do variable sample rate stuff. I can do this in the while loop but thought the interrupt route would be more efficient and I could avoid cluttering up the main loop (which I was going to use for checking CV inputs and things).
Hi, I started playing around with a daisy seed about a month ago.
It took me a while to actually get some sound of it when flashing through arduino IDE.
I did a lot of testing, different IDE versions, different OS, always with the same result: code from the examples compiled and uploaded without problems but sound never existed even though toggling the built in LED did.
After a while I downgraded to DaisyDuino v1.2.0 and everything worked fine.
Did I miss something about turning sound on on v1.3.0? Or is something broken?
Using DaisyDuino (1.7.0) and Adafruit GFX & SSD1351 libraries with Daisy PatchSM (on patch.Init() hardware) I couldn't get an SPI RGB OLED display to operate - it wasn't seeing any SPI clock signal when using the pin mappings below, taken from daisy_patch_sm.h:
//periphs
#define PIN_PATCH_SM_SPI_SCK PD10
#define PIN_PATCH_SM_SPI_CS PB4
#define PIN_PATCH_SM_SPI_MOSI PC2_C
#define PIN_PATCH_SM_SPI_MISO PC3_C
I had to change the pin specified for the SPI clock from PD10 to PD3 (or specify PIN_PATCH_SM_D10 instead) to get the SPI clock signal out of physical pin D10 on the PatchSM board; it's now all working.
Is this my lack of understanding/error or is something slightly odd going on with daisy_patch_sm.h & mapping of this pin? An expert opinion would be very welcome, please!
It seems like the files in the utility folder don't need the full path to build correctly.
This would mean less modification is necessary when updating with more recent libdaisy code.
My PC wasn't recognizing the device as being connected when trying Serial after the most recent stm32duino update.
Just received my Daisy -- have the audio examples running fine with arduino, though having issues running audio with analog sensor input. For instance -- in the PatchMajorChord example, the knob input on A0 prints out only as 512 and doesn't seem to have an effect on the audio.
My circuit is fine as I tested it in a separate patch and the analogRead prints as it should without the Daisy library -- Is there a step I am missing in the process? Below is a screenshot of my arduino settings.
Thanks,
Julian
Linker error due to redefinition of the HAL files.
We may be able to simply remove the HAL SAI files from the utily folder, as those are the files that are triggering the issue.
The errors:
"C:\\Users\\shensley\\AppData\\Local\\Temp\\arduino_build_432111\\core\\core.a" -lc -Wl,--end-group -lm -lgcc -lstdc++
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Init':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Init+0x0): multiple definition of `HAL_SAI_Init'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Init+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_InitProtocol':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_InitProtocol+0x0): multiple definition of `HAL_SAI_InitProtocol'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_InitProtocol+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DeInit':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DeInit+0x0): multiple definition of `HAL_SAI_DeInit'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DeInit+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Transmit':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Transmit+0x0): multiple definition of `HAL_SAI_Transmit'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Transmit+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Receive':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Receive+0x0): multiple definition of `HAL_SAI_Receive'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Receive+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Transmit_IT':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Transmit_IT+0x0): multiple definition of `HAL_SAI_Transmit_IT'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Transmit_IT+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Receive_IT':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Receive_IT+0x0): multiple definition of `HAL_SAI_Receive_IT'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Receive_IT+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DMAPause':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DMAPause+0x0): multiple definition of `HAL_SAI_DMAPause'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DMAPause+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DMAResume':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DMAResume+0x0): multiple definition of `HAL_SAI_DMAResume'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DMAResume+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DMAStop':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DMAStop+0x0): multiple definition of `HAL_SAI_DMAStop'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DMAStop+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Abort':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Abort+0x0): multiple definition of `HAL_SAI_Abort'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Abort+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Transmit_DMA':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Transmit_DMA+0x0): multiple definition of `HAL_SAI_Transmit_DMA'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Transmit_DMA+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_Receive_DMA':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_Receive_DMA+0x0): multiple definition of `HAL_SAI_Receive_DMA'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_Receive_DMA+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_EnableTxMuteMode':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_EnableTxMuteMode+0x0): multiple definition of `HAL_SAI_EnableTxMuteMode'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_EnableTxMuteMode+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DisableTxMuteMode':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DisableTxMuteMode+0x0): multiple definition of `HAL_SAI_DisableTxMuteMode'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DisableTxMuteMode+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_EnableRxMuteMode':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_EnableRxMuteMode+0x0): multiple definition of `HAL_SAI_EnableRxMuteMode'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_EnableRxMuteMode+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_DisableRxMuteMode':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_DisableRxMuteMode+0x0): multiple definition of `HAL_SAI_DisableRxMuteMode'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_DisableRxMuteMode+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_IRQHandler':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_IRQHandler+0x0): multiple definition of `HAL_SAI_IRQHandler'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_IRQHandler+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_GetState':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_GetState+0x0): multiple definition of `HAL_SAI_GetState'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_GetState+0x0): first defined here
c:/users/shensley/appdata/local/arduino15/packages/stmicroelectronics/tools/xpack-arm-none-eabi-gcc/9.3.1-1.3/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/bin/ld.exe: C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\SrcWrapper\HAL\stm32yyxx_hal_sai.c.o: in function `HAL_SAI_GetError':
stm32yyxx_hal_sai.c:(.text.HAL_SAI_GetError+0x0): multiple definition of `HAL_SAI_GetError'; C:\Users\shensley\AppData\Local\Temp\arduino_build_432111\libraries\DaisyDuino\utility\stm32h7xx_hal_sai.c.o:stm32h7xx_hal_sai.c:(.text.HAL_SAI_GetError+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
Using library MIDI_Library at version 5.0.2 in folder: C:\Users\shensley\Documents\Arduino\libraries\MIDI_Library
Using library DaisyDuino at version 1.3.0 in folder: C:\Users\shensley\Documents\Arduino\libraries\DaisyDuino
Using library Wire at version 1.0 in folder: C:\Users\shensley\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.0.0\libraries\Wire
Using library SrcWrapper at version 1.0.1 in folder: C:\Users\shensley\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.0.0\libraries\SrcWrapper
exit status 1
Error compiling for board Generic STM32H7 Series.
The Daisy Petal Looper example has a bug where led_ring_1_r and fs_led_4 start blinking a bit after you make your first recording.
This isn't part of the intended behavior.
It's difficult to use the Arduino examples right now since you load the examples direct from the IDE and there is no documentation/diagrams, etc.
We should come up with a solution for this.
I would vote for a standard comment template at the top of sketches which includes author, description, controls, and link to breadboard diagram if necessary.
Here's what I had in mind:
// Title: Mincer
// Description: Granular Sampler
// Hardware: Daisy Seed
// Author: Andrew Ikenberry
// Controls:
// Knob 1: pitch
// Knob 2: speed
// Encoder: mode
// Diagram: https://github.com/electro-smith/DaisyExamples/blob/master/seed/Knob/resources/Knob_bb.png
While trying to integrate an SPI display, discovered that the definitions for D8 and D9 are reversed.
I initialized the Oled with the following:
// the magic incantation
U8G2_SSD1309_128X64_NONAME2_F_4W_SW_SPI oled(U8G2_R0,
/* clock=/ PIN_PATCH_SM_D10,
/ data=/ PIN_PATCH_SM_D8,
/ cs=/ PIN_PATCH_SM_D1,
/ dc=/ PIN_PATCH_SM_D9,
/ reset=*/ PIN_PATCH_SM_D3);
I wired it up as follows:
Display Pin Daisy SM Pin
VCC… A10
GND… A7
SCK … D10
SDA … D9
RES … D3
DC … D8
CS … D1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.