Hi all!
I've put together a code library for controlling Blackmagic cameras using Bluetooth and ESP32 devices. I based it on Blackmagic's iPad Swift code example and translated a good portion of it into C++.
I've creatively called this Magic Pocket Control
ESP32s are quite cheap (sub $50) and some have touch screens, buttons, etc. I've really enjoyed creating example applications using various devices (with screens, with non-touch screens, no screens, etc.).
The repository is here:
https://github.com/marklysze/Magic-Pocket-Control-ESP32
A short video with demos is here:
Code is in C++ and the repository is setup for development using Visual Studio Code and the PlatformIO extension. This extension allows you to create code and deploy to multiple devices - it's quite nifty and has good support for lots of ESP32 devices.
For those who aren't sure about C++, I haven't used any complicated approaches and it uses C++'s Smart Pointers which makes memory management easier.
I know VS Code and PlatformIO support Mac/Win/Linux - so hopefully you can develop in any of those OS environments - feedback on that would be great.
The code should be considered to be in Beta, it needs to be tested thoroughly before you use it.
I've only tested the library with my Pocket 4K and 6K, firmware 7.9.1 and 8.1. Though I need to test with 8.1 more as it's fairly new.
There is a known bug with changing codecs using camera firmware 7.9.1 and it looks like this has been addressed in 8.1, though I have still experienced some issues.
If anyone can test against the URSA Mini Pro's or any other camera that supports the Bluetooth camera control, that would be great. The camera manuals have a "Developer" section that outlines the information and functionality that can be controlled.
If you're in Sydney, Australia, and have a camera I can test with it would be great to meet up.
A couple of thanks to those here on the forums:
- Blackmagic Design Support: A big shoutout to Brendan at Blackmagic Design who helped troubleshoot the changing of Codecs, which was/is a known bug in the camera firmware. Thanks Brendan!
- BlueMagic32: A great project to control cameras with an ESP32 by Csaba Nagy. It provided a reference for the Bluetooth connection functionality. https://github.com/schoolpost/BlueMagic32
Okay, so if anyone is interested in using the library, testing it, trying it on different cameras/firmware, creating new GUIs, or just generally contributing to the code and library - please go forth and give it a go and you can reach me here or on GitHub.
I've put together a code library for controlling Blackmagic cameras using Bluetooth and ESP32 devices. I based it on Blackmagic's iPad Swift code example and translated a good portion of it into C++.
I've creatively called this Magic Pocket Control
ESP32s are quite cheap (sub $50) and some have touch screens, buttons, etc. I've really enjoyed creating example applications using various devices (with screens, with non-touch screens, no screens, etc.).
The repository is here:
https://github.com/marklysze/Magic-Pocket-Control-ESP32
A short video with demos is here:
Code is in C++ and the repository is setup for development using Visual Studio Code and the PlatformIO extension. This extension allows you to create code and deploy to multiple devices - it's quite nifty and has good support for lots of ESP32 devices.
For those who aren't sure about C++, I haven't used any complicated approaches and it uses C++'s Smart Pointers which makes memory management easier.
I know VS Code and PlatformIO support Mac/Win/Linux - so hopefully you can develop in any of those OS environments - feedback on that would be great.
The code should be considered to be in Beta, it needs to be tested thoroughly before you use it.
I've only tested the library with my Pocket 4K and 6K, firmware 7.9.1 and 8.1. Though I need to test with 8.1 more as it's fairly new.
There is a known bug with changing codecs using camera firmware 7.9.1 and it looks like this has been addressed in 8.1, though I have still experienced some issues.
If anyone can test against the URSA Mini Pro's or any other camera that supports the Bluetooth camera control, that would be great. The camera manuals have a "Developer" section that outlines the information and functionality that can be controlled.
If you're in Sydney, Australia, and have a camera I can test with it would be great to meet up.
A couple of thanks to those here on the forums:
- Blackmagic Design Support: A big shoutout to Brendan at Blackmagic Design who helped troubleshoot the changing of Codecs, which was/is a known bug in the camera firmware. Thanks Brendan!
- BlueMagic32: A great project to control cameras with an ESP32 by Csaba Nagy. It provided a reference for the Bluetooth connection functionality. https://github.com/schoolpost/BlueMagic32
Okay, so if anyone is interested in using the library, testing it, trying it on different cameras/firmware, creating new GUIs, or just generally contributing to the code and library - please go forth and give it a go and you can reach me here or on GitHub.