Hi Simon,

I have a source tree of openocd 0.10 with that capability.
And I have built versions for Linux/MacOS as well, although you probably
don’t want those.

Let me know if you want me to send the source tarball. I should be able 
to generate a patch file out of it too.

Bummer that the binaries are not there anymore. I use openocd to flash nrf52
occasionally.

> On Jan 25, 2019, at 10:39 PM, Simon Ratner <si...@proxy.com> wrote:
> 
> Correct, the version of openocd in homebrew does not work with nRF52. There
> used to be a link to pre-built binaries that do work, but that link is gone
> in the latest version of the docs. I have just run into this myself - no
> idea why/when the docs were changed.
> 
> Compare:
> http://mynewt.apache.org/v1_4_0/get_started/native_install/cross_tools.html#installing-openocd-on-mac-os
> http://mynewt.apache.org/latest/get_started/native_install/cross_tools.html#installing-openocd-on-mac-os
> 
> There is still a comment about this in the new docs (in the previous
> section), but the link to download is gone and the instructions tell you to
> install from brew, which does not work.
> 
> simon
> 
> 
> On Thu, Jan 3, 2019 at 8:09 AM Fabio Utzig <ut...@apache.org> wrote:
> 
>> Hi Duane,
>> 
>> I believe, but am not entirely sure, that OpenOCD 0.10.0 release was not
>> able to flash nrf52x devices. I would suggest installing the latest from
>> git. If using homebrew:
>> 
>> $ brew install --HEAD open-ocd
>> 
>> Or "reinstall" might work (sorry, not macOS user here!)
>> 
>> Best,
>> Fabio
>> 
>> On Thu, Jan 3, 2019, at 1:26 PM, Duane Hooton wrote:
>>> I am attempting to establish a newt environment on a MacBook running
>>> Mojave. This is a new computer and only supports usb-c ports. I have
>>> attached a newt nano2 through an adapter to one of these ports.
>>> 
>>> I have meticulously followed the steps to produce the Blinky app and
>>> associated boot loader. Here is the output from newt target show:
>>> 
>>> targets/my_blinky_sim
>>> 
>>>    app=apps/blinky
>>> 
>>>    bsp=@apache-mynewt-core/hw/bsp/native
>>> 
>>>    build_profile=debug
>>> 
>>> targets/rbnano2_blinky
>>> 
>>>    app=apps/blinky
>>> 
>>>    bsp=@apache-mynewt-core/hw/bsp/rb-nano2
>>> 
>>>    build_profile=debug
>>> 
>>> targets/rbnano2_boot
>>> 
>>>    app=@apache-mynewt-core/apps/boot
>>> 
>>>    bsp=@apache-mynewt-core/hw/bsp/rb-nano2
>>> 
>>>    build_profile=optimized
>>> 
>>> The targets build successfully but when I attempt to load them I get the
>>> following output:
>>> 
>>> newt load rbnano2_blinky -v
>>> 
>>> Loading app image into slot 1
>>> 
>>> Load command:
>>> /Users/dhooton/Documents/projects/proxy/blinky/repos/apache-mynewt-core/
>>> hw/bsp/rb-nano2/rb-nano2_download.sh
>>> /Users/dhooton/Documents/projects/proxy/blinky/repos/apache-mynewt-core/
>>> hw/bsp/rb-nano2
>>> bin/targets/rbnano2_blinky/app/apps/blinky/blinky
>>> 
>>> Environment:
>>> 
>>> * FEATURES=BASELIBC_PRESENT BSP_NRF52 CONSOLE_UART_BAUD CONSOLE_UART_DEV
>>> CONSOLE_UART_FLOW_CONTROL FLASH_MAP_MAX_AREAS HAL_FLASH_VERIFY_BUF_SZ
>>> I2C_0_FREQ_KHZ I2C_0_PIN_SCL I2C_0_PIN_SDA I2C_1_FREQ_KHZ
>> MCU_DCDC_ENABLED
>>> MCU_FLASH_MIN_WRITE_SIZE MCU_NRF52832 MSYS_1_BLOCK_COUNT
>> MSYS_1_BLOCK_SIZE
>>> NFC_PINS_AS_GPIO OS_CPUTIME_FREQ OS_CTX_SW_STACK_GUARD
>>> OS_IDLE_TICKLESS_MS_MAX OS_IDLE_TICKLESS_MS_MIN OS_MAIN_STACK_SIZE
>>> OS_MAIN_TASK_PRIO OS_SCHEDULING OS_SYSVIEW_TRACE_CALLOUT
>>> OS_SYSVIEW_TRACE_EVENTQ OS_SYSVIEW_TRACE_MUTEX OS_SYSVIEW_TRACE_SEM
>>> QSPI_FLASH_SECTOR_COUNT QSPI_PIN_CS QSPI_PIN_DIO0 QSPI_PIN_DIO1
>>> QSPI_PIN_DIO2 QSPI_PIN_DIO3 QSPI_PIN_SCK SANITY_INTERVAL
>>> SPI_0_MASTER_PIN_MISO SPI_0_MASTER_PIN_MOSI SPI_0_MASTER_PIN_SCK
>>> SPI_0_SLAVE_PIN_MISO SPI_0_SLAVE_PIN_MOSI SPI_0_SLAVE_PIN_SCK
>>> SPI_0_SLAVE_PIN_SS SPI_1_MASTER_PIN_MISO SPI_1_MASTER_PIN_MOSI
>>> SPI_1_MASTER_PIN_SCK SPI_1_SLAVE_PIN_MISO SPI_1_SLAVE_PIN_MOSI
>>> SPI_1_SLAVE_PIN_SCK SPI_1_SLAVE_PIN_SS SYSINIT_CONSTRAIN_INIT TIMER_0
>>> UARTBB_0_PIN_RX UARTBB_0_PIN_TX UART_0 UART_0_PIN_CTS UART_0_PIN_RTS
>>> UART_0_PIN_RX UART_0_PIN_TX UART_1_PIN_CTS UART_1_PIN_RTS
>> WATCHDOG_INTERVAL
>>> XTAL_32768
>>> 
>>> * FLASH_OFFSET=0x8000
>>> 
>>> * IMAGE_SLOT=0
>>> 
>>> *
>>> CORE_PATH=/Users/dhooton/Documents/projects/proxy/blinky/repos/apache-
>>> mynewt-core
>>> 
>>> *
>>> BSP_PATH=/Users/dhooton/Documents/projects/proxy/blinky/repos/apache-
>>> mynewt-core/hw/bsp/rb-nano2
>>> 
>>> * BIN_BASENAME=bin/targets/rbnano2_blinky/app/apps/blinky/blinky
>>> 
>>> Error:
>>> 
>>> Downloading bin/targets/rbnano2_blinky/app/apps/blinky/blinky.img to
>> 0x8000
>>> 
>>> Open On-Chip Debugger 0.10.0
>>> 
>>> Licensed under GNU GPL v2
>>> 
>>> For bug reports, read
>>> 
>>> http://openocd.org/doc/doxygen/bugs.html
>>> 
>>> Info : auto-selecting first available session transport "swd". To
>> override
>>> use 'transport select <transport>'.
>>> 
>>> adapter speed: 10000 kHz
>>> 
>>> cortex_m reset_config sysresetreq
>>> 
>>> Info : CMSIS-DAP: SWD  Supported
>>> 
>>> Info : CMSIS-DAP: Interface Initialised (SWD)
>>> 
>>> Info : CMSIS-DAP: FW Version = 1.0
>>> 
>>> Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
>>> 
>>> Info : CMSIS-DAP: Interface ready
>>> 
>>> Info : reduce speed request: 10000kHz to 5000kHz maximum
>>> 
>>> Info : clock speed 10000 kHz
>>> 
>>> Info : SWD DPIDR 0x2ba01477
>>> 
>>> Info : nrf52.cpu: hardware has 6 breakpoints, 4 watchpoints
>>> 
>>> target halted due to debug-request, current mode: Thread
>>> 
>>> xPSR: 0x01000000 pc: 0xfffffffe msp: 0xfffffffc
>>> 
>>> .openocd_cmds:6: Error: invalid subcommand "write_image erase
>>> bin/targets/rbnano2_blinky/app/apps/blinky/blinky.img 0x8000"
>>> 
>>> in procedure 'script'
>>> 
>>> at file "embedded:startup.tcl", line 60
>>> 
>>> in procedure 'flash' called at file ".openocd_cmds", line 6
>>> 
>>> 
>>> 
>>> load - Load application image on to the board for <target-name>
>>> 
>>> 
>>> Usage:
>>> 
>>>  newt load <target-name> [flags]
>>> 
>>> 
>>> Flags:
>>> 
>>>      --extrajtagcmd string   Extra commands to send to JTAG software
>>> 
>>> 
>>> Global Flags:
>>> 
>>>  -h, --help              Help for newt commands
>>> 
>>>  -j, --jobs int          Number of concurrent build jobs (default 8)
>>> 
>>>  -l, --loglevel string   Log level (default "WARN")
>>> 
>>>  -o, --outfile string    Filename to tee output to
>>> 
>>>  -q, --quiet             Be quiet; only display error output
>>> 
>>>  -s, --silent            Be silent; don't output anything
>>> 
>>>  -v, --verbose           Enable verbose output when executing commands
>>> 
>>> I have also tried the steps to remove write protection but without
>> changing
>>> the result. Any ideas on why the attempt to write/erase flash is failing?
>>> It seems clear that I am communicating with the device.
>>> 
>>> Thanks!
>>> 
>>> --
>>> “Reality is merely an illusion, albeit a very persistent one.” Alert
>>> Einstein
>> 

Reply via email to