Tetherscript

TCP/IP

You can control many program features with actions sent by another program by using the TCP/IP network protocol.

There is a free demo app that is used for testing the trigger.  It is a single .exe file.  Just run it and follow the instructions.  The instructions are also listed here below:

https://s3-us-west-2.amazonaws.com/tetherscript/TCPIPTriggerGenerator.zip

The TCP/IP Trigger receives commands and simulates the execution of shortcuts. These shortcuts are visible in
the Tools/Shortcuts screen.

To test the TCP/IP Trigger in ControlMyNikon:

IN CONTROLMYNIKON

  1. Go to the Triggers menu and select TCP/IP (this is only available in the PRO edition).
  2. In the Server section, set the IPV4 address and port that the server will listen to. Make sure your firewall allows connections for TCP/IP protocol to this address and port.
  3. Enable the server by checking the Enabled checkbox.

IN THE TCPIP TRIGGER GENERATOR APP

  1. Enter the same IPV4 address and port and check the Enabled box. View the log files in both apps to confirm the connection is successful.
  2. Select a command, such as ‘Connect’ and click Send, or double-click on a command in the list.

Notes

  • The commands are case sensitive.
  • All commands sent to the server are ansi text (one byte per character), and the command requires a carriage return and linefeed.
  • All responses received from the server are ansi text and have a suffix of a carriage return and linefeed.
  • Some commands won’t work, based on the current camera state. For example, you can’t shoot if it isn’t connected.
  • In the command list, there some abbreviations. Here is what they mean:
    • SM- Stop Motion
    • FS – Focus Stacking
    • LE – Long Exposure
    • LV – Live View
    • IB – Image Browser
    • LIB – Image Browser Thumbnails
  • Send the GETSTATE command to retrieve the state of ControlMyNikon. Here are the possible states. There can be one or more states simultaneously and the list of states is comma-delimited.
    • gsNone
    • gsNikon
    • gsCanon
    • gsStandard
    • gsPro
    • gsIsDebug
    • gsIsRelease
    • gsSaveToCardExclusive
    • gsSaveToCardExclusiveNot
    • gsStartingUp
    • gsShuttingDown
    • gsConnecting
    • gsConnected
    • gsDisconnecting
    • gsDisconnected
    • gsCamBusy
    • gsInLiveView
    • gsNotInLiveView
    • gsPhaseAutofocusing
    • gsInContinuousMode
    • gsInCalibratingWBMode
    • gsShootNoAF
    • gsShootAF
    • gsInLiveViewTransition
    • gsInLiveViewBrowser
    • gsExpManualMode
    • gsExpApertureMode
    • gsExpShutterMode
    • gsExpProgramMode
    • gsExpBadMode
    • gsHasLiveView
    • gsHasLiveViewNot
    • gsInProcessStackingPreview
    • gsInProcessStackingCapture
    • gsInProcessBracketingCapture
    • gsInProcessIntervalometer
    • gsInProcessTLCapture
    • gsWorkflowNone
    • gsWorkflowBatch
    • gsWorkflowTimelapse
    • gsWorkflowTimelapseActive
    • gsWorkflowTimelapseInActive
    • gsWorkflowStopMotion
    • gsWorkflowFocusStacking
    • gsWorkflowStopMotionInActive
    • gsWorkflowStopMotionActive
    • gsWorkflowStopMotionPlaying
    • gsWorkflowStopMotionNotPlaying
    • gsWorkflowBurst
    • gsWorkflowBurstActive
    • gsWorkflowBurstInActive
    • gsWorkflowHDR
    • gsWorkflowHDRActive
    • gsWorkflowHDRInActive
    • gsWorkflowPulse
    • gsWorkflowBulb
    • gsWorkflowPulseActive
    • gsWorkflowPulseInActive
    • gsWorkflowBulbActive
    • gsWorkflowBulbInActive
    • gsWorkflowLongExposure
    • gsWorkflowLongExposureCap
    • gsWorkflowLongExposureCapLight
    • gsWorkflowLongExposureCapDark
    • gsBatchInternal
    • gsBatchExternal
    • gsCacheValidating
    • gsTriggerNone
    • gsTriggerWeb
    • gsTriggerWebActive
    • gsTriggerWebInActive
    • gsTriggerPhidgets
    • gsTriggerPhidgetsActive
    • gsTriggerPhidgetsInActive
    • gsTriggerTCPIP
    • gsTriggerTCPIPActive
    • gsTriggerTCPIPInActive
    • gsTriggerSpeech
    • gsTriggerSpeechActive
    • gsTriggerSpeechInActive
    • gsTriggerMotion
    • gsTriggerMotionActive
    • gsTriggerMotionInActive
    • gsTriggerSound
    • gsTriggerSoundActive
    • gsTriggerSoundInActive
    • gsInBulbMode
    • gsInBulbModeNot
    • gsBulbModeActive
    • gsBulbModeInActive
    • gsBulbModeCapLightActive
    • gsBulbModeCapLightInActive
    • gsBulbModeCapDarkActive
    • gsBulbModeCapDarkInActive
    • gsWorkflowTLCaptureActive
    • gsWorkflowTLCaptureInActive
    • gsToolsFlashTabVisible
    • gsToolsFlashTabHidden
    • gsToolsMetaDataTabVisible
    • gsToolsMetaDataTabHidden
    • gsInternalFlashUp
    • gsInternalFlashDown
    • gsToolsLayersTabVisible
    • gsToolsLayersTabHidden
    • gsHasInternalFlash
    • gsHasInternalFlashNot
    • gsHasMovie
    • gsHasMovieNot
    • gsRecordingMovie
    • gsRecordingMovieNot
    • gsMovieTransferring
    • gsContrastFocusInTransit
    • gsContrastFocusIdle
    • gsContrastFocusResultBad
    • gsContrastFocusResultGood
    • gsLVModeGDI
    • gsLVModeGL

