We're at 397% of our goal!
0 days 0 hours 0 minutes 0 seconds left
Time is up...
Home / News

Blog - News

March Status Update

Hey everybody,

We're about 2-3 weeks out from starting to ship OpenMV Cam M7s to everyone. We've had a slight schedule delay due to difficulties in getting the STM32F765VI chip in large quantities. But, it's looking like everyone will receive their pre-orders in April.

As for the initial 40 OpenMV Cams we built. Those have been distributed to folks who were eager to get one to try out.

It looks like our formula for building the new M7 cams is solid so we expect everything to go smoothly building cameras in April.

New Features

We have a lot of new functionality about to come out in the next firmware update. Here's the list:

* ZBar Integration - We've got the ZBar 1D barcode library working on the OpenMV Cam M7. It can decode bar codes oriented in any direction in 640x480 grayscale image at about 3 FPS and decode vertically aligned bar codes in a 640x40 grayscale image at about 20 FPS. So, if you don't mind a slow frame rate it can basically find and decode barcodes in an image generally. Or, you can turn the camera into a linear barcode scanner (640x40 res) for a higher FPS.

ZBar supports for the following types of 1D bar codes:

* EAN2
* EAN5
* EAN8
* UPCE
* ISBN10
* UPCA
* EAN13
* I25
* DATABAR
* DATABAR_EXP
* CODABAR
* CODE39
* CODE93
* CODE128

... so, basically every 1D bar code you'll run into. :)

Best of all, finding barcodes is super easy to do. Just call the "find_barcodes()" method on an image and you'll get a list of all 1D barcodes. The method works just like "find_qrcodes()".

Normally, I'd do a demo with ZBar support... but, there's really not that much to look at when you set the resolution to 640x40. Just a lot of black and white lines that look the same.

Note that this feature only works on the OpenMV Cam M7 because we've exhausted the flash space for major new features on the OpenMV Cam M4.

Wireless Frame Buffer Support - As demoed previously with the "Open Terminal" functionality in OpenMV IDE we've now added methods to the firmware for transmitting images to OpenMV IDE over any serial link. The new "compress_for_ide()" and "compressed_for_ide()" methods on images allow you to jpeg compress an image in place or create a jpeg compressed copy. Every 6-bits of the jpeg compressed images are then encoded to a byte valued between 128-191 for transmission to OpenMV IDE.

By encoding the image binary data in this way we're able to transmit images over any serial link without risk of corrupting normal printable text data. This allows you to connect to an OpenMV Cam sending image data in the middle of transmission without issues.

So... wirelessly programming and debugging your OpenMV Cam using REPL now works! However, you'll want to use fast wireless links for sending image data (above 1 mega baud).

WiFi Access Point Mode - With firmware v2.3.0 you'll now be able to setup your WiFi shield to run in Access Point mode so it acts like a WiFi router.

640x480 RGB565 Images/Video - Grayscale 640x480 image/video recording works on your OpenMV Cam M7. However, RGB565 640x480 image/video recording doesn't work because we don't have the RAM.

That said, we've figured out a way around this problem for just image and video recording by storing Bayer images in RAM instead of RGB565 images. This cuts the required space in half. Using a Bayer image does incur an overhead of linear interpolation per pixel access so we don't plan to build this feature out for image processing functions. But, we'll make it so you can take 640x480 RGB565 images and 640x480 color MJPEG video/gifs. Note that we don't expect the frame rate to be impressive for video but it will be great for taking snapshots.

CMUcam5 Pixy Emulation - We've received quite a few requests from folks looking to replace their CMUcam5 Pixy with the OpenMV Cam so that they can use AprilTags in their application versus color tracking without having to change their Arduino code. So... we've now got example scripts for this:

* AprilTags using Pixy Protocol over I2C
AprilTags using Pixy Protocol over SPI
AprilTags using Pixy Protocol over UART
Color Tracking using Pixy Protocol over I2C
Color Tracking using Pixy Protocol over SPI
Color Tracking using Pixy Protocol over UART

These examples scripts also really show you how to use the OpenMV Cam's I/O with computer vision support. Being able to control the filtering of results on your OpenMV Cam before transmitting them is very powerful.

