I am working on a project that uses Bluetooth communication from the light-blue mobile app to the Arduino MKR 1010 using the ArduinoBLE.h library. I have it working when connected to my PC as a power supply, but when I connect it to a battery, BLE.begin() fails. Does anyone know how I can use this library without PC power? I am also using SPI.h, Adafruit_GFX.h, and Adafruit_HX8357.h for the touch screen I have connected to the board and the program is just not working with the battery supply. I initially thought it was because of the Serial print statements I had, but I commented them out and it still doesn't work.
Your battery does not have the needed capacity. Can you post your sketch as an annotated schematic with links to technical information on the hardware items. Be sure the schematic is as it is wired and include all power supplies and connections.
I’m sorry to hear that you are having trouble with your project. I searched the web for some possible solutions and here is what I found:
- According to the Arduino documentation1, the MKR WiFi 1010 board is designed to run on a Li-Po battery with a minimum capacity of 1024 mAh and a JST PH connector. The board has a circuit to charge the battery when there is power coming from VIN or USB, or use it as main power supply when there is no other source available. The board also has a charging LED that indicates when the battery is charging or full.
- Some users have reported that the BLE.begin() function fails to start on the MKR WiFi 1010 board2. One possible reason is that the board needs a firmware update for the NINA module that handles the Bluetooth® and Wi-Fi communication. You can follow this guide to update the firmware using the Arduino IDE: https://docs.arduino.cc/tutorials/mkr-wifi-1010/firmware-update
- Another possible reason for the BLE.begin() failure is that the board does not have enough power to run all the components connected to it. The MKR WiFi 1010 board has a maximum current output of 7 mA per I/O pin, which may not be enough to power a touch screen and other peripherals. You may need to use an external power supply or a higher capacity battery to provide enough current for your project.
- You can also try to reduce the power consumption of your board by using some low-power features of the ArduinoLowPower library and the Wi-Fi LowPowerMode. These features allow you to put the board into sleep mode or turn off some components when they are not needed. You can find more information and examples on how to use these features here: https://docs.arduino.cc/tutorials/mkr-wifi-1010/powering-with-batteries
I hope this helps you solve your problem. If you have any further questions, please let me know.
It turns out the battery I was using was supplying too much power. Thanks for all the helpful suggestions!!
That makes me happy! If you have any further questions, please do not hesitate to contact us
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.