<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[wolfSSL - Embedded SSL Library — looking for Cortex-M bare-metal example project]]></title>
		<link>https://www.wolfssl.com/forums/topic1993-looking-for-cortexm-baremetal-example-project.html</link>
		<atom:link href="https://www.wolfssl.com/forums/feed-rss-topic1993.xml" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in looking for Cortex-M bare-metal example project.]]></description>
		<lastBuildDate>Fri, 31 Mar 2023 15:58:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: looking for Cortex-M bare-metal example project]]></title>
			<link>https://www.wolfssl.com/forums/post7064.html#p7064</link>
			<description><![CDATA[<p>thanks for the pointers, we&#039;ll give this a try.<br />If we get stuck I&#039;ll come back to your offer to make a call.</p>]]></description>
			<author><![CDATA[null@example.com (sf)]]></author>
			<pubDate>Fri, 31 Mar 2023 15:58:39 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7064.html#p7064</guid>
		</item>
		<item>
			<title><![CDATA[Re: looking for Cortex-M bare-metal example project]]></title>
			<link>https://www.wolfssl.com/forums/post7063.html#p7063</link>
			<description><![CDATA[<p>Hi Sebastian,</p><p>Building our libraries for bare-metal is the easy part. Both wolfSSL and wolfMQTT are pure C libraries designed for portability and even bare-metal use.</p><p>For building you have a few options:<br />1) Use ./configure and cross-compile the libraries for your target. Something like: </p><div class="codebox"><pre><code>./configure --host=arm-none-eabi CC=gcc AR=ar --disable-shared --disable-examples --disable-crypttests --disable-asm --disable-rsa --disable-dh --enable-tls13 --disable-tlsv12 CFLAGS=&quot;-mcpu=cortex-m0 -mthumb&quot; LDFLAGS=&quot;-mcpu=cortex-m0 -mthumb&quot;</code></pre></div><p>. The result is a .a static library. You can use --prefix= to specify a custom install path used with &quot;make install&quot;. This generates a wolfssl/options.h with the build options used. You&#039;ll need to include this in your application </p><div class="codebox"><pre><code>#include &lt;wolfssl/options.h&gt;</code></pre></div><p>.</p><p>2) Use our example GCC Makefiles in IDE/GCC-ARM which can be easily setup for Cortex M0</p><p>3) Use your own IDE: Import the src/*.c and wolfcrypt/src/*.c files into your project and build directly. Add include to the wolfSSL/wolfMQTT root. Add pre-processor WOLFSSL_USER_SETTINGS and add your own user_settings.h file (examples here: <a href="https://github.com/wolfSSL/wolfssl/tree/master/examples/configs)">https://github.com/wolfSSL/wolfssl/tree … s/configs)</a></p><p>You&#039;ll likely have to do some investigating on how to use LWIP on bare-metal. I don&#039;t know of an example we have for this. But google turned up this nice article: <a href="https://lwip.fandom.com/wiki/LwIP_with_or_without_an_operating_system">https://lwip.fandom.com/wiki/LwIP_with_ … ing_system</a></p><p>Perhaps a short technical call might help you get started?</p><p>Thanks,<br />David Garske, wolfSSL</p>]]></description>
			<author><![CDATA[null@example.com (dgarske)]]></author>
			<pubDate>Fri, 31 Mar 2023 15:50:36 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7063.html#p7063</guid>
		</item>
		<item>
			<title><![CDATA[Re: looking for Cortex-M bare-metal example project]]></title>
			<link>https://www.wolfssl.com/forums/post7062.html#p7062</link>
			<description><![CDATA[<p>Yes I know its possible.<br />But its hard to get right if you have never done it.<br />We are using NXP cortex-M0 right now for simple embedded devices (KNX-protocol-stack and GPIO is about all we do).<br />Now we want to bridge the KNX-Bus to MQTT (AWS IoT Core), so this is sth completely different.<br />That&#039;s why we&#039;d like to have a working project as a starting point. I don&#039;t really care which MCU/devkit the example is for as long its ARM-cortex-M. </p><p>We need to do this bare-metal, because the KNX-stack does not work under a RTOS.</p><p>I have no preference for a TCP/IP-stack, but if wolf-MQTT runs with uIP or lwIP, most likely one of those.</p><p>We use IAR and GCC compilers.</p>]]></description>
			<author><![CDATA[null@example.com (sf)]]></author>
			<pubDate>Fri, 31 Mar 2023 15:32:52 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7062.html#p7062</guid>
		</item>
		<item>
			<title><![CDATA[Re: looking for Cortex-M bare-metal example project]]></title>
			<link>https://www.wolfssl.com/forums/post7061.html#p7061</link>
			<description><![CDATA[<p>Hi Sebastian,</p><p>Yes it is very possible to do MQTTS on bare-metal.</p><p>Can you tell us more about the compiler/IDE, hardware and reason for bare-metal requirement? Have you selected a network stack and confirmed it can be used in bare-metal?</p><p>You might find this MQTT over UART example useful for understanding how to customize the network IO layer: <a href="https://github.com/wolfSSL/wolfMQTT/blob/master/examples/mqttuart.c">https://github.com/wolfSSL/wolfMQTT/blo … mqttuart.c</a></p><p>The wolfSSL FAQ covers some useful topics like build configuration: <a href="https://www.wolfssl.com/docs/frequently-asked-questions-faq/">https://www.wolfssl.com/docs/frequently … tions-faq/</a></p><p>For building wolfSSL (TLS) you just need to build with SINGLE_THREADED, NO_FILESYSTEM, etc...</p><p>Let me know if you have any specific questions or build issues.</p><p>Thanks,<br />David Garske, wolfSSL</p>]]></description>
			<author><![CDATA[null@example.com (dgarske)]]></author>
			<pubDate>Fri, 31 Mar 2023 15:19:02 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7061.html#p7061</guid>
		</item>
		<item>
			<title><![CDATA[looking for Cortex-M bare-metal example project]]></title>
			<link>https://www.wolfssl.com/forums/post7060.html#p7060</link>
			<description><![CDATA[<p>Hello!</p><br /><p>we want to use wolfMQTT on bare-metal cortex-M. Connection should be using TLS.</p><p>An example project for any currently available cortex-M devkit would help a lot, as we never did anything with IP without an OS.<br />Linking with a IP-stack and configuring everything on our own seems to take a lot of time.</p><p>Any pointers greatly appreciated.</p><br /><p>regards</p><p>Sebastian</p>]]></description>
			<author><![CDATA[null@example.com (sf)]]></author>
			<pubDate>Fri, 31 Mar 2023 07:18:27 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post7060.html#p7060</guid>
		</item>
	</channel>
</rss>