Here is a list of the case-sensitive commands that you can send to ControlMyNikon

  • GETSTATE
  • Connect
  • Disconnect
  • AF
  • Shoot
  • AF Shoot
  • Calibrate WB
  • Profile – Save
  • HDR – Capture
  • HDR – Cancel
  • Burst – Capture
  • Batch – Activate
  • Batch – Clear
  • Batch – Source
  • Timelapse – Capture
  • Timelapse – Cancel
  • SM – Flip
  • SM – Mark Begin
  • SM – Mark End
  • SM – Clear Marks
  • SM – Replay
  • SM – Opacity Toggle
  • LE – Capture
  • LE – Dark – Capture
  • LE – Dark – Cancel
  • LE – Light – Capture
  • LE – Light – Cancel
  • FS – Preview
  • FS – Capture
  • FS – Cancel
  • FS – Focus – Far/10
  • FS – Focus – Far
  • FS – Focus – FarX10
  • FS – Focus – Near/10
  • FS – Focus – Near
  • FS – Focus – NearX10
  • FS – StackShot – Zero
  • FS – StackShot – Return
  • FS – StackShot – Stop
  • LV – Enable
  • LV – Disable
  • LV – Toggle
  • LV – Autofocus
  • LV – Focus – Near Large
  • LV – Focus – Near Small
  • LV – Focus – Far Small
  • LV – Focus – Far Large
  • LV – Shoot
  • LV – Zoom 1
  • LV – Zoom 2
  • LV – Zoom 3
  • LV – Zoom 4
  • LV – Pan Up
  • LV – Pan Down
  • LV – Pan Right
  • LV – Pan Left
  • LV – Toggle Histogram
  • LV – Toggle Layers
  • LV – DOF Preview
  • LV – Monitor – Toggle
  • LV – Start Recording
  • LV – Action Record by Duration
  • LV – Stop Recording
  • LV – Toggle Recording
  • LIB – First
  • LIB – Next
  • LIB – Prior
  • LIB – Last
  • Toggle IB/LV
  • IB – Toggle Fullscreen
  • IB – Toggle Mag
  • IB – Mag 1
  • IB – Mag 2
  • IB – Mag 3
  • IB – Mag 4
  • IB – Mag 5
  • IB Thumb – High Quality
  • IB Thumb – Toggle Flag
  • Toggle UI Magnifier
  • Post-Capture – Execute