<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/7228/newbie-having-trouble-getting-started</link><description>Hello,
I just received my BMD-200 eval board today and cannot get any of the examples working. I started out trying to get blinky to work using GCC and the make files provided. I am able to successfully build the projects. The _build directory has the</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 25 Jul 2016 17:02:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/7228/newbie-having-trouble-getting-started" /><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25550?ContentTypeID=1</link><pubDate>Mon, 25 Jul 2016 17:02:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5e3dd2d-b4c5-462b-9f88-b706b189674c</guid><dc:creator>lesley</dc:creator><description>&lt;p&gt;try using Long Path Tool, it works.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25548?ContentTypeID=1</link><pubDate>Tue, 26 May 2015 05:53:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:363a4d02-f0b3-445a-b77f-c2c0a9c465eb</guid><dc:creator>cocoa</dc:creator><description>&lt;p&gt;Hi eq,
great, if everything ok mark the right answer received as correct.&lt;/p&gt;
&lt;p&gt;Bye.&lt;/p&gt;
&lt;p&gt;-c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25547?ContentTypeID=1</link><pubDate>Tue, 26 May 2015 02:48:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5721fc01-f509-4fc2-93fb-507543530ba6</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;You need to use the s110 version of the LD&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25546?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 23:00:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f1420fed-58d1-44bb-814f-0394dcbc0c54</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Got it Working!  Several things had to happen.  Used custom_board.h and SDK 6 was key. Thanks Cocoa for your help!!&lt;/p&gt;
&lt;p&gt;One question:  When I move to an example that requires Soft Device 110, will I still use gcc_nrf51_blank_xaaa.ld?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25545?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 21:47:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:834ad8b0-c955-4807-b3c2-6baa4984d281</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;OK, I&amp;#39;m getting close.  Do you know why these last errors are occurring in the blinky project?:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;_build/system_nrf51.o: In function `SystemCoreClockUpdate&amp;#39;:
system_nrf51.c:(.text+0x0): multiple definition of `SystemCoreClockUpdate&amp;#39;
_build/system_nrf51.o:system_nrf51.c:(.text+0x0): first defined here
_build/system_nrf51.o: In function `SystemInit&amp;#39;:
system_nrf51.c:(.text+0x10): multiple definition of `SystemInit&amp;#39;
_build/system_nrf51.o:system_nrf51.c:(.text+0x10): first defined here
_build/system_nrf51.o:(.data+0x0): multiple definition of `SystemCoreClock&amp;#39;
_build/system_nrf51.o:(.data+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
make: *** [_build/blinky_gcc_xxaa.out] Error 1
make: Target `all&amp;#39; not remade because of errors.
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25544?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 18:17:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:928a0ce9-b52e-4ea4-91c7-a41aae4c32c8</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;What is the current directory?  Do the relative path for source files actually reach the files ? Does it creates _build folder?
When you got fed up with makefile, go &lt;a href="http://embeddedsoftdev.blogspot.ca/p/ehal-nrf51.html"&gt;here&lt;/a&gt; and try Eclipse projects instead.  I stopped using makefile long long long ago, since they days of Borland C++ with OWL 1.0.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25543?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 16:50:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:68da4730-1bfc-4c81-b586-66075e95b721</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Here is makefile.common:...it seems to be failing here but the error message doesn&amp;#39;t tell me where it broke.  Can you tell what the problem is? I&amp;#39;m unfortunatley not a makefile expert, but once I get this example running I will be out of your hair..:-)&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;DEVICE := NRF51
DEVICESERIES := nrf51

SDK_INCLUDE_PATH = $(SDK_PATH)/Include/
SDK_SOURCE_PATH = $(SDK_PATH)/Source/
TEMPLATE_PATH += $(SDK_SOURCE_PATH)/templates/gcc/
OUTPUT_BINARY_DIRECTORY := _build

ifeq ($(OS),Windows_NT)
include $(TEMPLATE_PATH)Makefile.windows
else
include $(TEMPLATE_PATH)Makefile.posix
endif

ifeq ($(LINKER_SCRIPT),)
	ifeq ($(USE_SOFTDEVICE), S110)
		LINKER_SCRIPT = gcc_$(DEVICESERIES)_s110_$(DEVICE_VARIANT).ld
		OUTPUT_FILENAME := $(OUTPUT_FILENAME)_s110_$(DEVICE_VARIANT)
	else
		ifeq ($(USE_SOFTDEVICE), S210)
			LINKER_SCRIPT = gcc_$(DEVICESERIES)_s210_$(DEVICE_VARIANT).ld
			OUTPUT_FILENAME := $(OUTPUT_FILENAME)_s210_$(DEVICE_VARIANT)
		else
			LINKER_SCRIPT = gcc_$(DEVICESERIES)_blank_$(DEVICE_VARIANT).ld
			OUTPUT_FILENAME := $(OUTPUT_FILENAME)_$(DEVICE_VARIANT)
		endif
	endif
else
# Use externally defined settings
endif

CPU := cortex-m0

# Toolchain commands
CC       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-gcc&amp;quot;
AS       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-as&amp;quot;
AR       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-ar&amp;quot; -r
LD       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-ld&amp;quot;
NM       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-nm&amp;quot;
OBJDUMP  		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-objdump&amp;quot;
OBJCOPY  		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-objcopy&amp;quot;

MK 				:= mkdir
RM 				:= rm -rf

OBJECT_DIRECTORY := _build
LISTING_DIRECTORY := _build

C_SOURCE_FILES += system_$(DEVICESERIES).c
ASSEMBLER_SOURCE_FILES += gcc_startup_$(DEVICESERIES).s

# Linker flags
#LDFLAGS += -L&amp;quot;$(GNU_INSTALL_ROOT)/arm-none-eabi/lib/armv6-m&amp;quot;
#LDFLAGS += -L&amp;quot;$(GNU_INSTALL_ROOT)/lib/gcc/arm-none-eabi/$(GNU_VERSION)/armv6-m&amp;quot;
LDFLAGS += -Xlinker -Map=$(LISTING_DIRECTORY)/$(OUTPUT_FILENAME).map
LDFLAGS += -mcpu=$(CPU) -mthumb -mabi=aapcs -L $(TEMPLATE_PATH) -T$(LINKER_SCRIPT) 

# Compiler flags
CFLAGS += -mcpu=$(CPU) -mthumb -mabi=aapcs -D$(DEVICE) -D$(BOARD) -D$(TARGET_CHIP) --std=gnu99
CFLAGS += -Wall -Werror
CFLAGS += -mfloat-abi=soft

# Assembler flags
ASMFLAGS += -x assembler-with-cpp
 
INCLUDEPATHS += -I&amp;quot;../&amp;quot;
INCLUDEPATHS += -I&amp;quot;$(SDK_PATH)Include&amp;quot;
INCLUDEPATHS += -I&amp;quot;$(SDK_PATH)Include/gcc&amp;quot;
INCLUDEPATHS += -I&amp;quot;$(SDK_PATH)Include/ext_sensors&amp;quot;

# Sorting removes duplicates
BUILD_DIRECTORIES := $(sort $(OBJECT_DIRECTORY) $(OUTPUT_BINARY_DIRECTORY) $(LISTING_DIRECTORY) )

####################################################################
# Rules                                                            #
####################################################################

C_SOURCE_FILENAMES = $(notdir $(C_SOURCE_FILES) )
ASSEMBLER_SOURCE_FILENAMES = $(notdir $(ASSEMBLER_SOURCE_FILES) )

# Make a list of source paths
C_SOURCE_PATHS += ../ $(SDK_SOURCE_PATH) $(TEMPLATE_PATH) $(wildcard $(SDK_SOURCE_PATH)*/)  $(wildcard $(SDK_SOURCE_PATH)ext_sensors/*/) $(wildcard $(SDK_SOURCE_PATH)ble/*/)
ASSEMBLER_SOURCE_PATHS = ../ $(SDK_SOURCE_PATH) $(TEMPLATE_PATH) $(wildcard $(SDK_SOURCE_PATH)*/)

C_OBJECTS = $(addprefix $(OBJECT_DIRECTORY)/, $(C_SOURCE_FILENAMES:.c=.o) )
ASSEMBLER_OBJECTS = $(addprefix $(OBJECT_DIRECTORY)/, $(ASSEMBLER_SOURCE_FILENAMES:.s=.o) )

# Set source lookup paths
vpath %.c $(C_SOURCE_PATHS)
vpath %.s $(ASSEMBLER_SOURCE_PATHS)

# Include automatically previously generated dependencies
-include $(addprefix $(OBJECT_DIRECTORY)/, $(COBJS:.o=.d))

### Targets
debug:    CFLAGS += -DDEBUG -g3 -O0
debug:    ASMFLAGS += -DDEBUG -g3 -O0
debug:    $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

.PHONY: release
release: clean
release:  CFLAGS += -DNDEBUG -O3
release:  ASMFLAGS += -DNDEBUG -O3
release:  $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

echostuff:
	@echo C_OBJECTS: [$(C_OBJECTS)]
	@echo C_SOURCE_FILES: [$(C_SOURCE_FILES)]
	@echo C_SOURCE_PATHS: [$(C_SOURCE_PATHS)]

## Create build directories
$(BUILD_DIRECTORIES):
	$(MK) $@

## Create objects from C source files
$(OBJECT_DIRECTORY)/%.o: %.c
# Build header dependencies
	$(CC) $(CFLAGS) $(INCLUDEPATHS) -M $&amp;lt; -MF &amp;quot;$(@:.o=.d)&amp;quot; -MT $@
# Do the actual compilation
	$(CC) $(CFLAGS) $(INCLUDEPATHS) -c -o $@ $&amp;lt;

## Assemble .s files
$(OBJECT_DIRECTORY)/%.o: %.s
	$(CC) $(ASMFLAGS) $(INCLUDEPATHS) -c -o $@ $&amp;lt;

## Link C and assembler objects to an .out file
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out: $(BUILD_DIRECTORIES) $(C_OBJECTS) $(ASSEMBLER_OBJECTS) $(LIBRARIES)
	$(CC) $(LDFLAGS) $(C_OBJECTS) $(ASSEMBLER_OBJECTS) $(LIBRARIES) -o $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out

## Create binary .bin file from the .out file
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin: $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	$(OBJCOPY) -O binary $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin

## Create binary .hex file from the .out file
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex: $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	$(OBJCOPY) -O ihex $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

## Default build target
.PHONY: all
all: clean release

clean:
	-del $(OUTPUT_BINARY_DIRECTORY)

## Program device
.PHONY: flash
flash: $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex
	nrfjprog --reset --program $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

.PHONY: reset
reset:
	nrfjprog --reset

.PHONY: erase
erase:
	nrfjprog --erase
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25542?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 16:11:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:06e69025-88aa-43ef-a623-d647dab07f3e</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Trying to the build for the blinky example in the pca10001 folder as is.  Getting the following error:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&amp;quot;C:/Program Files (x86)/GNU Tools ARM Embedded/4.7 2013q1/bin/arm-none-eabi-gcc&amp;quot; -mcpu=cortex-m0 -mt
humb -mabi=aapcs -DNRF51 -DBOARD_PCA10001 -DNRF51822_QFAA_CA --std=gnu99 -Wall -Werror -mfloatabi=s
oft -DNDEBUG -O3 -I&amp;quot;../&amp;quot; -I&amp;quot;../../../../Include&amp;quot; -I&amp;quot;../../../../Include/gcc&amp;quot; -I&amp;quot;../../../../Include/
ext_sensors&amp;quot; -M ../main.c -MF &amp;quot;_build/main.d&amp;quot; -MT _build/main.o
The system cannot find the path specified.
make: *** [_build/main.o] Error 1
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25541?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 15:29:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:658f2ebd-8fdb-4397-b4d0-4b271f0a19fd</guid><dc:creator>cocoa</dc:creator><description>&lt;p&gt;Unable to farmat code here, see my first answer update II.
-c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25540?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 14:28:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:90ed783a-7845-4d5b-8923-1ee4e73dc74f</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Should I use Makefile.common?  Does it depend on where it i run from in the SDK directory structure?  Not sure how this is resolved: SDK_INCLUDE_PATH = $(SDK_PATH)/Include/
ie where SDK_PATH gets set&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25538?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 14:08:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:09aebd95-81a5-4507-b727-55a7d72d84ec</guid><dc:creator>cocoa</dc:creator><description>&lt;p&gt;6.1 it&amp;#39;s OK.&lt;/p&gt;
&lt;p&gt;-c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25539?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 14:07:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:99391194-1da6-44dc-910c-368a3c394643</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Thank you.  I only see SDK 6.1.0 on the nordic-semi devzone.  Should I look elsewhere for 6.1.1?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25549?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 13:58:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3528ab1e-ac58-4d3b-aa25-e3c72047cb91</guid><dc:creator>cocoa</dc:creator><description>&lt;p&gt;See  my updated answer.&lt;/p&gt;
&lt;p&gt;-c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25537?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 13:34:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c8fb7621-8ffe-4552-aac0-e11c29a5db0a</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;nRF51822 QFAAG20 (0x0057)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25536?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 05:48:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95245a03-98cf-4a05-9298-fe7e0ef9a31f</guid><dc:creator>cocoa</dc:creator><description>&lt;p&gt;Chip version,  please!! What are the numbers printed on your chip ?  -c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25535?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 00:22:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:20bd56e1-c767-42b1-b9f7-2865f2b9d14c</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;It looks like the makefile was unable to locate some source files.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25534?ContentTypeID=1</link><pubDate>Mon, 25 May 2015 00:19:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:01770ae4-5745-4ab7-985d-b698194a215a</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Actually putting those absolute paths in fixed the first errors that I had.  I&amp;#39;m on a windows machine so i think that should be ok.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25533?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 18:30:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2e9d6690-d5be-4f90-8608-d6549bb7ac49</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Could it be related to the &amp;#39;&amp;#39; that you are using instead of &amp;#39;/&amp;#39; ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25532?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 14:22:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b59aba17-3fdc-4ee1-a7fc-4cc0ea674f92</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Thanks for the advise.  I have started with the SDK 7 Makefile but cant get past this error:&lt;/p&gt;
&lt;p&gt;make[1]: *** No rule to make target &lt;code&gt;_build/V&amp;#39;, needed by&lt;/code&gt;nrf51822_xxaa&amp;#39;.  Stop.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m sure its something simple, but I&amp;#39;m not very familiar with Makefile syntax.  MAkefile below:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;PROJECT_NAME := blinky_s110_pca10028

export OUTPUT_FILENAME
#MAKEFILE_NAME := $(CURDIR)/$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
MAKEFILE_NAME := $(MAKEFILE_LIST)
MAKEFILE_DIR := $(dir $(MAKEFILE_NAME) ) 

TEMPLATE_PATH = ../../../../../../components/toolchain/gcc
ifeq ($(OS),Windows_NT)
include $(TEMPLATE_PATH)/Makefile.windows
else
include $(TEMPLATE_PATH)/Makefile.posix
endif

MK := mkdir
RM := rm -rf

#echo suspend
ifeq (&amp;quot;$(VERBOSE)&amp;quot;,&amp;quot;1&amp;quot;)
NO_ECHO := 
else
NO_ECHO := @
endif

# Toolchain commands
CC       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-gcc&amp;quot;
AS       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-as&amp;quot;
AR       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-ar&amp;quot; -r
LD       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-ld&amp;quot;
NM       		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-nm&amp;quot;
OBJDUMP  		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-objdump&amp;quot;
OBJCOPY  		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-objcopy&amp;quot;
SIZE    		:= &amp;quot;$(GNU_INSTALL_ROOT)/bin/$(GNU_PREFIX)-size&amp;quot;

#function for removing duplicates in a list
remduplicates = $(strip $(if $1,$(firstword $1) $(call remduplicates,$(filter-out $(firstword $1),$1))))

#source common to all targets
C_SOURCE_FILES += \
C:\Rigado\V 7.2.0\components\toolchain\system_nrf51.c \
C:\Rigado\V 7.2.0\examples\peripheral\blinky\main.c \
C:\Rigado\V 7.2.0\components\drivers_nrf\hal\nrf_delay.c \

#../../../../../../components/toolchain/system_nrf51.c \
#../../../main.c \
#../../../../../../components/drivers_nrf/hal/nrf_delay.c \

#assembly files common to all targets
#ASM_SOURCE_FILES  = ../../../../../../components/toolchain/gcc/gcc_startup_nrf51.s

ASM_SOURCE_FILES  = C:\Rigado\V 7.2.0\components\toolchain\gcc\gcc_startup_nrf51.s

#includes common to all targets

INC_PATHS  = -I.C:\Rigado\V 7.2.0\components\toolchain\gcc
INC_PATHS += -IC:\Rigado\V 7.2.0\components\toolchain
INC_PATHS += -IC:\Rigado\V 7.2.0\components\softdevice\s110/headers
INC_PATHS += -I../../..
INC_PATHS += -IC:\Rigado\V 7.2.0\examples\bsp
INC_PATHS += -IC:\Rigado\V 7.2.0\components\device
INC_PATHS += -IC:\Rigado\V 7.2.0\components\drivers_nrf\hal

#INC_PATHS  = -I../../../../../../components/toolchain/gcc
#INC_PATHS += -I../../../../../../components/toolchain
#INC_PATHS += -I../../../../../../components/softdevice/s110/headers
#INC_PATHS += -I../../..
#INC_PATHS += -I../../../../../bsp
#INC_PATHS += -I../../../../../../components/device
#INC_PATHS += -I../../../../../../components/drivers_nrf/hal

OBJECT_DIRECTORY = _build
LISTING_DIRECTORY = $(OBJECT_DIRECTORY)
OUTPUT_BINARY_DIRECTORY = $(OBJECT_DIRECTORY)

# Sorting removes duplicates
BUILD_DIRECTORIES := $(sort $(OBJECT_DIRECTORY) $(OUTPUT_BINARY_DIRECTORY) $(LISTING_DIRECTORY) )

#flags common to all targets
#CFLAGS  = -DBOARD_PCA10028

CFLAGS  = -DBOARD_CUSTOM
CFLAGS += -DSOFTDEVICE_PRESENT
CFLAGS += -DNRF51
CFLAGS += -DS110
CFLAGS += -DBLE_STACK_SUPPORT_REQD
CFLAGS += -DBSP_DEFINES_ONLY
CFLAGS += -mcpu=cortex-m0
CFLAGS += -mthumb -mabi=aapcs --std=gnu99
CFLAGS += -Wall -Werror -O3
CFLAGS += -mfloat-abi=soft
# keep every function in separate section. This will allow linker to dump unused functions
CFLAGS += -ffunction-sections -fdata-sections -fno-strict-aliasing
CFLAGS += -fno-builtin --short-enums
CFLAGS += -Wno-error

# keep every function in separate section. This will allow linker to dump unused functions
LDFLAGS += -Xlinker -Map=$(LISTING_DIRECTORY)/$(OUTPUT_FILENAME).map
LDFLAGS += -mthumb -mabi=aapcs -L $(TEMPLATE_PATH) -T$(LINKER_SCRIPT)
LDFLAGS += -mcpu=cortex-m0
# let linker to dump unused sections
LDFLAGS += -Wl,--gc-sections
# use newlib in nano version
LDFLAGS += --specs=nano.specs -lc -lnosys

# Assembler flags
ASMFLAGS += -x assembler-with-cpp
#ASMFLAGS += -DBOARD_PCA10028

ASMFLAGS += -DBOARD_CUSTOM

ASMFLAGS += -DSOFTDEVICE_PRESENT
ASMFLAGS += -DNRF51
ASMFLAGS += -DS110
ASMFLAGS += -DBLE_STACK_SUPPORT_REQD
ASMFLAGS += -DBSP_DEFINES_ONLY
#default target - first one defined
default: clean nrf51822_xxaa

#building all targets
all: clean
	$(NO_ECHO)$(MAKE) -f $(MAKEFILE_NAME) -C $(MAKEFILE_DIR) -e cleanobj
	$(NO_ECHO)$(MAKE) -f $(MAKEFILE_NAME) -C $(MAKEFILE_DIR) -e nrf51822_xxaa 

#target for printing all targets
help:
	@echo following targets are available:
	@echo 	nrf51822_xxaa


C_SOURCE_FILE_NAMES = $(notdir $(C_SOURCE_FILES))
C_PATHS = $(call remduplicates, $(dir $(C_SOURCE_FILES) ) )
C_OBJECTS = $(addprefix $(OBJECT_DIRECTORY)/, $(C_SOURCE_FILE_NAMES:.c=.o) )

ASM_SOURCE_FILE_NAMES = $(notdir $(ASM_SOURCE_FILES))
ASM_PATHS = $(call remduplicates, $(dir $(ASM_SOURCE_FILES) ))
ASM_OBJECTS = $(addprefix $(OBJECT_DIRECTORY)/, $(ASM_SOURCE_FILE_NAMES:.s=.o) )

vpath %.c $(C_PATHS)
vpath %.s $(ASM_PATHS)

OBJECTS = $(C_OBJECTS) $(ASM_OBJECTS)

nrf51822_xxaa: OUTPUT_FILENAME := nrf51822_xxaa
nrf51822_xxaa: LINKER_SCRIPT=blinky_gcc_nrf51.ld
nrf51822_xxaa: $(BUILD_DIRECTORIES) $(OBJECTS)
	@echo Linking target: $(OUTPUT_FILENAME).out
	$(NO_ECHO)$(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	$(NO_ECHO)$(MAKE) -f $(MAKEFILE_NAME) -C $(MAKEFILE_DIR) -e finalize

## Create build directories
$(BUILD_DIRECTORIES):
	echo $(MAKEFILE_NAME)
	$(MK) $@

# Create objects from C SRC files
$(OBJECT_DIRECTORY)/%.o: %.c
	@echo Compiling file: $(notdir $&amp;lt;)
	$(NO_ECHO)$(CC) $(CFLAGS) $(INC_PATHS) -c -o $@ $&amp;lt;

# Assemble files
$(OBJECT_DIRECTORY)/%.o: %.s
	@echo Compiling file: $(notdir $&amp;lt;)
	$(NO_ECHO)$(CC) $(ASMFLAGS) $(INC_PATHS) -c -o $@ $&amp;lt;


# Link
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out: $(BUILD_DIRECTORIES) $(OBJECTS)
	@echo Linking target: $(OUTPUT_FILENAME).out
	$(NO_ECHO)$(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out


## Create binary .bin file from the .out file
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin: $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	@echo Preparing: $(OUTPUT_FILENAME).bin
	$(NO_ECHO)$(OBJCOPY) -O binary $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin

## Create binary .hex file from the .out file
$(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex: $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	@echo Preparing: $(OUTPUT_FILENAME).hex
	$(NO_ECHO)$(OBJCOPY) -O ihex $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

finalize: genbin genhex echosize

genbin:
	@echo Preparing: $(OUTPUT_FILENAME).bin
	$(NO_ECHO)$(OBJCOPY) -O binary $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).bin

## Create binary .hex file from the .out file
genhex: 
	@echo Preparing: $(OUTPUT_FILENAME).hex
	$(NO_ECHO)$(OBJCOPY) -O ihex $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).hex

echosize:
	-@echo &amp;quot;&amp;quot;
	$(NO_ECHO)$(SIZE) $(OUTPUT_BINARY_DIRECTORY)/$(OUTPUT_FILENAME).out
	-@echo &amp;quot;&amp;quot;

clean:
	-del $(BUILD_DIRECTORIES)

cleanobj:
	-del $(BUILD_DIRECTORIES)/*.o

flash: $(MAKECMDGOALS)
	@echo Flashing: $(OUTPUT_BINARY_DIRECTORY)/$&amp;lt;.hex
	nrfjprog --reset --program $(OUTPUT_BINARY_DIRECTORY)/$&amp;lt;.hex

## Flash softdevice
&lt;/code&gt;&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25531?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 08:24:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b758ac50-bf9a-40f1-9e0d-db652e7846d5</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;The file structures are different from SDK7 to SDK8.  You need to base on the makefile of SDK7.  There are many differences in both source path and include path.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25530?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 04:27:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a813b00d-21e0-4f35-9e44-7804a56ca613</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Yes I have downloaded SDK 7.0 and SDK 7.2 and am trying to use them now instead of 8.  Unfortunately I am getting the following error now when I try to make -f makefile on blinky:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Compiling file: system_nrf51.c
The system cannot find the path specified
make: *** [_build/system_nrf51.o] Error 1
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Not sure how to get past this one as I&amp;#39;m not sure whats causing it.  The same makefile works fine in SDK 8 and the file structures/hierarchy seem identicle.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25528?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 03:57:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0612c808-2d25-4147-a794-1096f0ef6727</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;can you please format that with 4 spaces at the start of each line so it doesn&amp;#39;t look so awful?&lt;/p&gt;
&lt;p&gt;You&amp;#39;re doing this with the blank version - no softdevice? Use nrfjprog to reset the board, make sure the code is on it. Until you can get this to work, you&amp;#39;re not going to get too far.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25529?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 02:59:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5791274-2207-431e-b28a-3dbd425868f9</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;I suggest that you check the chip revision as well.  Chip rev 1 may not work with SDK8.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25527?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 02:41:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa253ab4-5cc9-479c-8e98-8a81c40f252d</guid><dc:creator>eq</dc:creator><description>&lt;p&gt;Hi RK,&lt;/p&gt;
&lt;p&gt;I actually have the custom_board.h file for the board which was provided by Rigado.  I have it configured in the Makefile with this line:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;CFLAGS  = -DBOARD_CUSTOM
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Here are the contents of custom_board.h:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;#ifndef __BMD200_H__
#define __BMD200_H__

#define LEDS_NUMBER    3

#define LED_RED        1
#define LED_GREEN      24
#define LED_BLUE       25

#define LEDS_LIST 	  { LED_RED, LED_GREEN, LED_BLUE }

#define BSP_LED_0      LED_RED
#define BSP_LED_1      LED_GREEN
#define BSP_LED_2      LED_BLUE

#define BSP_LED_0_MASK (1&amp;lt;&amp;lt;BSP_LED_0)
#define BSP_LED_1_MASK (1&amp;lt;&amp;lt;BSP_LED_1)
#define BSP_LED_2_MASK (1&amp;lt;&amp;lt;BSP_LED_2)

#define LEDS_MASK      (BSP_LED_0_MASK | BSP_LED_1_MASK | BSP_LED_2_MASK)
/* all LEDs are lit when GPIO is high */
#define LEDS_INV_MASK  0

#define BUTTONS_NUMBER 2

#define BUTTON_1       0
#define BUTTON_2       11

#define BUTTON_PULL    NRF_GPIO_PIN_PULLUP

#define BUTTONS_LIST { BUTTON_1, BUTTON_2, }

#define BSP_BUTTON_0   BUTTON_1
#define BSP_BUTTON_1   BUTTON_2

#define BSP_BUTTON_0_MASK (1&amp;lt;&amp;lt;BSP_BUTTON_0)
#define BSP_BUTTON_1_MASK (1&amp;lt;&amp;lt;BSP_BUTTON_1)

#define BUTTONS_MASK   0x00000801

#define RX_PIN_NUMBER  9
#define TX_PIN_NUMBER  10
#define CTS_PIN_NUMBER 2
#define RTS_PIN_NUMBER 3
#define HWFC           true

#define SPIM0_SCK_PIN       0     /**&amp;lt; SPI clock GPIO pin number. */
#define SPIM0_MOSI_PIN      1     /**&amp;lt; SPI Master Out Slave In GPIO pin number. */
#define SPIM0_MISO_PIN      2     /**&amp;lt; SPI Master In Slave Out GPIO pin number. */
#define SPIM0_SS_PIN        0     /**&amp;lt; SPI Slave Select GPIO pin number. */

#endif // __BMD200_H__
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I have confirmed that it is linking this by defining BOARD_CUSTOM in the Makefile, removing custom_board.h from the directory and seeing it complain.&lt;/p&gt;
&lt;p&gt;I have confirmed that the chip is: nrf51822_xxaa&lt;/p&gt;
&lt;p&gt;Yes I would love to see an LED blink...so far no luck...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Newbie having trouble getting started...</title><link>https://devzone.nordicsemi.com/thread/25526?ContentTypeID=1</link><pubDate>Sun, 24 May 2015 02:19:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d4d5cccb-df7a-432b-a66a-0cec8f7ba1fe</guid><dc:creator>RK</dc:creator><description>&lt;p&gt;I suggest going back to the start, with an untouched copy of the blinky sample code.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;in the directory copy the pca100028 directory entirely to something, call it &amp;#39;custom&amp;#39; or &amp;#39;bmd200&amp;#39; or similar.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;start with the &amp;#39;blank&amp;#39; example not the s110 one, get a simple blinky to work first.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;change all the -DBOARD=PCA100028 to -DBOARD=&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;write a board definition for your board which has the correct GPIOs for the LEDs and the BUTTONS, it&amp;#39;s very unlikely that board has them mapped to the same pins. Put that in examples/bsp/ and edit the boards.h file to recognize your -DBOARD=..  or call it CUSTOM_BOARD and write custom_board.h, I personally like to have the actual board name in the file but it doesn&amp;#39;t matter.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;make clean and make it then upload it. When you can get that to blink the LEDs on your board, then try the s110 version which is the exact same code put at 0x18000 instead of 0x00000.&lt;/p&gt;
&lt;p&gt;you can use nrfstudio or nrfgo to get it on the board, or use the JLink commands yourself if you want.&lt;/p&gt;
&lt;p&gt;At some point you&amp;#39;ll need to work out which chip you have and pick the correct .ld script but for these simple, tiny, short examples it doesn&amp;#39;t make a jot of difference, all the code is in the early part of flash, all the RAM is in the early part of RAM (yes including the stack) so at this point they are all going to work.&lt;/p&gt;
&lt;p&gt;Important points - get the LED and BUTTON mappings right for YOUR board, start with the simple blank example with no softdevice and get that going first.&lt;/p&gt;
&lt;p&gt;.. and what does nrfstudio tell you about the revision of the chip you have, that will eventually be important&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>