laurb9 / PanoController-Firmware

Platform for high-resolution panoramic photography, supporting 3D-printed PanoController board, Gigapan EPIC 100, Nodal Ninja Mecha E1 and other platforms.
MIT License
16 stars 3 forks source link
arduino bluetooth-le esp32 feather-m0 gigapan panorama photography teensy

Actions Status Actions Status

Pano Controller Firmware 2.2

Open Arduino-based Platform for high-resolution panoramic photography controlled via Bluetooth App. Can be used to upgrade the board of a Gigapan EPIC 100, with the 3D-printed PanoController V4 Platform (On Thingiverse) or with other platforms with stepper motors.

The design goals for the new versions 2.2 and beyond are as follows:

  1. Expose all basic operations that the platform is capable of as discrete G-Code commands via Serial/UART
  2. On-demand send platform parameters and current status (position, battery etc) needed to configure an application and track the execution.
  3. The External (iOS) App (Bluetooth LE) or similar application will create and send the G-Code program to run the panorama or other activities.
  4. As the above App can display all the information, a display is no longer necessary on the platform.

See the Official Facebook page for demo videos and more progress photos.

Adafruit Feather M0-based Pano Controller installed in Gigapan EPIC 100Adafruit Feather M0-based Pano Controller installed in PanoController V4 3D-Printed Platform

G-Code Panorama Program

Features:

Software

Hardware

Wiring map

An Adafruit BLE device is now required for Bluetooth LE connectivity. Wiring is mostly stable but subject to change if new devices or options are added.

Controller

The controller unit comes with no display. All the controls and status are presented via the iOS App.

Feather M0 / Bluefruit

Status: in active development. Using onboard Feather/BLE. Builds in Arduino or PlatformIO.

Teensy LC / 3.x

Status: builds on PlatformIO. Bluefruit SPI Friend is required.

All

Notes

Setting stepper motor current limit for DRV8834

Gigapan EPIC 100

Gigapan motor spec is 1A, so 0.5V. At full step the current limit is 0.7*Itrip, so we have to set Itrip to 1.4 and Vref to 0.7V as upper bound.

Lower current

Tested with ~1.5lb zoom lens+camera. The minimum Vref that avoids skipping is about 0.3V (0.6A to motor), but it will vary with camera weight. It may be possible to use lower current even, if we reduce the speed.

Bill of Materials

Electronics

Libraries

Hardware

Well, this is a controller, so it needs a pano platform to control. I used the Gigapan Epic 100 but any platform with two motors (or even one, I suppose) can be used. The only thing required of the platform is the two stepper motors, one for horizontal movement and the other for vertical.

Previous Versions

The previous versions of this project had different goals and do not require an external app: