Using two USB cameras with Arduino YUN

Hi,

For my project I need to send live feed of two USB cameras wirelessly to my PC where I will do processing on the streams from cameras. I searched online and found that Arduino YUN can be used to connect a USB camera and send the stream via Wi-Fi.

But, Arduino YUN has only one USB port. I am wondering if there is a way (maybe a shield) using which I can connect two USB cameras to Arduino YUN and send streams from both the cameras via Wi-Fi.

Thanks.

I am wondering if there is a way (maybe a shield) using which I can connect two USB cameras to Arduino YUN

You could try a USB Hub.

Although I doubt if there is enough bandwidth in the system to support two video streams, but I don't know for sure.

A better idea is a pair of IP cam's

Mark

Grumpy_Mike: You could try a USB Hub.

Although I doubt if there is enough bandwidth in the system to support two video streams, but I don't know for sure.

sonnyyu: And AR9342:MIPS 74Kc@560MHz, 2.4GHz, 5GHz (dual band) v.s. AR9331 MIPS 24Kc@400MHz, 2.4GHz

MIPS32 24 Kc delivers a performance of 1.6 DMIPS/MHz and 3.1 Coremarks/MHz. MIPS32 74 Kc delivers a performance of 1.93 DMIPS/MHz and 3.48 Coremarks/MHz

AR9342:MIPS 74Kc@560MHz run 2 times faster than AR9331 MIPS 24Kc@400MHz.

Arduino Tian base on AR9342:MIPS 74Kc@560MHz is better candidate for this type application.

Arduino Tian

Is from the wrong side of the tracks. This is a .org product and should not be mentioned on this forum. It certainly isn't supported by this forum.

However does not actually seem to be available so I assume you are just going on the clock speed for your comments.

@sidsapien, handling two USB cameras could be a challenge. The biggest issue is power. The next is frame rate.

Last night, I was playing with one Yun with one camera plugin. The software had a default of 25 frames per second. It failed. I believe it failed because the Yun process (ARM/RISC) has a tendency to slow down when overloaded. This is something people are finding out the hardway when running RISC machines as servers.

I would try everything hooked up to a good USB hub with at least 2A of power. The Yun will draw less than 200mA and the Cameras will vary, but no more than the 250mA as is allowed in the USB spec. I suspect more cameras are 30mA-150mA.

Oh... almost forgot, you can vary the frame size too.

Best of Luck Jesse

I believe it failed because the Yun process (ARM/RISC) has a tendency to slow down when overloaded.

That is just a nonsense. The processor always works at the same speed irrespective of the amount of processing it has to do. In fact with it doing nothing or working out complex maths the processor knows no different.

What might be happening is that the preemptive multitasking of Linux could be less efficient the more tasks it has to do. This is because there is an overhead with task swapping and if it is done too often the unproductive overhead becomes more of a percentage of CPU use and so the whole system works less efficiently. But then that is the undoubted "joy" of Linux and all preemptive multitasking systems.

Grumpy_Mike:
That is just a nonsense. The processor always works at the same speed irrespective of the amount of processing it has to do. In fact with it doing nothing or working out complex maths the processor knows no different.

::::SNIP::::

Apparently my friend, you are in the same group that has a lot to learn about RISC processing. And from your your description, a lot to learn about pre-emptive multitasking.

Best of Luck
Jesse

Sorry pal, like most Linux users you know stuff all about hardware.

Grumpy_Mike: Sorry pal, like most Linux users you know stuff all about hardware.

LOL. All lessons will be hard won and of little value.

Grumpy_Mike: You could try a USB Hub. ...

Yun has USB Hub controller IC buildin.

https://www.arduino.cc/en/uploads/Main/arduino-Yun-schematic.pdf

AU6350 is a single chip integrated USB2.0 hub and multimedia card reader controller.

AU6350

  • Fully compliant with USB Hub Specification version 2.0 and is also backward compatible with USB Hub specification 1.1.
  • Supports three bus-powered/self-powered downstream ports.
  • Supports automatic switching between bus-power and self-power modes.
  • Cost effective design using one transaction translator for all downstream ports.
  • Extra low power consumption.
  • On chip internal pull-up and meets USB bus power regain emend pull down resistors for all data line.
  • Built-in USB 2.0 transceiver.
  • Supports individual and gang modes of power management.

I have no idea why Yun mask additional two USB downstream ports?

USB speed is very CPU speed bound.

sonnyyu: FYI;-

The heart of Yún is CPU - AR9331, here is the market position of it.

AR9331 (MIPS 24k@400MHz, 1x1:1, 150Mbs/2.4GHz, PHY/100Mbs)

AR9341 (MIPS 74Kc@500Mhz, 2x2:2, 300Mbs/2.4GHz, PHY/100Mbs)

AR9344 (MIPS 74Kc@600MHz, 2x2:2, 300Mbs/2.4GHz, 450Mbs/5GHz, PHY/1Gbs)

QCA9558 (MIPS 74Kc@720MHz, 3x3, 450Mbs/2.4GHz, 1300Mbs/5GHz, PHY/1Gbs)

It is already on bottom of the food chain.

QCA9558 has dual USB 2.0 host port, and will be good candidate for this type application.

Do you achieve the objective?