Who can tell how you can change the key values for the full numbering of SCR bluecore chips. The built-in function only modifies the user keys from 0 to 49. I tried to change the first digit of the pincode with the help of address arithmetic.

uint16 *pIn=pIn+0x035b;

A virtual machine protects memory and panics the application: "VM has panicked! Reason: Write to illegal address (Context: 0x35b)". How to get around this? What are the possible ways to change the keys with full numeration? How for example programmatically change the name of the device Bluetooth?

  • 1
    Panic is due to the fact that in VM memory addresses 0x0000 - 0x03ff are causing panic and if you edit address 0x035b + 0 you are inside the illegal zone and panic occurs. 0x035b + 50 is 0x03ab and also in panic zone.
    – mico
    Commented Apr 8, 2017 at 21:03
  • Global variables are at zone 0x0400 - 0x07ff
    – mico
    Commented Apr 8, 2017 at 21:06
  • Generally in the SE system you would need to be more specific, provide links to the documentation or source of the vendor code you are interacting with, or else would be asked to pursue vendor-specific help resources instead. Commented Apr 24, 2017 at 19:08

1 Answer 1


It seems that there is no direct access to the necessary memory, that is, there is no function to write to the global index, but I found a way to change the device name. You can use this function ConnectionChangeLocalName (8, (uint8 *) "My_Name").Bluetooth began to show up under the name My_Name, and the local device name changed to linvor in PSTool.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.