Difference between revisions of "AXIOM Remote"

From apertus wiki
Jump to: navigation, search
Line 14: Line 14:
Force Feedback for the two dials with two small built-in micro-stepper motors to allow feeling the settings (like min, max reached) without looking at the display was considered but deemed to complex/expensive for now.  
Force Feedback for the two dials with two small built-in micro-stepper motors to allow feeling the settings (like min, max reached) without looking at the display was considered but deemed to complex/expensive for now.  


The AXIOM Remote is based on a 2.8" LCD screen (for showing status information, camera parameters and navigating through menus, no live video) and a PIC32 micro-controller. The connection between AXIOM Remote and an AXIOM camera will be a flexible (preferably spiral) cable with solid connectors. Expansion slots (with GPIO) shall allow easy future addition of new buttons/knobs/wheels/controllers/interfaces.
The AXIOM Remote is based on a 2.8" LCD screen (for showing status information, camera parameters and navigating through menus, no live video) and a PIC32MZ micro-controller. The connection between AXIOM Remote and an AXIOM camera will be a flexible (preferably spiral) cable with solid connectors. Expansion slots (with GPIO) shall allow easy future addition of new buttons/knobs/wheels/controllers/interfaces.




Source on GitHub can be found [https://github.com/apertus-open-source-cinema/AXIOM-Remote here]. It contains a project that can be opened in MPLABX (note that the XC32 compiler is a separate download). The software runs bare metal on the PIC32.
Source on GitHub can be found [https://github.com/apertus-open-source-cinema/AXIOM-Remote here]. It contains a project that can be opened in MPLABX (note that the XC32 compiler is a separate download). The software runs bare metal on the PIC32MZ.


Workboard in apertus° Labs can be found [https://lab.apertus.org/project/view/18/ here].
Workboard in apertus° Labs can be found [https://lab.apertus.org/project/view/18/ here].
Line 63: Line 63:
Considerations/Ideas for the next version:
Considerations/Ideas for the next version:
* Do we really need a second rotary knob? For menu navigation and the changing of parameters so far we saw no use for it designing the UI.
* Do we really need a second rotary knob? For menu navigation and the changing of parameters so far we saw no use for it designing the UI.
* Add flash memory for storing of images? So far we have not exceeded the PIC32s internal storage memory but if we want to make the internal help system more extensive with lots of added illustrations/images it might be required to add more flash storage.
* Add flash memory for storing of images? So far we have not exceeded the PIC32MZs internal storage memory but if we want to make the internal help system more extensive with lots of added illustrations/images it might be required to add more flash storage.
* Remove left side rocker switches? So far we have not found any function for them. They are prone to being switched accidentally as they stand out from the device quite far. Having buttons/switches on the left side of the remote prevents it from being attached on that side though.
* Remove left side rocker switches? So far we have not found any function for them. They are prone to being switched accidentally as they stand out from the device quite far. Having buttons/switches on the left side of the remote prevents it from being attached on that side though.
* Remove top side pushbuttons? So far we have not found a real application for them. In line with good user interface design / user experience these buttons need labels so the user clearly sees what is going to happen when he presses them. This is difficult as the label would not be visible from the front of the device.
* Remove top side pushbuttons? So far we have not found a real application for them. In line with good user interface design / user experience these buttons need labels so the user clearly sees what is going to happen when he presses them. This is difficult as the label would not be visible from the front of the device.
Line 98: Line 98:
==Electronic Components==
==Electronic Components==


* Core Processor: A PIC32 was chosen over using a http://www.minidevs.com/product/CORE-A20.html and hand soldering it to our own PCB. Two additional smaller PICs are used for handling push button, rotary encoder and LED IO.
* Core Processor: A PIC32MZ was chosen over using a http://www.minidevs.com/product/CORE-A20.html and hand soldering it to our own PCB. Two additional smaller PICs are used for handling push button, rotary encoder and LED IO.


* Display: A 2.8" 320x240 TFT from Adafruit ([https://www.adafruit.com/product/1947]) was chosen over a higher resolution and more complex device like iphone 4 replacement display (326 PPI 3.5" 960×640 px) or http://www.ebay.com/itm/OEM-HTC-Droid-DNA-ADR6435-Original-LCD-Screen-Display-Repair-Replacement-Parts-/350711245261 smaller bezel )(documentation through: https://hackaday.io/project/364-mipi-dsi-display-shieldhdmi-adapter  ?)
* Display: A 2.8" 320x240 TFT from Adafruit ([https://www.adafruit.com/product/1947]) was chosen over a higher resolution and more complex device like iphone 4 replacement display (326 PPI 3.5" 960×640 px) or http://www.ebay.com/itm/OEM-HTC-Droid-DNA-ADR6435-Original-LCD-Screen-Display-Repair-Replacement-Parts-/350711245261 smaller bezel )(documentation through: https://hackaday.io/project/364-mipi-dsi-display-shieldhdmi-adapter  ?)
Line 106: Line 106:
* AXIOM Remote is currently powered externally via 5V DC supply (internal batteries might be considered for the future: 4x AA battery tray?)
* AXIOM Remote is currently powered externally via 5V DC supply (internal batteries might be considered for the future: 4x AA battery tray?)


* currently the firmware is programmed with a PICkit2 directly into the PIC32 flash memory - in the future this may be done over USB - having a separate microSD card containing the devices firmware is currently not planned.
* currently the firmware is programmed with a PICkit2 directly into the PIC32MZ flash memory - in the future this may be done over USB - having a separate microSD card containing the devices firmware is currently not planned.


* The AXIOM Remote has no requirement for internal RTC (plus button cell battery) - instead timecode is synced with/by a connected AXIOM Beta.
* The AXIOM Remote has no requirement for internal RTC (plus button cell battery) - instead timecode is synced with/by a connected AXIOM Beta.

Revision as of 07:07, 23 September 2018

2018 July Axiom Remote V3 wm.jpg

AXIOM Remote Concept Rendering 2018 - Note: Design is subject to change as improvements are made.

1 Project Overview

This device and its associated software, is designed to be a comprehensive remote control unit for the AXIOM range of cameras.

As with all software & hardware that is pre-production the information contained on this page is subject to changes.

AXIOM Remote was funded as a stretch goal in the AXIOM Beta crowd funding campaign and is still in development. It features push-buttons and switches as well as 2 rotary encoders (also with push-button function) that can be used to control a wide range of camera parameters like shutter speed, gain, overlays, FPS, gamma curves etc. To keep everything as flexible as possible the buttons next to the LCD have dynamic functionality as their commands are displayed next to them on the LCD. Switches on the side allow locking of each individual dial wheel or all buttons on the AXIOM Remote.

Force Feedback for the two dials with two small built-in micro-stepper motors to allow feeling the settings (like min, max reached) without looking at the display was considered but deemed to complex/expensive for now.

The AXIOM Remote is based on a 2.8" LCD screen (for showing status information, camera parameters and navigating through menus, no live video) and a PIC32MZ micro-controller. The connection between AXIOM Remote and an AXIOM camera will be a flexible (preferably spiral) cable with solid connectors. Expansion slots (with GPIO) shall allow easy future addition of new buttons/knobs/wheels/controllers/interfaces.


Source on GitHub can be found here. It contains a project that can be opened in MPLABX (note that the XC32 compiler is a separate download). The software runs bare metal on the PIC32MZ.

Workboard in apertus° Labs can be found here.

AXIOM Team Talk 14.3 covered AXIOM Remote development progress: [1]


AXIOM Remote Feature Wishlist
Essentials Good to Have Luxury
a few Status LEDs single color LED under most buttons (transparent) RGB LED under every button (transparent)
power supply from camera power IN connector own battery mount
wired operation wireless operation option
turn LCD into touchscreen (can be disabled in menu)
Control all AXIOM related functionalists Control active lens mount related functionalists Remote Control other cameras and devices (LANC, USB, DSLR Shutter Release, etc.)
2x Rotary Knobs (infinite rotation) additional slider/fader knob Force Feedback Rotary Knobs (built-in microstepper motor)

2 Status

August 2018

  • Printed circuit boards have been designed and populated.
  • Button options are being tested.
  • UI design is ongoing but further software refinements are still required (please see this page's footer if you'd like too assist).
  • CAD design for aluminium milled enclosure parts is ongoing.


2.1 PCB Version 0.9

The first development prototype of the AXIOM Remote printed circuit board (V0.9) has been designed and routed, ordered, received and populated. This first version is not meant to be perfect (for testing we just used a simple 6x6mm Alps push-button type - not the more expensive ones with better haptic feedback) but should provide a good foundation for developers to focus on ensuring that the menus work and how to create an intuitive and pleasant user experience when operating an AXIOM camera.

PCB Source files: [2]

2.2 PCB Version 0.9

Considerations/Ideas for the next version:

  • Do we really need a second rotary knob? For menu navigation and the changing of parameters so far we saw no use for it designing the UI.
  • Add flash memory for storing of images? So far we have not exceeded the PIC32MZs internal storage memory but if we want to make the internal help system more extensive with lots of added illustrations/images it might be required to add more flash storage.
  • Remove left side rocker switches? So far we have not found any function for them. They are prone to being switched accidentally as they stand out from the device quite far. Having buttons/switches on the left side of the remote prevents it from being attached on that side though.
  • Remove top side pushbuttons? So far we have not found a real application for them. In line with good user interface design / user experience these buttons need labels so the user clearly sees what is going to happen when he presses them. This is difficult as the label would not be visible from the front of the device.
  • Reduce number of RGB LEDs to two (for status LEDs)? So far we have not discovered any real world benefit to having RGB LEDs to illuminate pushbuttons. Changing the button illumination color to indicate something happening while pushing it makes little sense as while pushing it the users finger is covering the button making it impossible for the user to see it.

3 General Concept

File:AXIOM Remote V3 ButtonPos.pdf

AXIOM Remote- Layout.png

Remote-Concept-Aspect-01.jpg

An older version of the AXIOM Remote concept:

AXIOM Remote Concept 5.jpg


Idea for attaching the AXIOM Remote to a camera docking station style:

SlideIn.jpg RemotePinout.jpg ClipInOin.jpg RemoteReleaseSwitchjpg.jpg SpringRelease.jpg SpringRelease2.jpg


4 Operation Concepts

MenuConcept-01.jpg


5 Electronic Components

  • 3D accelerometer to measure device orientation (optional)
  • AXIOM Remote is currently powered externally via 5V DC supply (internal batteries might be considered for the future: 4x AA battery tray?)
  • currently the firmware is programmed with a PICkit2 directly into the PIC32MZ flash memory - in the future this may be done over USB - having a separate microSD card containing the devices firmware is currently not planned.
  • The AXIOM Remote has no requirement for internal RTC (plus button cell battery) - instead timecode is synced with/by a connected AXIOM Beta.

Buttons/Rotary Encoders/Connectors:

ALPS SRBE210200 rotary + push switch


alternative:

https://octopart.com/en12-hn22af18-bi+technologies-7730374

SMT type rotary encoders:

http://www.alps.com/prod/info/E/HTML/Encoder/Incremental/EC05E/EC05E_list.html

http://www.alps.com/prod/info/E/HTML/Encoder/Incremental/EC10E/EC10E_list.html

Beta connectivity through Hirose HR10A-7P-4S (a bit expensive but massive)

or alternatively 4 pin 2.5 or 3.5mm audio cables:

4-Poles-Jack-3-5-RCA-Connector-RCA-Audio-font-b-Plug-b-font-font-b.jpg

plus metal receptor on Beta and Remote:

https://www.amazon.de/sourcingmap-Kopfh%C3%B6rer-Interieur-Montage-Steckdose/dp/B014XJ1SN6

RS232C as Beta <-> Remote protocol4

Toogle Switches APEM ZL series

6 Camera Menu Simulators for Reference

Our own very early stage menu simulator: [4]

We do not want to copy but we do want to learn from the experience and mistake of others:

Arri product line: [5]

Panasonic Varicam: [6]

Sony Venice: [7]

7 Further Notes, References, Collected Links