<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Micro-Bit]]></title><description><![CDATA[<p dir="auto">Simple test/demo to show how to communicate with the Micro-bit.</p>
<p dir="auto"><img src="https://cdn.shopify.com/s/files/1/0056/7689/2250/products/M5BIT_1200x1200.jpg?v=1566377214" alt="alt text" class=" img-fluid img-markdown" /></p>
<p dir="auto"><a href="https://m5stack.com/products/m5-bit-iot-classroom-development-board?variant=17175635394650" target="_blank" rel="noopener noreferrer nofollow ugc">link text</a></p>
<p dir="auto">The Micro-bit program ;;</p>
<p dir="auto"><img src="/assets/uploads/files/1576364343536-mb-resized.jpg" alt="0_1576364338883_mb.jpg" class=" img-fluid img-markdown" /></p>
<p dir="auto">As javascript ;</p>
<pre><code>let numb = 0
let inp = ""
serial.redirect(
SerialPin.P8,
SerialPin.P12,
BaudRate.BaudRate115200
)
serial.writeLine("")
serial.writeLine("")
serial.writeLine("Hello from Micro Bit")
serial.writeLine("")
serial.writeLine("")
basic.forever(function () {
    inp = serial.readString()
    numb = parseFloat(inp)
    if (numb == 1) {
        basic.showString("A")
    }
    if (numb == 2) {
        basic.showString("B")
    }
    if (numb == 3) {
        basic.showString("C")
    }
})
</code></pre>
<p dir="auto">And the M5stack code (arduino)</p>
<pre><code>

#include &lt;M5Stack.h&gt;
#include &lt;M5StackUpdater.h&gt;


// The setup() function runs once each time the micro-controller starts
void setup() {
  M5.begin();
  Wire.begin();
  if(digitalRead(BUTTON_A_PIN) == 0){
    Serial.println("Will load menu binary");
    updateFromFS(SD);
    ESP.restart();
  }

  Serial2.begin(115200, SERIAL_8N1, 16, 17);
  M5.Lcd.clear(BLACK);
  M5.Lcd.setTextColor(YELLOW);
  M5.Lcd.setTextSize(2);
  M5.Lcd.setCursor(0, 10);
  M5.Lcd.println("Button Micro-Bit example");
  M5.Lcd.println();
}

// Add the main program code into the continuous loop() function
void loop() {
  // update button state
  M5.update();
  if(Serial2.available()) {
   char ch = Serial2.read();
   if ( (ch &gt;+ 'A') &amp;&amp; (ch +'z') )M5.Lcd.write(ch);
  }
  if (M5.BtnA.wasReleased()) {
    Serial2.write('1');
  } else if (M5.BtnB.wasReleased()) {
    Serial2.write('2');
  } else if (M5.BtnC.wasReleased()) {
    Serial2.write('3');
  }
}
</code></pre>
<p dir="auto">If you have a Micro-bit I suppose you know how to put the code in (I use makecode (offline) online version schould work the same..</p>
<p dir="auto">and then use the arduino to program the M5stack....<br />
Then press button A on the M5 and the Micro-bit shows a A..<br />
Same with button B and C...</p>
<p dir="auto">Just for fun and to show how to communicate with the micro-bit..</p>
]]></description><link>https://community.m5stack.com/topic/1546/micro-bit</link><generator>RSS for Node</generator><lastBuildDate>Wed, 29 Apr 2026 02:47:37 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/1546.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 14 Dec 2019 23:09:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Micro-Bit on Thu, 20 Jul 2023 16:00:08 GMT]]></title><description><![CDATA[<p dir="auto">Just a little gotcha, I've been using the Core2 with IoT Base CatM for UART (Port C) to connect to micro:bit (Keyestudio Ks0360 rather than M5:bit).</p>
<p dir="auto">Core2 (vs original Core) on IoT Base CatM config appears to be that pins 13/14 are used for UART (vs 17/18) hence:<br />
Groove cable (M5Stack spec) W|Y|R|B = 13(R)|14(T)|VCC|GND<br />
Connected to micro:bit W|Y|R|B = 15(T)|16(R)|VCC|GND</p>
<p dir="auto">NB I am using Keyestudio shield/carrier board to match power to 5V and control to 3V3. Minor mods to the code above with a little pause for effect and it's working to flash LEDs [0, 0], [2, 2] and [4, 4] and send back text strings from buttons A and B to label.</p>
]]></description><link>https://community.m5stack.com/post/21621</link><guid isPermaLink="true">https://community.m5stack.com/post/21621</guid><dc:creator><![CDATA[gavin67890]]></dc:creator><pubDate>Thu, 20 Jul 2023 16:00:08 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Tue, 17 Dec 2019 19:32:44 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/chriswr" aria-label="Profile: chriswr">@<bdi>chriswr</bdi></a> said in <a href="/post/6729">Micro-Bit</a>:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ajb2k3" aria-label="Profile: ajb2k3">@<bdi>ajb2k3</bdi></a> Youre welcome.. I just saw the loop at the end was gone tho.. should be an (empty) loop under the red block..<br />
ok, thanks for letting me know</p>
</blockquote>
]]></description><link>https://community.m5stack.com/post/6731</link><guid isPermaLink="true">https://community.m5stack.com/post/6731</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Tue, 17 Dec 2019 19:32:44 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Tue, 17 Dec 2019 17:47:22 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ajb2k3" aria-label="Profile: ajb2k3">@<bdi>ajb2k3</bdi></a> Youre welcome.. I just saw the loop at the end was gone tho.. should be an (empty) loop under the red block..</p>
]]></description><link>https://community.m5stack.com/post/6729</link><guid isPermaLink="true">https://community.m5stack.com/post/6729</guid><dc:creator><![CDATA[ChrisWR]]></dc:creator><pubDate>Tue, 17 Dec 2019 17:47:22 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Tue, 17 Dec 2019 17:26:13 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/chriswr" aria-label="Profile: chriswr">@<bdi>chriswr</bdi></a> said in <a href="/post/6724">Micro-Bit</a>:</p>
<blockquote>
<p dir="auto"><img src="/assets/uploads/files/1576573397854-image1.jpg" alt="0_1576573394655_Image1.jpg" class=" img-fluid img-markdown" /></p>
</blockquote>
<p dir="auto">Now I need to find my bits to play with this and explore.</p>
<p dir="auto">Thank you my friend for this.</p>
]]></description><link>https://community.m5stack.com/post/6727</link><guid isPermaLink="true">https://community.m5stack.com/post/6727</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Tue, 17 Dec 2019 17:26:13 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Tue, 17 Dec 2019 09:03:22 GMT]]></title><description><![CDATA[<p dir="auto"><img src="/assets/uploads/files/1576573397854-image1.jpg" alt="0_1576573394655_Image1.jpg" class=" img-fluid img-markdown" /></p>
]]></description><link>https://community.m5stack.com/post/6724</link><guid isPermaLink="true">https://community.m5stack.com/post/6724</guid><dc:creator><![CDATA[ChrisWR]]></dc:creator><pubDate>Tue, 17 Dec 2019 09:03:22 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Mon, 16 Dec 2019 08:39:26 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/chriswr" aria-label="Profile: chriswr">@<bdi>chriswr</bdi></a> said in <a href="/post/6707">Micro-Bit</a>:</p>
<blockquote>
<p dir="auto">Simple test/demo to show how to communicate with the Micro-bit.</p>
<p dir="auto"><img src="https://cdn.shopify.com/s/files/1/0056/7689/2250/products/M5BIT_1200x1200.jpg?v=1566377214" alt="alt text" class=" img-fluid img-markdown" /></p>
<p dir="auto"><a href="https://m5stack.com/products/m5-bit-iot-classroom-development-board?variant=17175635394650" target="_blank" rel="noopener noreferrer nofollow ugc">link text</a></p>
<p dir="auto">The Micro-bit program ;;</p>
<p dir="auto"><img src="/assets/uploads/files/1576364343536-mb-resized.jpg" alt="0_1576364338883_mb.jpg" class=" img-fluid img-markdown" /></p>
<p dir="auto">As javascript ;</p>
<ul>
<li>let numb = 0</li>
<li></li>
<li>let inp = ""</li>
<li></li>
<li>serial.redirect(</li>
<li></li>
<li>SerialPin.P8,</li>
<li></li>
<li>SerialPin.P12,</li>
<li></li>
<li>BaudRate.BaudRate115200</li>
<li></li>
<li>)</li>
<li></li>
<li>serial.writeLine("")</li>
<li></li>
<li>serial.writeLine("")</li>
<li></li>
<li>serial.writeLine("Hello from Micro Bit")</li>
<li></li>
<li>serial.writeLine("")</li>
<li></li>
<li>serial.writeLine("")</li>
<li></li>
<li>basic.forever(function () {</li>
<li></li>
<li>
<pre><code>inp = serial.readString()
</code></pre>
</li>
<li></li>
<li>
<pre><code>numb = parseFloat(inp)
</code></pre>
</li>
<li></li>
<li>
<pre><code>if (numb == 1) {
</code></pre>
</li>
<li></li>
<li>
<pre><code>    basic.showString("A")
</code></pre>
</li>
<li></li>
<li>
<pre><code>}
</code></pre>
</li>
<li></li>
<li>
<pre><code>if (numb == 2) {
</code></pre>
</li>
<li></li>
<li>
<pre><code>    basic.showString("B")
</code></pre>
</li>
<li></li>
<li>
<pre><code>}
</code></pre>
</li>
<li></li>
<li>
<pre><code>if (numb == 3) {
</code></pre>
</li>
<li></li>
<li>
<pre><code>    basic.showString("C")
</code></pre>
</li>
<li></li>
<li>
<pre><code>}
</code></pre>
</li>
<li></li>
<li>})</li>
<li></li>
<li></li>
</ul>
<p dir="auto">And the M5stack code (arduino)</p>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li>#include &lt;M5Stack.h&gt;</li>
<li></li>
<li>#include &lt;M5StackUpdater.h&gt;</li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li>// The setup() function runs once each time the micro-controller starts</li>
<li></li>
<li>void setup() {</li>
<li></li>
<li>M5.begin();</li>
<li></li>
<li>Wire.begin();</li>
<li></li>
<li></li>
<li></li>
<li>// If using Lovyan launcher</li>
<li></li>
<li>if(digitalRead(BUTTON_A_PIN) == 0){</li>
<li></li>
<li>
<pre><code>Serial.println("Will load menu binary");
</code></pre>
</li>
<li></li>
<li>
<pre><code>updateFromFS(SD);
</code></pre>
</li>
<li></li>
<li>
<pre><code>ESP.restart();
</code></pre>
</li>
<li></li>
<li>}</li>
<li></li>
<li></li>
<li></li>
<li>Serial2.begin(115200, SERIAL_8N1, 16, 17);</li>
<li></li>
<li>M5.Lcd.clear(BLACK);</li>
<li></li>
<li>M5.Lcd.setTextColor(YELLOW);</li>
<li></li>
<li>M5.Lcd.setTextSize(2);</li>
<li></li>
<li>M5.Lcd.setCursor(0, 10);</li>
<li></li>
<li>M5.Lcd.println("Button Micro-Bit example");</li>
<li></li>
<li>M5.Lcd.println();</li>
<li></li>
<li>}</li>
<li></li>
<li></li>
<li></li>
<li>// Add the main program code into the continuous loop() function</li>
<li></li>
<li>void loop() {</li>
<li></li>
<li>// update button state</li>
<li></li>
<li>M5.update();</li>
<li></li>
<li>if(Serial2.available()) {</li>
<li></li>
<li>char ch = Serial2.read();</li>
<li></li>
<li>if ( (ch &gt;+ 'A') &amp;&amp; (ch +'z') )M5.Lcd.write(ch);</li>
<li></li>
<li>}</li>
<li></li>
<li>if (M5.BtnA.wasReleased()) {</li>
<li></li>
<li>
<pre><code>Serial2.write('1');
</code></pre>
</li>
<li></li>
<li>} else if (M5.BtnB.wasReleased()) {</li>
<li></li>
<li>
<pre><code>Serial2.write('2');
</code></pre>
</li>
<li></li>
<li>} else if (M5.BtnC.wasReleased()) {</li>
<li></li>
<li>
<pre><code>Serial2.write('3');
</code></pre>
</li>
<li></li>
<li>}</li>
<li></li>
<li>}</li>
</ul>
<p dir="auto">If you have a Micro-bit I suppose you know how to put the code in (I use makecode (offline) online version schould work the same..</p>
<p dir="auto">and then use the arduino to program the M5stack....<br />
Then press button A on the M5 and the Micro-bit shows a A..<br />
Same with button B and C...</p>
<p dir="auto">Just for fun and to show how to communicate with the micro-bit..</p>
</blockquote>
<p dir="auto">Nice, could you achieve the same thing in UIFLOW using the Blocky environment?</p>
]]></description><link>https://community.m5stack.com/post/6717</link><guid isPermaLink="true">https://community.m5stack.com/post/6717</guid><dc:creator><![CDATA[ajb2k3]]></dc:creator><pubDate>Mon, 16 Dec 2019 08:39:26 GMT</pubDate></item><item><title><![CDATA[Reply to Micro-Bit on Mon, 16 Dec 2019 07:50:47 GMT]]></title><description><![CDATA[<p dir="auto">Thanks so much  for this <a class="plugin-mentions-user plugin-mentions-a" href="/user/chriswr" aria-label="Profile: ChrisWR">@<bdi>ChrisWR</bdi></a> as you may have noticed there was only one example ever released for the M5:bit, would be cool if we could get more microbitters on board with using the M5:Bit. I'm gonna share this with those that have been asking about using the M5:bit. Would you be ok with putting this guide on our <a href="http://hackster.io" target="_blank" rel="noopener noreferrer nofollow ugc">hackster.io</a> page? that way this valuable information doesn't get lost among the myriad posts on the forum.</p>
]]></description><link>https://community.m5stack.com/post/6715</link><guid isPermaLink="true">https://community.m5stack.com/post/6715</guid><dc:creator><![CDATA[lukasmaximus]]></dc:creator><pubDate>Mon, 16 Dec 2019 07:50:47 GMT</pubDate></item></channel></rss>