# Using print to send data to arduino due

**URL:** <https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871>\
**Category:** OpenMV Boards\
**Created:** [September 10, 2026, 11:30pm UTC](https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871 "2026-09-10T23:30:36Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ulf\_Andersson](https://avatars.discourse-cdn.com/v4/letter/u/c0e974/32.png) [@Ulf\_Andersson](https://forums.openmv.io/u/Ulf_Andersson)\
**Post date:** [September 10, 2026, 11:30pm UTC](https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871/1 "2026-09-10T23:30:36Z")

</div>

Hi

I use Openmv rt1062 and want to send print data to the Arduino due. Unfortunately I have blown the camera uart.

I found this:  
Um, yes, the OpenMV Cam appears as a serial port and you can use the print method to send data out of it.

So, just develop a script in OpenMV IDE that prints the results you want to print… Then once done… Close OpenMV IDE and **have an application open the serial port**  **of the camera** and read the print statements.

How can Arduino due open the serial port of the camera?

Or is there some other way to send the data to the Arduino?

---

<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:** [September 11, 2026, 7:21pm UTC](https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871/2 "2026-09-11T19:21:05Z")

</div>

Uh, when you say you’ve blown the UART, you mean the TX pin, P4 of the RT1062, is broken?

The UART mentioned above is the USB Virtual COM port. You’d need a system that can act as a USB host to send data via this method. So, pretty much only something running an operating system.

…

An alternative is to use SPI or I2C to talk to the Arduino. There are software I2C/SPI drivers for the RT1062 that let you use any I/O pin.

What do you need to do exactly?

---

<div class="post-metadata">

**Author:** ![Ulf\_Andersson](https://avatars.discourse-cdn.com/v4/letter/u/c0e974/32.png) [@Ulf\_Andersson](https://forums.openmv.io/u/Ulf_Andersson)\
**Post date:** [September 11, 2026, 11:57pm UTC](https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871/3 "2026-09-11T23:57:46Z")

</div>

Tanks

Yes the tx pin P4 seems to be broken.

The gool is to send labels = [“NOT”, “ROUND”, “STOP”, “TURN”] and round(max\_score, 2) to the arduino.

Sending above as a string to the Arduino due is what I want.

Do you have suggestion?

I have found this: **Arduino Due Code (USB Host Driver)**

The Due must explicitly establish a connection to a generic USB Serial device (CDC class) to intercept the OpenMV `print()` outputs.

cpp

```  
#include \<USBHost.h\>

// Initialize the USB Host and CDC/ACM serial driver  
USBHost usb;  
CDCAsync cdc(&usb);

void setup() {  
 // Start the Programming Port Serial to view output on your PC  
 Serial.begin(115200);   
 while (!Serial);  
 Serial.println(“Arduino Due USB Host Initializing…”);

// Initialize the USB Host engine  
 if (usb.Init() == -1) {  
 Serial.println(“USB Host failed to initialize.”);  
 }  
 delay(200);  
}

void loop() {  
 // Poll the USB bus for new events  
 usb.Task();

// Check if the OpenMV Cam is connected and active over USB  
 if (cdc.isReady()) {  
 uint8\_t buf[64];  
 uint16\_t rcvd = 64;  
  
 // Read raw data coming from OpenMV’s VCP  
 if (cdc.RcvData(&rcvd, buf) == 0 && rcvd \> 0) {  
 for (uint16\_t i = 0; i \< rcvd; i++) {  
 Serial.print((char)buf[i]); // Forward the print() to your PC  
 }  
 }  
 }  
}  
```

---

<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:** [September 12, 2026, 1:23am UTC](https://forums.openmv.io/t/using-print-to-send-data-to-arduino-due/11871/4 "2026-09-12T01:23:36Z")

</div>

Seems like it’s only for mouse and keyboards?

> <https://github.com/arduino-libraries/USBHost/blob/master/docs/api.md>

If there’s an CDC interface then that would technically work.
