Programming nrf52840 in production

Hello,

I am currently using the nrf52840 evaluation board in developing a prototype. Once this goes into production, what are my options for programming the firmware? What pins are necessary? Is there any reference circuitry I can reference? Lastly, is programming the firmware wirelessly an option?

Parents
  • Hi,

    From my limited experience, a programming/validation jig is made to be used in production. On your production PCB, you expose (at minimum) the signals needed for programming as test points. The jig board would have a fixture that locates the board and has pogo pins that meet up with the test points on your production PCB. If you want to test other pins for functionality, you can break those out as well. Here's a hobbyist example of what I'm talking about.

    Between working with the dev board and going to production you'll probably want to pick up a j-link programmer. (The devkits have a programming chip built into the board, but the standalone devices can handle higher throughput if you're using RTT to log a lot of stuff). This would connect to the ground, VDD, SWDIO, SWCLK, SWO, and RESET signals on the NRF chip. These are also the signals you would have to break out as test points so that the programming jig could load firmware.

    You can load firmware wirelessly by using mcuboot. However, you would have to program physically the first time so that it has the firmware to support doing a wireless firmware update. A good example is the smp_svr example which has options for programming firmware over USB and bluetooth.

Reply
  • Hi,

    From my limited experience, a programming/validation jig is made to be used in production. On your production PCB, you expose (at minimum) the signals needed for programming as test points. The jig board would have a fixture that locates the board and has pogo pins that meet up with the test points on your production PCB. If you want to test other pins for functionality, you can break those out as well. Here's a hobbyist example of what I'm talking about.

    Between working with the dev board and going to production you'll probably want to pick up a j-link programmer. (The devkits have a programming chip built into the board, but the standalone devices can handle higher throughput if you're using RTT to log a lot of stuff). This would connect to the ground, VDD, SWDIO, SWCLK, SWO, and RESET signals on the NRF chip. These are also the signals you would have to break out as test points so that the programming jig could load firmware.

    You can load firmware wirelessly by using mcuboot. However, you would have to program physically the first time so that it has the firmware to support doing a wireless firmware update. A good example is the smp_svr example which has options for programming firmware over USB and bluetooth.

Children
No Data
Related