# Communicate between Multiple OpenMV's and another board

**URL:** <https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538>\
**Category:** OpenMV Boards\
**Created:** [December 13, 2019, 2:59pm UTC](https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538 "2019-12-13T14:59:24Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![doodah](https://avatars.discourse-cdn.com/v4/letter/d/aeb1de/32.png) [@doodah](https://forums.openmv.io/u/doodah)\
**Post date:** [December 13, 2019, 2:59pm UTC](https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538/1 "2019-12-13T14:59:24Z")

</div>

Hi!

In past questions in this forum, I’ve been encouraged to use UART over I2C or SPI to communicate with another board. I have multiple OpenMV’s that need to communicate with a “main” board. I was originally going to hook multiple OpenMV’s to an Arduino and use SofwareSerial on the Arduino to communicate with each OpenMV’s UART. Now I’m looking into replacing the Arduino with a cellular module (Particle Boron) but it doesn’t have a software serial option.

I was thinking I could daisy chain the OpenMV’s using the main UART and an implementation of software serial on the OpenMV, but didn’t find much on software serial for Micropython. Or I can use SPI or I2C. Is there any other option I’m missing?

Thanks!

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [December 13, 2019, 4:42pm UTC](https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538/2 "2019-12-13T16:42:58Z")

</div>

The OpenMV Cam H7 has two uarts, so, you can daisy chain the cameras easily. UART3 is the main UART but another UART is exposed on the I/O pins.

---

<div class="post-metadata">

**Author:** ![doodah](https://avatars.discourse-cdn.com/v4/letter/d/aeb1de/32.png) [@doodah](https://forums.openmv.io/u/doodah)\
**Post date:** [December 13, 2019, 7:24pm UTC](https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538/3 "2019-12-13T19:24:54Z")

</div>

OK. Thanks! In the uart\_control example it says “Always pass UART 3 for the UART number for your OpenMV Cam.” I guess I assumed that it was because the board used UART1 to communicate with the computer, like some Arduinos do. If that’s available, then problem solved. Do you think daisy chaining is the best way to get communication between multiple OpenMV’s and another board?

---

<div class="post-metadata">

**Author:** ![kwagyeman](https://yyz1.discourse-cdn.com/flex029/user_avatar/forums.openmv.io/kwagyeman/32/4_2.png) [@kwagyeman](https://forums.openmv.io/u/kwagyeman)\
**Post date:** [December 13, 2019, 7:32pm UTC](https://forums.openmv.io/t/communicate-between-multiple-openmvs-and-another-board/1538/4 "2019-12-13T19:32:21Z")

</div>

UART3 was the only one there for our first version. The H7 has more now.

We have a dedicated USB interface so UART1 has nothing to do with computer communication.

As for a better way… typically you’d do a start topology with a master uC in the center talking to each. So, I think this is pretty good.
