<?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[UIFlow for StepMotor Driver M039 (HR8825)]]></title><description><![CDATA[<p dir="auto">Hi,<br />
We use the <a href="https://docs.m5stack.com/en/module/stepmotor_driver" target="_blank" rel="noopener noreferrer nofollow ugc">StepMotor Driver module M039</a> to drive 2 sliders (linear actuators). With UIFlow there are some blocks especially for this module. We faced some issues. Succeed to get around. And think it may be worth sharing our finds with you.</p>
<p dir="auto"><img src="/assets/uploads/files/1642086436365-img_9915-resized.png" alt="0_1642086433188_IMG_9915.png" class=" img-fluid img-markdown" /></p>
<p dir="auto">1/ This module doesn't work with M5stack Core2 &amp; AWS. Some GPIO pins are already in use. Haven't found that info clearly stated in the documentation or in the M5 shop. Maybe I missed it ?? It works well with Core1. But it's not easy to guess because it's a new module (august 2020).<br />
<img src="/assets/uploads/files/1642091340273-capture-d-e-cran-2022-01-13-a-17.28.28-resized.png" alt="0_1642091337043_Capture d’écran 2022-01-13 à 17.28.28.png" class=" img-fluid img-markdown" /><br />
2/ Till you connect the StepMotor Driver it becomes impossible to reload a program by pressing "run" in UIFlow a second time. You need to reset the core1 each time you want to send your program again from UIFlow.<br />
3/ Don't set the freq to 0 or the rest of your program will fail silently... Set it to 1 instead if needed.<br />
<img src="/assets/uploads/files/1642086087604-capture-d-e-cran-2022-01-13-a-16.01.02.png" alt="0_1642086086737_Capture d’écran 2022-01-13 à 16.01.02.png" class=" img-fluid img-markdown" /><br />
4/ Can't succeed to pilot the 2 motors individually with the dedicated UIFlow blocks. When we use the <strong>Set single motor X state 1</strong>  and 2 motor are attached (say on X and Y), both start and stop at the same time. Same if you use <strong>Set single motor Y state 1</strong> ... We get around this bug by using the Hardwares&gt;PWM fonctions this way :<br />
<img src="/assets/uploads/files/1642085915409-capture-d-e-cran-2022-01-13-a-15.57.45-resized.png" alt="0_1642085913698_Capture d’écran 2022-01-13 à 15.57.45.png" class=" img-fluid img-markdown" /><br />
Please notice that we use the PWM module with the 2 Core1 timers (0 and 3) and that our workaround will not work if you need to control 3 motors...</p>
<p dir="auto">A very tiring experience ! It would be great if the documentation be more explicit and that this module and UIFlow functions works a little "more" I would say.<br />
But at the end it works.</p>
]]></description><link>https://community.m5stack.com/topic/3923/uiflow-for-stepmotor-driver-m039-hr8825</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 23:04:40 GMT</lastBuildDate><atom:link href="https://community.m5stack.com/topic/3923.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 13 Jan 2022 15:12:03 GMT</pubDate><ttl>60</ttl></channel></rss>