OpenMV M7?

The official pyboard running MicroPython.
This is the reference design and main target board for MicroPython.
You can buy one at the store.
Target audience: Users with a pyboard.
Post Reply
kwiley
Posts: 140
Joined: Wed May 16, 2018 5:53 pm
Contact:

OpenMV M7?

Post by kwiley » Fri Dec 21, 2018 6:51 pm

I realize OpenMV has initiated the next gen. H7 camera, but that won't be available for a while, especially for those of us who missed the KickStarter campaign. The M7 has been available for quite a while now and I'm curious if anyone has interfaced it with the PyBoard at all. Surely I'm not the first person to consider this, but a string search for M7 in the forum archives reveals nothing.

Thanks.

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: OpenMV M7?

Post by dhylands » Fri Dec 21, 2018 7:37 pm

There is an M7 version of OpenMV Cam: https://openmv.io/collections/cams/prod ... nmv-cam-m7

kwiley
Posts: 140
Joined: Wed May 16, 2018 5:53 pm
Contact:

Re: OpenMV M7?

Post by kwiley » Fri Dec 21, 2018 8:03 pm

I was just asking if they two devices work well together. Maybe one would want to use the PyBoards additional pins, or maybe it's faster or has more RAM (I don't know if either of those speculations is true).

Thanks.

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: OpenMV M7?

Post by dhylands » Fri Dec 21, 2018 8:09 pm

I don't think that the pyboard has the camera interface on it. The STM32F4 Discovery board has an STM32F407 processor which has a camera interface. But you'd still need to write code to interface to it.

The camera you linked to in your other post has an I2C interface, but that's just for configuration/control. The actual data it transferred over a parallel bus, otherwise your frame rates would be extremely slow.

You also need to think about what you're going to do with the camera data. A single frame of 640x480 x 1 byte per pixel is 300K of data which is larger than the memory on the pyboard.

kwiley
Posts: 140
Joined: Wed May 16, 2018 5:53 pm
Contact:

Re: OpenMV M7?

Post by kwiley » Fri Dec 21, 2018 8:41 pm

Agreed. I had mistakenly assumed the PyBoard was a more powerful "central processor" while the OpenMV boards were sort of "shield-like peripheral camera controllers". OpenMV is a little more complicated than that since it actually has its own suite of shields and includes lots of on-board open-cv image processing routines, but nevertheless, I *conceived* of it as an image peripheral to some other central controller, like a PyBoard. But upon closer examination, it actually looks like the OpenMV cameras actually outpace the PyBoard in terms of both processor and RAM. So the PyBoard's main advantage is simply its connectivity (more pins to work with). There are multiple generations of OpenMV cameras, some with M4 and some with M7 procs and with varying RAM and storage, so it's a thorny side-by-side comparison.

I had envisioned using a camera, including an OpenMV system, as a dedicated camera that would otherwise send images back to the PyBoard for other processing, but now that seems like the wrong approach. Maybe I should build the entire application on OpenMV. I'm not sure yet. I like the PyBoard a lot.:-)

It is looking more and more like I am misunderstanding the best ways to combine these various systems, including all the various shields and their offloaded functionalities), to any given task. I'll have to think about it some.

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: OpenMV M7?

Post by dhylands » Fri Dec 21, 2018 9:06 pm

Yeah -I think of OpenMV Cam as a more powerful pyboard with a camera.

kwiley
Posts: 140
Joined: Wed May 16, 2018 5:53 pm
Contact:

Re: OpenMV M7?

Post by kwiley » Fri Dec 21, 2018 9:31 pm

If you don't mind my asking, and I really don't mean to come across contrarian, but if OpenMV is essentially "a PyBoard with a faster proc, more RAM, oh and also a camera and a bunch of compiled opencv image processing routines", then (and I reiterate, I don't mean any disrespect to PyBoard) what is the point of PyBoard, other than having a few more I/O channels and pins? Am I misunderstanding some other advantage beyond a wider array of I/O options?

Thanks.

OutoftheBOTS_
Posts: 847
Joined: Mon Nov 20, 2017 10:18 am

Re: OpenMV M7?

Post by OutoftheBOTS_ » Fri Dec 21, 2018 9:59 pm

kwiley wrote:
Fri Dec 21, 2018 6:51 pm
I realize OpenMV has initiated the next gen. H7 camera, but that won't be available for a while, especially for those of us who missed the KickStarter campaign. The M7 has been available for quite a while now and I'm curious if anyone has interfaced it with the PyBoard at all. Surely I'm not the first person to consider this, but a string search for M7 in the forum archives reveals nothing.

Thanks.
I own and use an OpenMv M7 cam. It is a nice unit and I have enjoyed using it and the makers of the cam give really really good support.

The Cam isn't the best at interfacing with other devices as the slave I2C doesn't really work well and off memory there isn't a slave SPI mode. The only way it works well is though UART.

OutoftheBOTS_
Posts: 847
Joined: Mon Nov 20, 2017 10:18 am

Re: OpenMV M7?

Post by OutoftheBOTS_ » Fri Dec 21, 2018 10:02 pm

kwiley wrote:
Fri Dec 21, 2018 9:31 pm
If you don't mind my asking, and I really don't mean to come across contrarian, but if OpenMV is essentially "a PyBoard with a faster proc, more RAM, oh and also a camera and a bunch of compiled opencv image processing routines", then (and I reiterate, I don't mean any disrespect to PyBoard) what is the point of PyBoard, other than having a few more I/O channels and pins? Am I misunderstanding some other advantage beyond a wider array of I/O options?

Thanks.
Most people do run the OpenMV cam as a stand alone system but image processing is very CPU intensive so if you have other CPU stuff you want to do you may want to also have another board running your other code then just receiving the processed data from the OpenMV via UART i.e the x,y of what your tracking

User avatar
deshipu
Posts: 1388
Joined: Thu May 28, 2015 5:54 pm

Re: OpenMV M7?

Post by deshipu » Fri Dec 21, 2018 10:29 pm

kwiley wrote:
Fri Dec 21, 2018 9:31 pm
what is the point of PyBoard, other than having a few more I/O channels and pins?
The price is one important difference.

But generally speaking, they are two completely different systems made completely different people working at different companies. PyBoard tries to be a general-purpose development board, while OpenMV takes what PyBoard has developed, and adds image processing to it.

Post Reply