MAVLink Support - The same folks asking for Pixy Emulation also wanted MAVLink support for integration with ArduCopter and the Pixhawk. So, we added an example script for sending out AprilTag detection data for automatic landing support and optical flow data for use in GPS denied environments:

* Automatic Landing using AprilTags
* Optical Flow for indoors

Other News

Actually, that's all folks - Thanks for reading!

OpenMV IDE v1.5.0 is here!

Hey folks,

OpenMV IDE is v1.5.0 with generic MicroPython board support is finally available for download! In addition to the Open Terminal feature which was explained previously in the last update we've now got syntax highlighting working, documentation tool tip hints on keyword mouse over, and auto completion operational.

Documentation Tool Tips

Tool Tips

Now when you hover your mouse cursor over any highlighted keyword in the editor OpenMV IDE will display a tool tip with the documentation for that keyword. OpenMV IDE pulls the documentation from the HTML documentation web pages on startup. This feature will let you develop your python code a lot easier as you won't have to look at the HTML pages so much anymore.

Auto Completion

Auto Completion

Whenever you type "." after some valid identifier OpenMV IDE will automatically show you a list of all the constructors/functions/methods/variables. As you type OpenMV IDE will automatically narrow the proposal list. The matching functionality is smart and uses a complex regular expression pattern to match typing things like "fb" to "find_blobs". Anyway, it's really good and will save you a lot of time typing.

Function Parameter Hints

Function Hints

But wait, there's more! Once you finish typing in the function/method name OpenMV IDE will then walk you through the parameters of the function/method. The logic behind this feature fully understands the function call context you're in so it's capable of handling nested function calls within function calls and etc.

Open Terminal

Open Terminal

Finally, as explained in the last update we've got the Open Terminal feature available now. Wirelessly debugging your OpenMV Cam is now a possibility along with using OpenMV IDE with all your MicroPython boards.

OpenMV Cam M7 Boards

We'll be shipping out the 40 OpenMV Cam M7 boards mentioned in the last update that we have available to supporters next week. For folks who are receiving these early boards please note that you need to manually update your firmware using OpenMV IDE! These early release boards will ship with a pre-released v2.2.0 firmware that doesn't have all the fixes for the v2.2.0 firmware in it.

As for the general production run of 1000 OpenMV Cams everything has been paid for, ordered, and going smoothly.

OpenMV Cam M7s off to production!

Great news everyone! We'e finished our programming jig for the OpenMV Cam M7 and verified two panels of 20 OpenMV Cam M7s each. All worked! So, we're now starting mass production of OpenMV Cam M7s! MacroFab informs us that we'll be able to start shipping the first batch of OpenMV Cam M7s sometime in April. We'll have more concrete dates soon.

The new programming jig

We put a lot more effort into designing the new programming jig this time. Our previous jig for the OpenMV Cam M4 could do 5 boards at a time before an operator had to touch anything. The new one can now do 20.

Programming Jig

Even better, the new jig is completely controlled through software on the PC. The operator just needs to click a run button after loading the jig with a panel and the PC software will program, verify, and test each OpenMV cam (5 at a time) automatically.

Programming Jig

Anyway, the new programming jig is going to make cranking out OpenMV Cams a lot easier. Finally, I'd like to give a shout-out to MacroFab for helping us make the jig a reality. They took care of all the physical design of the jig for us while OpenMV just had to supply the software.

OpenMV IDE and Generic MicroPython Board Support

OpenMV IDE now includes the ability to open generic serial terminals for remotely debugging OpenMV Cams. You'll now be able to connect to and run scripts over standard serial, bluetooth, tcp, and udp ports (we'll also be able to support SSL ports too if there's enough demand for it). This new feature works using the standard REPL feature built-into all MicroPython boards so you'll be able to use any MicroPython board with OpenMV IDE now. Checkout the video below for more information.

Early Acess for OpenMV Cam M7 boards

As stated above we've got 40 OpenMV Cam M7 boards available now. We're going to be sending these out to folks who've helped promote OpenMV and folks who we're doing business with. That said, we might have a few left afterwards. Please email us at openmv@openmv.io if you'd like to inquire about getting an OpenMV Cam M7 early.

Pre-order Pricing Ending

Last but not least pre-order pricing ends at the end of the month. Pre-order an OpenMV Cam M7 now for the special $55 price.