We are trying to develop our custom tag using DWM1001C and DWM1004C modules. We want to upload our custom program/firmaware on these modues. How to program these modules without taking out any pinouts?
We want to remove modules from casing and then put module on programmer to program and then again insert it into casing. Do you have such programmer as per our requirement?
We do not want to take out any Pinouts outside of casing.
Please advice regarding different programming options.
What exactly do you mean with “We want to remove modules from casing”? Are you buying the modules on a DWM1001-dev breakout board?
I would suggest connecting the SWD interface to a programming header. This header can be populated for prototyping and left unpopulated for production. A bed of nails can be used to program the firmware in production.
A common approach is to use something like a tag-connect footprint on the PCB. This allows to connect a programmer without having to populate a connector on the board and it’s easy to make compatible with a bed of nails.
We are planning to program DWM1001C module using USB.
USB will be connected to dekstop where segger has been installed. On J-link EDU will be mediator between dekstop and DWM100C module. I have refereed link - Mininum pins to enable DWM1001
SWDIO of the J-Link needs to be connected to SWD_DIO of the module
SWCLK of the J-Link needs to be connected to SWD_CLK
GND of the J-Link needs to be connected to GND of the J-Link.
Connecting Vref of the J-Link to Vcc of the module can also be handy to spot issues with the power supply. The J-Link can monitor the voltage on this signal so you can check if it’s in range. Some J-Links (not sure about J-Link EDU) are also able to source 3V3 which allows to power the product, but I would advice against this for radio modules since they require high transient currents.
An other signal that is interesting to connect is reset (RESETn on module), allowing to perform hardware resets. This is often faster and more reliable than resets over SWD.