3.3V external supply issue

Hi guys,

What is the minimum external supply that can enable the Arduino Nano BLE 33 to start working? I am trying with PPK2 to provide 3.3V to 3.3V pin but seems that my board is not able to run the BLE peripheral code. Does anyone have an idea how to solve this problem?

The radio of the Nano 33 BLE will draw 80 mA when transmitting, and everything else draws a few milliamps. 400 mA should be more than adequate to power all components and all pins at 15 mA each, which falls below the USB supply Maximum. You can also hook up two USB cables to the PPK2 and supply up to 1 A, which should definitely be enough. You have to change some things in the nRF Connect for Desktop. See this video for more information.

I tried to directly provide the power from the PPK2 VOUT pin to 3.3V, and I am able to see LED blinking on the board but for example not able to start with my code. I understand what you are talking about but the PPK2 board is just for testing, I plan to use some external power source (such as solar panel, etc.). Can this be a possible solution to enable direct supply to 3.3V:

Cutting the solder jumper allows to power via battery connecting the battery’s ground to the GND pin and the battery’s positive to the 3.3V pin.

I think that I found the solution: Getting started with Arduino Nano 33 BLE and BLE sense – DumbleBots. I just need to cut the solder jumper once my code is ready and the direct supply on 3.3V pins will be enabled. If I want to change/adapt the code later I can just solder two wires and then like a switch connect/disconnect my board.

You should not need to cut anything, but if you are coming in on the VIN pin, you will need to supply 4.5 volts as per the voltage regulator specifications.

There is not such thing. I think you are confused about the pinout.

The maximum that my external power supply can provide is 3.3V so I need to find a way how to enable my board to work under a 3.3V supply. I am using the PPK2 board just to test the board and measure the current consumption of different states of the device. That is the reason why I am wondering if by cutting the jumper I will be able to provide it 3.3V directly and enable my board to run the code without a direct USB connection. My question, in that case, is: Is the Arduino Nano BLE 33 able to run the code under only a 3.3V supply?

I send you an image of the Power Profiler Kit 22 that I am using and the VOUT pin that I use when I try to supply a voltage and measure the current consumption/execution time for different states of my Arduino board.

Why is it printed right on the front of the image you attached MAX is 5.0 volts?
Are you using the software for the PPK2?
Did you watch the video on how to enable up to 5 volts out?

As I mentioned before, the external power source that I will consider for my project is not PPK2 (and it can only provide 3.3V max), but PPK2 is used just for testing. I am able to run the code now when I removed all parts related to the Serial monitor (probably my code was stuck with Serial.println/Serial.begin) and I was not able to see any LED blinking and other expected behavior. Now, when I removed all parts related to Serial I can see what I am expecting. Yes, I am using Nordic software to see the results of my experiments (nRF Connect for Desktop).

Ok, now I understand. Yes, the entire board runs on 3.3 Volts.

Take a hard look at the schematic (lower left). the MPM3610 (IC1) is a QFN package, so jumpering might be a little tricky. You WILL void your warranty! Also check out the datasheet for the MPM3610, and compare the Typical Application Circtuits (page 20) to the schematic for the Nano, to see what the functions of the other components are...

Maybe your best bet is to solder onto jumper SJ4 and take your 3.3 Volts in there.

I cannot be held liable for your actions taken from my advice. Good Luck!

I will take a look at the datasheet for sure, thanks for the links. I think that is the best solution at this moment as I need also to decrease the power consumption. Based on the information that I found on this forum, a low power setup can be created by cutting a solder jumper (SJ4) (power NANO 33 BLE sense with 3.3V - #3 by cynexx). As we already started this conversation about the power supply, do you maybe have some examples related to the low power consumption setup? When I used nRF52480DK I was able to decrease the consumption by up to 9/10microA in a deep sleep state, but based on my experience with Arduino there are not so energy efficient (or I am wrong :grinning:).

The Arduino API is not the most optimal code. But, the IDE and hardware do not restrict you in any way. You should be able to achieve similar results to the DK and use your existing source code. Most of the power consumption is in the radio transmission, so you should do some real world testing before jumping off the deep end. The forum can only help get you close. If you are not using Bluetooth, and not doing a lot of GPIO sourcing, you will likely operate the core active (not asleep) under 10 mA.

I used Nordic SDK for Mesh (running from Segger IDE). I chose to run the code in the Arduino IDE as I need to use TensorFlow Lite library. Is it possible to use Nordic code in combination with Arduino and run everything in Arduino IDE? I am planning to use Mesh features and the most important part will be the sleep state that has to provide a very low current.

The simple and short answer is yes.

It is a bit more involved than simple. Arduino, like Segger and other IDE, have a user interface and various backend utilities that work together, such as a linker and a complier, called a toolchain. You are already familiar with how to "add" the Nano 33 BLE to the IDE, and you could add any toolchain for any board in a similar manner. If in Segger, you were using GCC, the toolchain is more compatible than if you were using Segger, IAR, KEIL or LLVM. This is really beyond my expertise. I've made my own board profiles, before, but for simple "AVR" microcontrollers which didn't require too much adaptation to the IDE.

What part of your existing code is Segger or Nordic specific?

Also, make sure TensorFlow Lite isn't an XY problem. Can TensorFlow Lite be ported to run in Segger or is there a Segger compatible library that achieves the same objective?

I would suggest marking this thread as solved and starting a new thread with the question of how to use source code from Nordic SDK for Mesh in the Arduino IDE for the Nano 33 BLE.

Be prepared to speak more on your actual project and what your end goal is, and to share your source code.

Yes indeed, that is the better option to start a new thread related to this new topic. Thanks for the information and help related to the voltage supply issue.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.