Homepage β’ Documentation β’ Discord β’ Report bug β’ Request feature
Flowshutter is a custom camera remote. When used in conjunction with readily available hardware, this results in a flexible and reliable external camera motion logger for Gyroflow. It can provide precise synchronization of camera video recording and motion logger (betaflight/emuflight FC) recording.
Flowshutter aims to make all cameras ready for stabilization with Gyroflow software to provide you with one of the best open-source video stabilization experiences.
Features
Flowshutter has the following features:
- '1-click' - (1) start/stop camera recording and (2) arm/disarm FC, via one click
- Camera recording start/stop control
- FC arm/disarm control
- FC blackbox flash chip erasion
- OLED display
with many more features on the way!
Hardwares
Basic View
Supported Hardware
Currently we are wroking with NeutronRC for a small range of sales in China. Subsequent versions are in production, please stay tuned.
At the same time you can try to DIY your own flowshutter hardware. We have two open sourced designs:
Compatible camera protocol/trigger mechanisms
- Sony MULTI Terminal protocol
- Momentary Ground
- 3.3V Schmitt trigger
- ZCAM UART protocol
- Sony LANC protocol *
- 5V Schmitt trigger (WIP)
- HDMI CEC protocol (WIP)
For more information about support camera list, please check the list on the documentation website.
*Note: We need an extra Arduino board to send the Sony LANC protocol, triggering mechnism is based on momentary ground, but needs to add opto-coupling module between arduino and flowshutter to prevent overvoltage.
Compatible FC
FC is short for flight controller, more specifically with betaflight/emuflight running on.
- flowbox (highly recommended)
- modern FC with BMI270 gyroscope (recommended)
- any other FC that support CRSF protocol
Development Guide
Flash micropython firmware
The micropython firmware we used is v1.19.1, You can find a copy in the /tools
directory. Also, a uPyCraft
windows version is also provided in the /tools
directory. You can try to use that to flash your ESP32 without the help of ESP-idf.
Set up debug environment
Pre-requisite:
- Python3
Visual Studio Code with Pymakr extension
- Install
node
- Install
Visual Studio Code
- Install
Pymakr
extension inVisual Studio Code
- Edit
address
inpymakr.conf
to your flowshutter's COM port - Pull flowshutter code from
https://github.com/gyroflow/flowshutter
- Then you can connect and upload the flowshutter code
Thonny IDE
TBD
Start debugging
- Modify the
pymakr.conf
to match up with your flowshutter's COM port python build.py debug
to prepare the debug environment (move modules to/obj
directory)- Upload all modules to the hardware and reboot it.
Note:
python build.py debug
: copy modules to/obj
directorypython build.py debug clean
: clean the/obj
directory. Useful when you are suffering from memory leak.
Compile flowshutter firmware (single bin)
There's a CI that can help us to this. For compiling it locally, please check build.py
for more information.
License
This project is licensed under:
- CC-BY-NC-ND 4.0
- AGPL 3.0
Note: AGPL 3.0 is only avaliable after you signed our CLA.
This software is provided as is, and please feel free to use this on your own camera which will be used for shooting/recording comercial images/videos. Please contact DusKing1 if you intend to use it for other commercial purposes.
Pillar of shame
Due to egregious abuse of open source in Wuxi, China, this project refuses to provide any support to any user in Wuxi, or to cooperate in any form with any company or individual in Wuxi. Please do something worthy of your conscience.