<?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>I don&amp;#39;t understand west</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/85031/i-don-t-understand-west</link><description>Hello, 
 I am trying to set the `BT_SHELL_NUS` project up as a standalone repository. My requirements for this are as follows: I only want to commit application code to git, not the entire zephyr sdk or nordic sdk. I do not want to fork the nordic sdk</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 14 Mar 2022 15:11:25 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/85031/i-don-t-understand-west" /><item><title>RE: I don't understand west</title><link>https://devzone.nordicsemi.com/thread/358018?ContentTypeID=1</link><pubDate>Mon, 14 Mar 2022 15:11:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:61fff990-5ea5-43e2-8df3-295368e90c72</guid><dc:creator>arv</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I actually think I do understand now, yes. I think. What I&amp;#39;m trying to build is here: &lt;a href="https://github.com/diagprov/firmware-demos/tree/master/nrf52-ncs-52840dk-bluetooth"&gt;https://github.com/diagprov/firmware-demos/tree/master/nrf52-ncs-52840dk-bluetooth&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There would be two ways to build this:&lt;/p&gt;
&lt;p&gt;1. west init -m &lt;a href="https://github.com/diagprov/firmware-demos/tree/master/nrf52-ncs-52840dk-bluetooth/firmware"&gt;https://github.com/diagprov/firmware-demos/tree/master/nrf52-ncs-52840dk-bluetooth/firmware&lt;/a&gt; (I am not sure if west can cope with parts of git repositories like this, but ho hum).&lt;/p&gt;
&lt;p&gt;2. clone the whole git, cd into nrf52-ncs-52840dk-bluetooth/firmware, west init --local, cd .., then use west normally.&lt;/p&gt;
&lt;p&gt;So I think I understand how west expects to be laid out. I am not sure I _like_ it at all because it appears to be in conflict with how git repositories actually work, but, there&amp;#39;s a lot of people who can&amp;#39;t adapt to a non-subversion mental model.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m now onto the next set of problems: specifically, west build -b nrf52840dk_nrf52840 has the following complaint:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:courier new, courier;"&gt;firmware-demos/nrf52-ncs-52840dk-bluetooth/firmware/src/main.c:23:33: error: &amp;#39;CONFIG_BT_DEVICE_NAME&amp;#39; undeclared here (not&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new, courier;"&gt;&amp;nbsp;in a function)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new, courier;"&gt;&amp;nbsp;&amp;nbsp; 23 | #define DEVICE_NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CONFIG_BT_DEVICE_NAME&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;but I guess this is another thread/discussion (this demo is entirely unmodified from the ncs tree, so basically it just doesn&amp;#39;t work, but what&amp;#39;s new).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;I&amp;#39;ll be honest, I think it may actually be easier simply to eschew west entirely, require the nordic tree to be checked out in a well known location and go from there. West seems to have a very opinionated, and frankly utterly wrong, understanding of git&amp;#39;s capabilities. For example, here I was trying to start with a local git repository first and test before pushing up to github, but west wants to take over the cloning. Here are some things I suspect west totally cannot cope with:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;The fact my git repositories frequently contain multiple remotes. Some are to github, some not.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;The fact I may or may not monorepo, and west doesn&amp;#39;t own the whole repository.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;The fact that branches can track remotes not all in the same repository if I want.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;Thanks a lot!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:arial, helvetica, sans-serif;"&gt;Antony&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I don't understand west</title><link>https://devzone.nordicsemi.com/thread/355458?ContentTypeID=1</link><pubDate>Tue, 01 Mar 2022 09:03:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b22c1724-3190-457b-8408-4427645d669f</guid><dc:creator>Charlie</dc:creator><description>&lt;p&gt;Hi Arv,&lt;/p&gt;
&lt;p&gt;Can the CI solution for&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.9.0/nrf/applications/asset_tracker_v2/README.html"&gt;nRF9160: Asset Tracker v2&lt;/a&gt;&amp;nbsp;FW can satisfy your needs?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://nordicsemiconductor.github.io/asset-tracker-cloud-docs/v1.8.x/docs/firmware/Index.html"&gt;Firmware — nRF Asset Tracker 911cbddce975ab27b806dcae9c65630b36211fd2 documentation (nordicsemiconductor.github.io)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Charlie&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I don't understand west</title><link>https://devzone.nordicsemi.com/thread/355387?ContentTypeID=1</link><pubDate>Mon, 28 Feb 2022 22:20:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b0e86c2b-8abb-4288-b1d5-e6b297f3804f</guid><dc:creator>arv</dc:creator><description>&lt;p&gt;Yes, I can confirm I&amp;#39;m trying to follow workflow 4, with a slightly non-trivial example (shell_bt_nus) to demonstrate that it correctly pulls in Nordic components. All code in application/ is taken from the nordic sdk and I&amp;#39;m following the west templates as on the wiki.&lt;/p&gt;
&lt;p&gt;No IDEs or even browsers pretending to be IDEs, sorry. I&amp;#39;m after a scriptable command line build that can be fed into a CI pipeline at a later date: launching an IDE on a machine with no graphical console is obviously a no go. For what its worth, I am a professional developer, I have built with all kinds of gnarly makefiles. My Linux kernel is custom, I&amp;#39;ve written firmware for ppc, stm32, avr, I have all kinds of compilers on my system. I&amp;#39;ve also shipped software in Rust and Go, and in a past life I wrote Windows drivers people are, to my knowledge, still using in production. For a hobby project at some point I need to build the latest stable rust compiler for OpenBSD and I have a sneaking suspicion this will be easier to do than using your SDK.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve also compiled for the nordic board using mynewt.&lt;/p&gt;
&lt;p&gt;So I&amp;#39;m pretty comfortable with building stuff and I can&amp;#39;t figure out how to combine your build with version control in any kind of sane way from 1-2 days of reading your wiki and trying to build the shell_bt_nus example this way. I gave up and posted here instead to see if I could get some help.&lt;/p&gt;
&lt;p&gt;So what I really need is a set of instructions (ideally) or standalone example (ideally slightly more than LED blinking demonstrating a dependency on some nordic specific component, not just zephyr) I can use to understand the workflow 4 process and adapt this to my needs. It can be assumed arm-none-eabi-gcc is on the path (in this case, ARM&amp;#39;s official compilers kept at their latest versions and these have been used to write firmware for other boards) as is west. My goal would be to type &amp;quot;west build&amp;quot; and have a firmware image compiled (or alternatively what ever the correct command line arguments to do that are), and then flash with nrfjprog.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: I don't understand west</title><link>https://devzone.nordicsemi.com/thread/354660?ContentTypeID=1</link><pubDate>Wed, 23 Feb 2022 15:41:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f06f6071-300b-4a24-8c9a-e061a7df65fc</guid><dc:creator>Charlie</dc:creator><description>&lt;p&gt;Hi Antony,&lt;/p&gt;
&lt;p&gt;I assume you are following&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.9.0/nrf/dm_adding_code.html#workflow-4-application-as-the-manifest-repository"&gt;Workflow 4: Application as the manifest repository&lt;/a&gt;&amp;nbsp;and develop under the Linux system. Can you confirm?&lt;/p&gt;
&lt;p&gt;This workflow is quite similar to the current NCS(&lt;span&gt;nRF Connect SDK&lt;/span&gt;), your project builds on top NCS/Zephyr, just like NCS(&lt;a href="https://github.com/nrfconnect/sdk-nrf"&gt;sdk-nrf&lt;/a&gt;) builds on top of Zephyr. You still cannot avoid&amp;nbsp;&lt;span&gt;managing messy environment variable setups like &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.9.0/nrf/gs_installing.html"&gt;NCS does with manual installation on Linux&lt;/a&gt;.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I suggest you set up an NCS development environment with&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.9.0/nrf/gs_assistant.html#installing-automatically"&gt;nRF Connect for Desktop&amp;nbsp;one-click installation on Windows or Mac&lt;/a&gt;(all the toolchain is configured automatically)&amp;nbsp;and use VS code + nRF Connect Extention for your development. You can put your application project folder anywhere in the system, just add the folder to nRF Connect Extention when you need them. The whole process is quite smooth, even people without professional building environment knowledge can do it, so developers can focus on their own application.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Charlie&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>