This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

pca10056 vddio and REGOUT0 setting

Greetings -

I am working on a peripheral-heavy project. Many of the devices seem to work Just Fine with VDDio of 1.8 volts. On device seems to be having fits and I need to rule out a low "logic 1" voltage.

The PCA10056 I have has the "EXTSUPPLY" register in the UICR set to "true" (0x1) and "REGOUT0" having a value with the low-order 3 bits set to 0x4. According to the documentation for the device, the result SHOULD be that VDDio is 3.0 volts.

If I assert a GPIO pin and measure the voltage I see 1.80 volts. If I hook up a logic analyzer and look at GPIO pins that are being used for SPI and I2C peripherals, I see 1.80 volts.

Update: I have tested other code, including the "usbd" example, and output voltage is 3.0 volts, as expected. The key difference is that my code is using BLE functions through the SoftDevice and the "usbd" example doesn't.

Help?

Parents
  • Greetings -

    The problem was caused by my using the wrong address to read the EXTSUPPLY (offset 0x300) and REGOUT0 (0x304) values. I was using a base address of 0x10000000 instead of the correct address of 0x10001000. When I used the correct value I found that both values in the UICR were uninitialized (0xFFFFFFFF). After programming the desired values (0x01 and 0x04) to those two locations using nrfjprog, respectively, all is well.

Reply
  • Greetings -

    The problem was caused by my using the wrong address to read the EXTSUPPLY (offset 0x300) and REGOUT0 (0x304) values. I was using a base address of 0x10000000 instead of the correct address of 0x10001000. When I used the correct value I found that both values in the UICR were uninitialized (0xFFFFFFFF). After programming the desired values (0x01 and 0x04) to those two locations using nrfjprog, respectively, all is well.

Children
No Data
Related