# Builds on some ESP32 boards but not others

**URL:** <https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403>\
**Category:** Software\
**Created:** [March 25, 2025, 9:51pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403 "2025-03-25T21:51:36Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![FillOfCambs](https://avatars.discourse-cdn.com/v4/letter/f/a9a28c/32.png) [@FillOfCambs](https://community.morsemicro.com/u/FillOfCambs)\
**Post date:** [March 25, 2025, 9:51pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/1 "2025-03-25T21:51:36Z")

</div>

Has anyone else managed to build the ESP32 software on anything other than the Seeed Xiao S3 which uses Xtensa architecture? I attempted to build it for the RISC5 boards but no luck.

Also attempted to connect the Halow Module (FHG100M-H) up to a ESP32-S3 dev module and use the same pins as used on the Seeed Xiao ESP32-S3. It appears to communicate with the module and read the version but won’t connect to the wireless network. So, if the host (ESP) can communicate with the chip I am wondering why it doesn’t go all the way and connect.

---

<div class="post-metadata">

**Author:** ![ajudge](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@ajudge](https://community.morsemicro.com/u/ajudge)\
**Post date:** [March 31, 2025, 4:13am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/2 "2025-03-31T04:13:42Z")

</div>

Hi @FillOfCambs

At the moment we don’t have a publicly available RISCV port of our driver library (`libmorse.a`). Instead of maintaining support for custom builds, we’re currently working through open sourcing that library so you can target whichever host platform you require. The nature of that library means that this is currently a bit of a slow process of review and refactoring.

Without seeing logs (on the ESP32, but also on the AP side), it’s hard to say why the FGH100M-H isn’t connecting. What does `logread` on the AP show? Does the ESP32 output anything to the console?

We were able to bring up the ESP32S3 XIAO from Seeed using their fork of the mm-iot-esp32 SDK. Available at [GitHub - Seeed-Studio/mm-iot-esp32](https://github.com/Seeed-Studio/mm-iot-esp32), and also with Zephyr.

Some things to check without logs:

- Have you configured the ESP32 for the same region as the AP?
- Have you used the correct BCF? See the Seeed mm-iot-esp32, it has the correct BCF.

---

<div class="post-metadata">

**Author:** ![josefeliuf](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@josefeliuf](https://community.morsemicro.com/u/josefeliuf)\
**Post date:** [October 2, 2025, 9:15pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/3 "2025-10-02T21:15:48Z")

</div>

Hello @ajudge ! Any update on this topic?

I’m trying to run **mm-iot-esp32** on an **ESP32-P4** (RISC-V). A few questions:

- Is there now a publicly available **RISC-V** build of `libmorse.a`, or an open-sourced version/branch we can target for ESP32-P4?

- If not, is there a recommended path (headers/shims or beta artifacts) to bring up the driver on RISC-V in the meantime?

If there’s a working commit/Zephyr sample you can point me to, that’d be great. Thanks!

---

<div class="post-metadata">

**Author:** ![ajudge](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@ajudge](https://community.morsemicro.com/u/ajudge)\
**Post date:** [October 3, 2025, 7:54am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/4 "2025-10-03T07:54:21Z")

</div>

It probably won’t support the ESP32-P4, but we have an update the the mm-iot-esp32 going out tonight which will add support for the ESP32-C6 and ESP32-C3. If either of these use the same compiler and same `march` and `mabi` flags as the ESP32-P4 then you may be able to get away with those. Otherwise you will need to wait until we open source libmorse. Which is progressing!

---

<div class="post-metadata">

**Author:** ![josefeliuf](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@josefeliuf](https://community.morsemicro.com/u/josefeliuf)\
**Post date:** [October 3, 2025, 3:28pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/5 "2025-10-03T15:28:32Z")

</div>

Thanks for the reply! that’s good news. I will test it and get back to you

---

<div class="post-metadata">

**Author:** ![ajudge](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@ajudge](https://community.morsemicro.com/u/ajudge)\
**Post date:** [October 3, 2025, 3:57pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/6 "2025-10-03T15:57:12Z")

</div>

2.9.7 of the MM-IoT-ESP32 has just been pushed. Please check it now 🙂

---

<div class="post-metadata">

**Author:** ![Zandr](https://sea1.discourse-cdn.com/flex001/user_avatar/community.morsemicro.com/zandr/32/42_2.png) [@Zandr](https://community.morsemicro.com/u/Zandr)\
**Post date:** [October 6, 2025, 6:16pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/7 "2025-10-06T18:16:53Z")

</div>

I just got my hands on a P4 board in a Pi5-ish form factor, so this just got a lot easier to test. I’ll report back when I can spend some time firing it up.

---

<div class="post-metadata">

**Author:** ![josefeliuf](https://avatars.discourse-cdn.com/v4/letter/j/c68b51/32.png) [@josefeliuf](https://community.morsemicro.com/u/josefeliuf)\
**Post date:** [October 6, 2025, 6:47pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/8 "2025-10-06T18:47:40Z")

</div>

That’s awesome! let me know if i can help with anything

---

<div class="post-metadata">

**Author:** ![falon](https://avatars.discourse-cdn.com/v4/letter/f/b9bd4f/32.png) [@falon](https://community.morsemicro.com/u/falon)\
**Post date:** [January 28, 2026, 10:45pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/9 "2026-01-28T22:45:11Z")

</div>

Hi there @Zandr were you able to use the existing libraries for the esp32-p4? I’m going through the same process now.

@ajudge is there any update to releasing the source for the libmorse library? I’d like to compile for the P4!

---

<div class="post-metadata">

**Author:** ![Zandr](https://sea1.discourse-cdn.com/flex001/user_avatar/community.morsemicro.com/zandr/32/42_2.png) [@Zandr](https://community.morsemicro.com/u/Zandr)\
**Post date:** [January 30, 2026, 6:17pm UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/10 "2026-01-30T18:17:15Z")

</div>

Support for the ESP32-P4 as well as libmorse source will be in the 2.10 release. I don’t have a firm release date, but it’s Soon™, on the order of a couple of weeks. We’re looking forward to this as it will make porting to other architectures much easier.

---

<div class="post-metadata">

**Author:** ![falon](https://avatars.discourse-cdn.com/v4/letter/f/b9bd4f/32.png) [@falon](https://community.morsemicro.com/u/falon)\
**Post date:** [February 5, 2026, 3:56am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/11 "2026-02-05T03:56:30Z")

</div>

Amazing! Thanks for the update

---

<div class="post-metadata">

**Author:** ![falon](https://avatars.discourse-cdn.com/v4/letter/f/b9bd4f/32.png) [@falon](https://community.morsemicro.com/u/falon)\
**Post date:** [March 2, 2026, 2:49am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/12 "2026-03-02T02:49:43Z")

</div>

> [@Zandr](#):
>
> ibmorse source will be in the 2.10 release. I don’t have a firm release date, but it’s Soon™, on the order of a couple of weeks. We’re looking forward to this as it will make porting to other architectu

Just checking in here. Haven’t seen any commits to this repo. Is this the correct one?

[MorseMicro/mm-iot-esp32](https://github.com/MorseMicro/mm-iot-esp32)

---

<div class="post-metadata">

**Author:** ![eric](https://avatars.discourse-cdn.com/v4/letter/e/898d66/32.png) [@eric](https://community.morsemicro.com/u/eric)\
**Post date:** [March 4, 2026, 2:20am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/13 "2026-03-04T02:20:49Z")

</div>

+1 for this request. I’m looking to integrate several RISC-V ESP32 targets that are critical to our project roadmap (I’ve been in parallel discussions with the Morse Micro sales team regarding this requirement as well).

I’m very interested in the open-sourcing of `libmorse` and would be happy to contribute to the porting process or maintain these specific board definitions to help accelerate the release for the community.

---

<div class="post-metadata">

**Author:** ![ajudge](https://avatars.discourse-cdn.com/v4/letter/a/c2a13f/32.png) [@ajudge](https://community.morsemicro.com/u/ajudge)\
**Post date:** [March 13, 2026, 3:38am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/14 "2026-03-13T03:38:30Z")

</div>

2.10.4 of mm-iot-esp32 has been released and is available at [GitHub - MorseMicro/mm-iot-esp32 · GitHub](https://github.com/MorseMicro/mm-iot-esp32)

---

<div class="post-metadata">

**Author:** ![falon](https://avatars.discourse-cdn.com/v4/letter/f/b9bd4f/32.png) [@falon](https://community.morsemicro.com/u/falon)\
**Post date:** [March 19, 2026, 3:11am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/15 "2026-03-19T03:11:48Z")

</div>

FIXED

EDIT: I needed to run `idf.py menuconfig` and activate the component under mbedTLS for the CMAC option

When trying to build I am getting some undefined references. Am I doing something wrong after going to an example and running:

`idf.py set-target esp32p4`  
`idf.py build`

mm-iot-esp32/framework/mm\_shims/crypto\_mbedtls\_mm.c:737:(.text.mmint\_omac1\_aes\_vector+0xbc): undefined reference to `mbedtls\_cipher\_cmac\_finish’

mm-iot-esp32/framework/mm\_shims/crypto\_mbedtls\_mm.c:737:(.text.mmint\_omac1\_aes\_vector+0xa8): undefined reference to `mbedtls_cipher_cmac_update’/home/ptb/.espressif/tools/riscv32-esp-elf/esp-14.2.0_20241119/riscv32-esp-elf/bin/../lib/gcc/riscv32-esp-elf/14.2.0/../../../../riscv32-esp-elf/bin/ld: /home/ptb/mm-iot-esp32/framework/mm_shims/crypto_mbedtls_mm.c:737:(.text.mmint_omac1_aes_vector+0xbc): undefined reference to `mbedtls\_cipher\_cmac\_finish’

---

<div class="post-metadata">

**Author:** ![omumbare](https://avatars.discourse-cdn.com/v4/letter/o/96bed5/32.png) [@omumbare](https://community.morsemicro.com/u/omumbare)\
**Post date:** [August 13, 2026, 7:20am UTC](https://community.morsemicro.com/t/builds-on-some-esp32-boards-but-not-others/403/16 "2026-08-13T07:20:50Z")

</div>

hi @Zandr  
I am using esp p4 with 2\_11 release, but i am unable to see any scan results, not sure if softap example is the issue or scan example is the issue.  
I am using fgh100maamd m.2 board with esp 32 p4, i have 2 such setups 1 for softap and other for scan
