C:Program Files (x86)Nordic Semiconductornrf51binnrfjprog

I think I may have discovered the issue with the Nordic stuff.  Our boards have older revs. of the chip.  The dongle is at least two whole versions out of date.  So it doesn’t seem like I’m going to get this working without quite a lot of essentially useless effort.  I think I may have to buy another eval kit if they don’t send me one soon.

Finally a response from Nordic.

Hi Mik,
I requested an update internally, and it seems that we have an issue with our eval-kit delivery from our supplier. It was supposed to ship last week, but has been delayed. I am very sorry for this, and I will keep you updated once I hear something.
Regarding the PCA10000:If you have programmed it with the MCP firmware, the whole flash has been readback/flash protected (so that you do not flash it by mistake from Keil for instance). Try calling “nrfjprog -e” from cmd.exe, then flash it from Keil.
Best regardsHÃ¥kon

So it appears that they protect the dongle from being overwritten by someone loading code into it, when they meant to load the code into the PCA10001.   I found the program Hakon refers to and ran it and hey presto!  But not quite.  It turns out that the V1 boards are different to the V2 boards now in service, and they are using different serial pins.

So I had to modify one of the header files.  I wonder how many other people have been screwed by this.  Not too many I guess otherwise they would have fixed the code.

/* Copyright (c) 2012 Nordic Semiconductor. All Rights Reserved.
 *
 * The information contained herein is property of Nordic Semiconductor ASA.
 * Terms and conditions of usage are described in detail in NORDIC
 * SEMICONDUCTOR STANDARD SOFTWARE LICENSE AGREEMENT.
 *
 * Licensees are granted free, non-transferable use of the information. NO
 * WARRANTY of ANY KIND is provided. This heading must NOT be removed from
 * the file.
 *
 */
#ifndef PCA10000_H
#define PCA10000_H

#define HWFC           true

// Definitions for PCA10000 v2.0.0
#ifndef BOARD_PCA10000v1
//#warning “Board PCA10000 v2.0.0”
#define RX_PIN_NUMBER  11
#define TX_PIN_NUMBER  9
#define CTS_PIN_NUMBER 10
#define RTS_PIN_NUMBER 8

// Definitions for PCA10000 v1.0
#else
#warning “Board PCA10000 v1.0.0”
#define RX_PIN_NUMBER  3
#define TX_PIN_NUMBER  1
#define CTS_PIN_NUMBER 2
#define RTS_PIN_NUMBER 0
#endif

#endif

Leave a Reply