Hi, community!
I’ve read a lot of articles and checked a lot of products on the site to find a board for my next project. So far I understand there’s no single board with everything I need and there will be trade-offs, but I could be mistaken. That’s why I would like to ask for your help, as you are not new to XIAO boards.
My main criteria points:
-
Supports Bluetooth (preferably the classic one, but BLE may be probably a fit as well)
I am planning to have an application on my PC / Phone, which will connect to the controller over Bluetooth and send some instructions, as well as controller can respond back to the paired PC. I don’t need the Bluetooth to work all the time, so only when the application is connected. Therefore I figured out I don’t need a BLE - hence I will be able to support a good stream between the controller and the PC, and don’t maintain the Bluetooth signal, when I have the application off. Talk me out if I am mistaken here and BLE works better. But as I understood BLE is good for different scenarios. -
Supports USB (preferably Native)
Similar idea, I want to be able to use USB instead of Bluetooth for pairing with PC. Though, I was as well thinking on using USB-Midi, to send some Midi commands to the device. I quite not sure, whether having a Native USB on the controller is an advantage here. I believe, alternatively, I will need to create my own drivers, if Native USB is not supported? I’ve had a very nice USB Midi experience with Teensy boards. So, would love to have similar capabilities. -
Has onboard flash for user data
This is a tough topic for me. My application will have a capability to save few configurations sent from the PC into the controller, so the controller then can use them standalone without the application. Hence, I would like to be able to store them within the micro-controller, so they are saved in the device even if the device will be shut down. I deliberately want to not use an SD card, since it is an overkill for my application. In my scenario I will use quite a limited amount of storage for several light-weight user settings.
Also, I know it is possible to write into the EEPROM of the controller, but I want to exclude this, since it doesn’t look to be the right place for user specific things, and EEPROM has a limited amount of write cycles (yeah, it’s around 100K-1M, but anyway, rather a hack, than the best practice). I understand, that the units with QFlash onboard are specifically designed for my goal, am I correct? -
Supports Battery Power
And here I mean indeed the standard alkaline battery usage, not a Li-Ion one. I believe it is not an issue for almost all the XIAO boards, however, I would like to check with you. It is important for me to be able to use USB and USB power when connected to the PC, while using the battery when USB connection is absent.
I think this is it. I’ve also checked lots of Adafruit QT boards - unfortunately they either have a BLE but not Bluetooth, USB but not Native, or have WiFi, which I don’t need at all. However, any hint into the direction of any other board is welcome. Size matters, but I will be glad to hear your opinions.