Is there alternative location for QN9020 NVDS?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Is there alternative location for QN9020 NVDS?

Jump to solution
2,657 Views
tonymakkiel
Contributor III

Hi,

        Is there an alternative location QN9020 look for NVDS data apart from 0x30000000? I have verified using JLink I can read the NVDS data from the QN9020  MiniDK board from location 0x30000000. But when I do it from the internal board it, returns all 0 for at least about 0x1000 locations. But if I read the data using NVDS configurator the tool can read the value. So the system does have access to the nvds data. But not clear where is it reading from!

Labels (3)
Tags (2)
1 Solution
2,338 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony,

What is the value of the register that you readout? 40000098 

Power on flash: see register 40000098 value, mem32 40000098 1

if bit 2 is to 0, set bit 2 to 1, saving the previous values of the register.

pastedImage_1.png

Regards,

Mario

View solution in original post

0 Kudos
12 Replies
2,338 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony,

As you know, the 0x30000000 is the direction of the serial Flash begins.

pastedImage_1.png

What do you mean with the But when I do it from the internal board it? Did you try to read using the nvds_get()?

Regards,

Mario

0 Kudos
2,338 Views
tonymakkiel
Contributor III

Is there any document which describes how to read and write onto the internal flash using JLink? I have the commands on how to read the memory from your post in the other thread. But not sure what the steps are to write into the flash. Also any documents which describes addresses like 0x3ffffff8  would be useful.

Although I tried 

w4 3ffffff8 0x4       #[Tried without this line too]

w4 30000008 0xa5a5a5a5

 it did not work.

Is there any other document which details the internal flash? Section 9.2 of data sheet, states the interface is internal SPI.  I am guessing this is not one of the SPI [0/1]detailed in 9.4.2 of data sheet? Does the internal SPI needs to initialised from the user code?

0 Kudos
2,338 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony,

Remember, that the QN9020 is waiting for ISP commands in the case that you want to write using UART or SPI.

Are you trying to read out all the memory flash?

Could you please explain with more details what is your final application?

Regards,

Mario

0 Kudos
2,338 Views
tonymakkiel
Contributor III

I am trying to read the nvds section to check for any corruption [Please see comment on this thread 24-Dec-2019 02:44]. As I cant verify the data was checking whether I could write to the flash using JLink.

The application is a GATT based BLE application.

0 Kudos
2,338 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony,

As you know, the QN9020 has Integrated 32-bit Arm® Cortex® M0 MCU. The commands for writing are the same using JLink. Be sure that the device is not in ISP mode.

Also, look at the UM10995 for the ISP commands.

Regards,

Mario

0 Kudos
2,338 Views
tonymakkiel
Contributor III

Hi Mario,

      Can you please have a look whether the steps in reading the nvds data are correct.  As you can see, I cant read the data using JLink. But can using the NVDS Configurator.

Note: I reset the board before the start and just after starting "QBlue NVDS Configurator" [About 2:00 on the video].

This video is currently being processed. Please try again in a few minutes.
(view in My Videos)

0 Kudos
2,338 Views
tonymakkiel
Contributor III

Please let me know if you cant access the Screen capture video. I cant see it. But if I click on edit the comment the video is as part of the comment

0 Kudos
2,338 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony, 

I can not see the video that you attached. Could you please attached the commands that you are using and also the bin file?

Regards,

Mario

0 Kudos
2,338 Views
tonymakkiel
Contributor III

Attached [data.bin] is the bin file read using JLink and the commands used were

mem32 40000098 1
w4 40000004 400000
w4 3ffffff8 0x1000
savebin C:\Users\tony.makkiel\Desktop\data.bin 0x30000000 0x1000

0 Kudos
2,339 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Tony,

What is the value of the register that you readout? 40000098 

Power on flash: see register 40000098 value, mem32 40000098 1

if bit 2 is to 0, set bit 2 to 1, saving the previous values of the register.

pastedImage_1.png

Regards,

Mario

0 Kudos
2,338 Views
tonymakkiel
Contributor III

Thank you very much Mario. That bit was not set. Now I can read the data there.

2,337 Views
tonymakkiel
Contributor III

I am reading from the internal board, using JlLink(same steps I use to read from QN9020 MIniDk Board).The internal board I mentioned is one of our internal development boards with QN9020. With JLink when I save the data using

savebin C:\path\data.bin 0x30000000 0x1000, it is all 0.

I dont think it is something to do with JLink because I can read the BLE Processor memory 0x2E000000 and get data which i recognise.

But after the above step, if I use NVDS Configurator tool to check the data, it reads the data over UART without any error. All the NVDS data are there intact. 

Not sure what is different. So am presuming

- either the JLink read somehow failed or

- the NVDS Configurator is accessing the memory from another location?

0 Kudos