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

Resetting device via python bindings

I am developing a tool that will be using the existing NRF51 dongle to run the S130 SD and it is being written in Python. There is no way to change any of these parameters since dev has been going for years on the tool chain via a different chip supplier for BLE. Even if I close the device I cannot reconnect to it since it's already running in a state that I cannot guess since I have multiple tools. If I just power through things I run afoul of already registered base UUIDs and other things that take resources.

Is there any way from python to clear out the state of the SD back to the one from a fresh boot. I saw a thread there a SD call can be made to reset the entire device (which would be fine with me) however in 0.5.0 python swig bindings I do not see it in there. Unless there is some way to get the JLINK serial number from the python bindings I cannot simply call the nrfjprog --reset command since I have multiple jlink pods/dongles on the system and I need to target the one that I have currently selected (which is done via the COMX port number)

-Jim

Parents
  • I thought I was quite clear. I'm using the python bindings to the device which means that it's running the connectivity app. It's has to be by definition. I cannot change languages (which you are suggesting by telling me the solution is to call the C function in nvic) I have multiple years of python codebase that is currently talking to a different BLE solution via python wrappers that I developed years ago and that cannot change to accomodate a lack in the python bindings that are currently being used. There is no sd_nvic_SystemReset in the python bindings like I already mentioned. Without a way to reset the device via the bindings I cannot configure the stack again since it's already configured from a previous run (which can be from a different tool using different settings)

Reply
  • I thought I was quite clear. I'm using the python bindings to the device which means that it's running the connectivity app. It's has to be by definition. I cannot change languages (which you are suggesting by telling me the solution is to call the C function in nvic) I have multiple years of python codebase that is currently talking to a different BLE solution via python wrappers that I developed years ago and that cannot change to accomodate a lack in the python bindings that are currently being used. There is no sd_nvic_SystemReset in the python bindings like I already mentioned. Without a way to reset the device via the bindings I cannot configure the stack again since it's already configured from a previous run (which can be from a different tool using different settings)

Children
No Data
Related