<< return to Vizycam.com

MotionScope first try

I got it after playing with illumination and adjusting capture and processing parameters. It works! A few missing tools: 1) select a specific object if more than one object is captured, 2) export graphs to tables.
Also I remember reading 300 fps promised in kickstarter. The present 90 fps is even below the old raspivid of 120 for HQ camera.

Glad you got it working :slight_smile: Bear in mind that this is the first version and we will be adding features. The schedule details some of the upcoming features.

Regarding the framerate – the Vizy Kickstarter did indeed promise 300 fps. We had achieved 300 fps with the HQ camera (IMX477) with code that worked similarly to raspiraw.

Raspiraw, raspivid, etc used a proprietary shared memory interface. When the Raspi Foundation deprecated the shared memory interfaces last year and switched to libcamera, we were left with lots of code that we needed to rewrite. With the switch to libcamera, we gained much better image quality and a much nicer (modular) software architecture, but we lost the higher framerate modes and Python bindings. We’ve been playing catch-up since then. There is still no official Python library for libcamera. We wrote our own that we’ve been using for Vizy. The higher framerates for libcamera require more custom coding.

We apologize… It’s Feb 2022 and we don’t have the fast framerates released yet. When we do release, the new code will take advantage of the niceties of libcamera.


Thanks Edward,
High framerate would be nice, but it might require an external trigger option that I don’t see in the schedule. I am not sure if Vizy I/O can accept TTL or similar triggers.

Hello dmtk,
High framerates won’t need an external trigger. I don’t understand…

I don’t say external trigger is the must, but it would help synchronization with fast and short events.

This page isn’t clear (to me) on whether Vizy can accept logic inputs other than 3.3V. https://docs.vizycam.com/doku.php?id=wiki:pinouts

Will TTL levels (5v) work? If so, some kind of external trigger (sound?) could be be connected and a few lines of python could trigger the start recording function in parallel with the GUI button.

Ah, I understand. Thanks :slight_smile:

The I/O ports can accept up to 12V inputs. 5v isn’t a problem. The low-high transition is around 0.9 - 1.0V. I made some edits to the page to make it clearer. The I/O ports (B0 through B3) also have weak pull-up resistors, so all you’d need is a switch to ground, which is what remote camera switches typically use. Here’s an example (You’d need to remove the connector to wire it into Vizy.)

Writing the code to incorporate an external switch like this would be straightforward (like you said.) I think we should consider adding it as an option in the trigger options for MotionScope. Triggering options aren’t in the current MotionScope version, but we plan on adding a “motion trigger” and using Vizy’s button as a trigger. The remote trigger is a nice addition. :slight_smile:


I gave it a hard test - spring pendulum. First it was trying to detect parts of the spring, but adjusting brightness helped hiding it away. Time and distance calibrations are perfect. Surprisingly low noise, even acceleration (second numerical derivative) is periodic and without spikes.


Hi Dmtk,
This is absolutely great! We were focusing on projectile motion and periodic motion is a separate but equally compelling topic. Very very nice-- thanks for sharing :slight_smile: