-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatability/Compilation Issues w/ Nano 33 BLE Sense #216
Comments
Related: #200 . Is this the same board actually? |
Not my wheelhouse, but they don't appear to be the same. The sense is based on nRF52840 and the IOT is based on the SAMD21. The pin layouts seem different, at least. It seems to be in the mbed class of Arduinos, with its own separate listing as mbed_nano for compatability checks. |
IIRC, the Nano 33 BLE used to work before we added the MBED port (for Arduino Giga/Portenta). Probably it's simply and over-eager hardware detection inside hardware_defines.h, then. Could you try modifiying that file? If you change this line https://github.com/sensorium/Mozzi/blob/cf9e173cd181f2a893f31923aaa0f2ec8e39efbc/hardware_defines.h#L59C6-L59C30 to If so, at least, we know what's going on, and just need to adjust that define. |
I get a different error, unfortunately
On version 1.10 I get an error that I'm missing <STM32ADC.h> (hardware_defines.h line 52), so it wasn't working on that version either. |
I see now what you already pointed out long ago: The Nano 33 BLE is entirely different from the Nano 33 IoT, with a different CPU, and a different core, too. So it really seems we never supported the BLE so far, despite the fact that the IoT has been reported to work with Mozzi. It is probably not going to be exceedingly difficult to provide at least basic support for the Nano 33 BLE, but we're currently in the middle of restructuring some internals, and so touching those parts of the code right now would add a lot of complexity. The restructuring will also add some more flexibility for configuration, and with some luck, I think the BLE may actually work out of the box in a PWM mode, with analog input disabled. Feel free to remind us, should we forget to revisit this issue. |
I've hit the same problem. Also using a couple of different nRF52840 modules. This is a growing family so it would be nice to have some support for them. |
The following compiles with Mozzi 2.0, and might just work (but I don't have a 33 BLE to test with).
|
Thanks for the try. I still get the same problem though. Looks like the required library, HardwareTimer.h is not available for the nRF52840 based boards. |
What core are you using? I tested "Arduino Mbed OS Nano Boards". |
Adafruit Feather nRF52840 Express and Sense. Since you asked I just tried it on Arduino Nano 33 BLE and that did compile. I can't say for sure it works since I have no speaker on that right now. Maybe it only works on Mbed boards? |
Board: Nano 33 BLE Sense
Version: GitHub Latest
Steps to Reproduce: Attempt to compile empty sketch onto Nano 33 BLE Sense with MozziGuts.h included
The issue seems to stem from the fact that Mozzi considers the Nano 33 BLE Sense to be of the MBED family (I don't know what this means so I can't interpret). In AudioConfigMBED.h, Mozzi therefore assumes the 33 BLE Sense is compatable with the Arduino AdvancedAnalog library, which it isn't and assumes the board has a pin A13 which it doesn't.
The result is failed compilation and what seems to be a bunch of issues related to the AdvancedAnalog library. Unfortunately this isn't my jam so I can't help fix.
The text was updated successfully, but these errors were encountered: