

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    

    
    <title>Mynewt FAQ - Troubleshooting/Debugging &mdash; Apache Mynewt latest documentation</title>
    

    
    
      <link rel="shortcut icon" href="../_static/mynewt-logo-only-newt32x32.png"/>
    

    

    <link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />

    
      <link rel="stylesheet" href="../_static/css/sphinx_theme.css" type="text/css" />
    
      <link rel="stylesheet" href="../_static/css/bootstrap-3.0.3.min.css" type="text/css" />
    
      <link rel="stylesheet" href="../_static/css/v2.css" type="text/css" />
    
      <link rel="stylesheet" href="../_static/css/custom.css" type="text/css" />
    
      <link rel="stylesheet" href="../_static/css/restructuredtext.css" type="text/css" />
    

    

    <link rel="stylesheet" href="../_static/css/overrides.css" type="text/css" />
          <link rel="index" title="Index"
                href="../genindex.html"/>
          <link rel="search" title="Search" href="../search.html"/>
      <link rel="top" title="Apache Mynewt latest documentation" href="../index.html"/>
          <link rel="up" title="Mynewt FAQ" href="index.html"/>
          <link rel="next" title="Appendix" href="../misc/index.html"/>
          <link rel="prev" title="Mynewt FAQ - Porting Mynewt" href="port_faq.html"/> 

    
    <script src="../_static/js/modernizr.min.js"></script>

    
    <script>
    (function(i, s, o, g, r, a, m) {
	i["GoogleAnalyticsObject"] = r;
	(i[r] =
		i[r] ||
		function() {
			(i[r].q = i[r].q || []).push(arguments);
		}),
		(i[r].l = 1 * new Date());
	(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
	a.async = 1;
	a.src = g;
	m.parentNode.insertBefore(a, m);
})(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");

ga("create", "UA-72162311-1", "auto");
ga("send", "pageview");
</script>
    

  </head>

  <body class="not-front page-documentation" role="document" >
    <div id="wrapper">
      <div class="container">
    <div id="banner" class="row v2-main-banner">
        <a class="logo-cell" href="/">
            <img class="logo" src="../_static/img/logo.png">
        </a>
        <div class="tagline-cell">
            <h4 class="tagline">An OS to build, deploy and securely manage billions of devices</h4>
        </div>
        <div class="news-cell">
            <div class="well">
                <h4>Latest News:</h4> <a href="/download">Apache Mynewt 1.12.0, Apache NimBLE 1.7.0 </a> released April 4, 2024)
            </div>
        </div>
    </div>
</div>
      
<header>
    <nav id="navbar" class="navbar navbar-inverse" role="navigation">
        <div class="container">
            <!-- Collapsed navigation -->
            <div class="navbar-header">
                <!-- Expander button -->
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>

            </div>

            <!-- Expanded navigation -->
            <div class="navbar-collapse collapse">
                <!-- Main navigation -->
                <ul class="nav navbar-nav navbar-right">
                    <li>
                        <a href="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
                    </li>
                    <li class="important">
                        <a href="/quick-start/">Quick Start</a>
                    </li>
                    <li>
                        <a href="/about/">About</a>
                    </li>
                    <li>
                        <a href="/talks/">Talks</a>
                    </li>
                    <li class="active">
                        <a href="/documentation/">Documentation</a>
                    </li>
                    <li>
                        <a href="/download/">Download</a>
                    </li>
                    <li>
                        <a href="/community/">Community</a>
                    </li>
                    <li>
                        <a href="/events/">Events</a>
                    </li>
                </ul>

                <!-- Search, Navigation and Repo links -->
                <ul class="nav navbar-nav navbar-right">
                    
                </ul>
            </div>
        </div>
    </nav>
</header>
      <!-- STARTS MAIN CONTENT -->
      <div id="main-content">
        





<div id="breadcrumb">
  <div class="container">
    <a href="/documentation/">Docs</a> /
    
      <a href="index.html">Mynewt FAQ</a> /
    
    Mynewt FAQ - Troubleshooting/Debugging
    
  <div class="sourcelink">
    <a href="https://github.com/apache/mynewt-documentation/edit/master/docs/mynewt_faq/troubleshoot_faq.rst" class="icon icon-github"
           rel="nofollow"> Edit on GitHub</a>
</div>
  </div>
</div>
        <!-- STARTS CONTAINER -->
        <div class="container">
          <!-- STARTS .content -->
          <div id="content" class="row">
            
            <!-- STARTS .container-sidebar -->
<div class="container-sidebar col-xs-12 col-sm-3">
  <div id="docSidebar" class="sticky-container">
    <div role="search" class="sphinx-search">
  <form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
    <input type="text" name="q" placeholder="Search documentation" class="search-documentation" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
    <!-- Note: only works when deployed -->
<select class="form-control" onchange="if (this.value) window.location.href=this.value">
  <option value="/latest" selected>
    Version: latest
  </option>
  <option value="/v1_12_0" >
    Version: 1.12.0
  </option>
  <option value="/v1_11_0" >
    Version: 1.11.0
  </option>
  <option value="/v1_10_0" >
    Version: 1.10.0
  </option>
  <option value="/v1_9_0" selected="selected" >
    Version: 1.9.0
  </option>
  <option value="/v1_8_0" >
    Version: 1.8.0
  </option>
  <option value="/v1_7_0" >
    Version: 1.7.0
  </option>
  <option value="/v1_6_0" >
    Version: 1.6.0
  </option>
  <option value="/v1_5_0" >
    Version: 1.5.0
  </option>
  <option value="/v1_4_0" >
    Version: 1.4.0
  </option>
  <option value="/v1_3_0/os/introduction" >
    Version: 1.3.0
  </option>
  <option value="/v1_2_0/os/introduction" >
    Version: 1.2.0
  </option>
  <option value="/v1_1_0/os/introduction" >
    Version: 1.1.0
  </option>
  <option value="/v1_0_0/os/introduction" >
    Version: 1.0.0
  </option>
  <option value="/v0_9_0/os/introduction" >
    Version: 0.9.0
  </option>
</select>
    <div class="region region-sidebar">
      <div class="docs-menu">
      
        
        
            <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../index.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../get_started/index.html">Setup &amp; Get Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../concepts.html">Concepts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/tutorials.html">Tutorials</a></li>
<li class="toctree-l1"><a class="reference internal" href="../external_links.html">Third-party Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../os/os_user_guide.html">OS User Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../network/index.html">BLE User Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../newt/index.html">Newt Tool Guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../newtmgr/index.html">Newt Manager Guide</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Mynewt FAQ</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="admin_faq.html">Administrative</a></li>
<li class="toctree-l2"><a class="reference internal" href="bluetooth_faq.html">Bluetooth</a></li>
<li class="toctree-l2"><a class="reference internal" href="boot_faq.html">Bootloader and Firmware Upgrade</a></li>
<li class="toctree-l2"><a class="reference internal" href="modules_faq.html">Drivers and Modules</a></li>
<li class="toctree-l2"><a class="reference internal" href="fs_faq.html">File System</a></li>
<li class="toctree-l2"><a class="reference internal" href="hardware_faq.html">Hardware-Specific</a></li>
<li class="toctree-l2"><a class="reference internal" href="syntax_faq.html">Mynewt Syntax and Semantics</a></li>
<li class="toctree-l2"><a class="reference internal" href="nfc_faq.html">NFC</a></li>
<li class="toctree-l2"><a class="reference internal" href="newt_faq.html">Newt</a></li>
<li class="toctree-l2"><a class="reference internal" href="newtmgr_faq.html">Newt Manager</a></li>
<li class="toctree-l2"><a class="reference internal" href="port_faq.html">Porting Mynewt</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Troubleshooting</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../misc/index.html">Appendix</a></li>
</ul>

        
      
      </div>
    </div>
  </div>
  <!-- ENDS STICKY CONTAINER -->
</div>
<!-- ENDS .container-sidebar -->

            <div class="col-xs-12 col-sm-9">
              
                <div class="alert alert-warning">
                  <p>
                    Version 1.9.0 is not the most recent version of the
                    Apache Mynewt documentation. Click <a href="/latest">here</a> to
                    read the latest version.
                  </p>
                </div>
              

              
              <div class="">
                <div class="rst-content">
                  <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
                   <div itemprop="articleBody">
                    
  <div class="section" id="mynewt-faq-troubleshooting-debugging">
<h1>Mynewt FAQ - Troubleshooting/Debugging<a class="headerlink" href="#mynewt-faq-troubleshooting-debugging" title="Permalink to this headline">¶</a></h1>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><p><a class="reference internal" href="#concurrent-debug-sessions-with-two-boards" id="id1">Concurrent debug sessions with two boards</a></p></li>
<li><p><a class="reference internal" href="#error-unsatisfied-apis-detected" id="id2">Error: Unsatisfied APIs detected</a></p></li>
<li><p><a class="reference internal" href="#greyed-out-files-on-ios-11" id="id3">Greyed out files on iOS 11</a></p></li>
<li><p><a class="reference internal" href="#arm-none-eabi-gcc-build-error-for-project" id="id4"><code class="docutils literal notranslate"><span class="pre">arm-none-eabi-gcc</span></code> Build Error for Project</a></p></li>
<li><p><a class="reference internal" href="#issues-running-image-on-boot" id="id5">Issues Running Image on Boot</a></p></li>
<li><p><a class="reference internal" href="#enable-trace-in-mynewt" id="id6">Enable Trace in Mynewt</a></p></li>
<li><p><a class="reference internal" href="#bug-with-older-versions-of-gcc" id="id7">Bug With Older Versions of <code class="docutils literal notranslate"><span class="pre">gcc</span></code></a></p></li>
</ul>
</div>
<div class="section" id="concurrent-debug-sessions-with-two-boards">
<h2><a class="toc-backref" href="#id1">Concurrent debug sessions with two boards</a><a class="headerlink" href="#concurrent-debug-sessions-with-two-boards" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: Can I run concurrent GDB connections to multiple devices? Is the GDB port hardcoded?</p>
<p>Yes, starting with release 1.5 Mynewt allows “newt debug” to have a session with JLink as well as openocd simultaneously open. And no, the GDB port is not hardcoded. You can specify it with the -port option. For example:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">newt debug slinky_nrf52 --extrajtagcmd &quot;-port 5431 -select usb=682148664&quot;</span>
</pre></div>
</div>
</div>
<div class="section" id="error-unsatisfied-apis-detected">
<h2><a class="toc-backref" href="#id2">Error: Unsatisfied APIs detected</a><a class="headerlink" href="#error-unsatisfied-apis-detected" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I ran into the following error message:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">Error: Unsatisfied APIs detected:</span>
<span class="go">* stats, required by: hw/drivers/sensors/bmp280, hw/drivers/sensors/ms5837, net/oic</span>
</pre></div>
</div>
<p>How do I resolve this?</p>
<p><strong>A</strong>: You may be missing some package dependencies in your <code class="docutils literal notranslate"><span class="pre">pkg.yml</span></code> file. In this case, you need to include
<code class="docutils literal notranslate"><span class="pre">sys/stats</span></code> (either <code class="docutils literal notranslate"><span class="pre">sys/stats/full</span></code> or <code class="docutils literal notranslate"><span class="pre">sys/stats/stub</span></code>) to your <code class="docutils literal notranslate"><span class="pre">pkg.yml</span></code> file. You can add it to either
your app’s or target’s pkg.yml file, but if you have a custom app it is recommended that you add it to your app’s
<code class="docutils literal notranslate"><span class="pre">pkg.yml</span></code>. That way you can have multiple targets for the same app, without having to add it to every target.
Moreover, if you share your app package, others won’t run into the same error when building it.</p>
</div>
<div class="section" id="greyed-out-files-on-ios-11">
<h2><a class="toc-backref" href="#id3">Greyed out files on iOS 11</a><a class="headerlink" href="#greyed-out-files-on-ios-11" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I’m trying to use the Adafruit Mynewt Manager to upload a custom image over BLE. Uploading one of the provided
<code class="docutils literal notranslate"><span class="pre">bleuartx000.img</span></code> works fine and I can boot into them, confirm etc. However, when I try to upload a custom image I
can’t even seem to add it to the app. Images stored in the iCloud drive just appear as disabled icons. Anyone with a
clue as to how to get that working?</p>
<p><strong>A</strong>: The new iOS version no longer allows files with unrecognized extensions to be selected. Try renaming the file to
something more compatible (e.g. <code class="docutils literal notranslate"><span class="pre">.txt</span></code>).</p>
</div>
<div class="section" id="arm-none-eabi-gcc-build-error-for-project">
<h2><a class="toc-backref" href="#id4"><code class="docutils literal notranslate"><span class="pre">arm-none-eabi-gcc</span></code> Build Error for Project</a><a class="headerlink" href="#arm-none-eabi-gcc-build-error-for-project" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I am having this error when I try to build my project:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">Building target targets/stm32l072czy6tr_boot</span>
<span class="go">Error: exec: &quot;arm-none-eabi-gcc&quot;: executable file not found in $PATH</span>
</pre></div>
</div>
<p>How do I add it?</p>
<p><strong>A</strong>: First, install the GNU Arm Embedded Toolchain if you haven’t already. Then, depending on your OS, add the link to
your <code class="docutils literal notranslate"><span class="pre">arm-none-eabi-gcc</span></code> executable path to your PATH environment variable.</p>
</div>
<div class="section" id="issues-running-image-on-boot">
<h2><a class="toc-backref" href="#id5">Issues Running Image on Boot</a><a class="headerlink" href="#issues-running-image-on-boot" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I was able to successfully create a BSP for my custom board (using nRF52 MCU), then build and run that image in the
debugger. However, it does not run on boot. Any ideas to fix the issue?</p>
<p><strong>A</strong>: A good process in general is to do a full flash erase, then flash the bootloader and the running image. Make sure to
dump the contents of flash and see that it actually gets written there as well. If you experience the issue again after a
reboot, you will also want to set <code class="docutils literal notranslate"><span class="pre">MCU_DCDC_ENABLED:0</span></code> then redo the process of erase, rebuild, and reload.</p>
</div>
<div class="section" id="enable-trace-in-mynewt">
<h2><a class="toc-backref" href="#id6">Enable Trace in Mynewt</a><a class="headerlink" href="#enable-trace-in-mynewt" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I’m trying to use gdb with Trace, but do not know how to enable it. How do I do this in Mynewt?</p>
<p><strong>A</strong>: To enable Trace, you can add <code class="docutils literal notranslate"><span class="pre">cflags</span></code> to <code class="docutils literal notranslate"><span class="pre">pkg.yml</span></code> in your target directory:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">~/dev/mynewt $ cat targets/mytarget/pkg.yml</span>
<span class="gp">#</span><span class="c1">## Package: targets/mytarget</span>
<span class="go">pkg.name: “targets/mytarget”</span>
<span class="go">pkg.type: &quot;target&quot;</span>
<span class="go">pkg.description:</span>
<span class="go">pkg.author:</span>
<span class="go">pkg.homepage:</span>
<span class="go">​</span>
<span class="go">pkg.cflags:</span>
<span class="go">  - -DENABLE_TRACE</span>
</pre></div>
</div>
</div>
<div class="section" id="bug-with-older-versions-of-gcc">
<h2><a class="toc-backref" href="#id7">Bug With Older Versions of <code class="docutils literal notranslate"><span class="pre">gcc</span></code></a><a class="headerlink" href="#bug-with-older-versions-of-gcc" title="Permalink to this headline">¶</a></h2>
<p><strong>Q</strong>: I got the following error using <code class="docutils literal notranslate"><span class="pre">newt</span> <span class="pre">build</span></code>. How do I fix it?</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">Error: repos/apache-mynewt-core/sys/log/modlog/src/modlog.c: In function &#39;modlog_alloc&#39;:</span>
<span class="go">repos/apache-mynewt-core/sys/log/modlog/src/modlog.c:61:23: error: missing braces around initializer [-Werror=missing-braces]</span>
<span class="go">          *mm = (struct modlog_mapping) { 0 };</span>
<span class="go">                           ^</span>
<span class="go">repos/apache-mynewt-core/sys/log/modlog/src/modlog.c:61:23: error: (near initialization for &#39;(anonymous).next&#39;) [-Werror=missing-braces]</span>
<span class="go">cc1: all warnings being treated as errors</span>
</pre></div>
</div>
<p><strong>A</strong>: That is a bug in older versions of <code class="docutils literal notranslate"><span class="pre">gcc</span></code> (<a class="reference external" href="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119">https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119</a>).  The recommended <code class="docutils literal notranslate"><span class="pre">gcc</span></code> version is 7.x.</p>
</div>
</div>


                   </div>
                  </div>
                  
    <div class="rst-footer-buttons row" role="navigation" aria-label="footer navigation">
      
        <a href="../misc/index.html" class="btn btn-neutral float-right" title="Appendix" accesskey="n">Next: Appendix <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="port_faq.html" class="btn btn-neutral" title="Mynewt FAQ - Porting Mynewt" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous: Mynewt FAQ - Porting Mynewt</a>
      
    </div>

                </div>
              </div>
            </div>
            <!-- ENDS CONTENT SECTION -->
          </div>
          <!-- ENDS .content -->
        </div>
      </div>
      <footer>
  <div class="container">
    <div class="row">
      <div class="col-xs-12">
          
              <p class="copyright">Apache Mynewt is available under Apache License, version 2.0.</p>
          
      </div>
      <div class="col-xs-12">
          <div class="logos">
              <img src="../_static/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
              <small class="footnote">
                Apache Mynewt, Mynewt, Apache, the Apache feather logo, and the Apache Mynewt project logo are either
                registered trademarks or trademarks of the Apache Software Foundation in the United States and other countries.
              </small>
              <a href="">
                <img src="../_static/img/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" />
              </a>
          </div>
      </div>
    </div>
  </div>
</footer>
    </div>
    <!-- ENDS #wrapper -->

  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'../',
            VERSION:'latest',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: '.txt',
            LINK_SUFFIX: '.html'
        };
    </script>
      <script type="text/javascript" src="../_static/jquery.js"></script>
      <script type="text/javascript" src="../_static/underscore.js"></script>
      <script type="text/javascript" src="../_static/doctools.js"></script>
      <script type="text/javascript" src="../_static/js/bootstrap-3.0.3.min.js"></script>
      <script type="text/javascript" src="../_static/js/affix.js"></script>
      <script type="text/javascript" src="../_static/js/main.js"></script>

   

  </body>
</html>