OPTIGRID MOTORIZATION USB HID CLASS INTERFACE INSTRUCTION. Approved by:... Steve Mounnarat, Director of Engineering

Similar documents
PRE32 RS232 protocol v1.21 Tomas Andersson

The RS-485 user manual for B800 series communication

2G Actuator Communications Protocol Document Rotary & Linear Actuators

Modern Robotics Inc. Sensor Documentation

NXShield Interface Specifications

8051 Interfacing: Address Map Generation

RS485 MODBUS Module 8AO

Venstar Thermostat Adapter

Logosol Joystick Node LS-731

Graphical LCD Display Datasheet EB

RS485 MODBUS Module 16I-M

Protocol of data exchange with modem via USB interface Version

SDM-8AO. Expansion Module 8 analog outputs. Manufactured for

AX-18F/ AX-18A. Part Photo. H/W Specification [AX-18F] [AX-18A]

RS485 MODBUS Module 8I8O

EVShield Interface Specifications

0.1. [0x8A] Read Configuration

Next Generation Intelligent LCDs

SLCD Technical Note TN-100. Programming the SLCD bitmap / macro flash memory in an embedded system

Modbus Register Map: Galaxy 300

Planar Simplicity Series

AFRecorder 4800R Serial Port Programming Interface Description For Software Version 9.5 (Last Revision )

Panther Programmer USER MANUAL. Version 1.01 November, 2017

SRF02 Ultrasonic range finder Technical Specification

SimCards Ethernet UDP Protocol

CLOCKAUDIO. MR88 Automatic Microphone Mixer RS232 Programming Version 4.2

VS-LC101/ VS-LC102 RS-232 command set

POWERKEY PRO & POWERKEY

PeakTech Prüf- und Messtechnik

EcologicSense. NEXT-PM User Guide. Ecologic Sense. ZI Rousset 296, Avenue Georges Vacher, Rousset - France

Application Note BDLxxxx RS232 SERIAL INTERFACE COMMUNICATION PROTOCOL (SICP V1.82)

XS S ERIES TM PMB US TM O PTION C ARD

Appendix A: Data Registers

SDM-8I8O. Expansion Module 8 digital inputs, 8 digital outputs. Manufactured for

Fingerprint_Protocol_All_English

ambient XC RS232 Control Command Specification

IF96017 MODBUS COMMUNICATION PROTOCOL

INSTEON Hidden Door Sensor

KNX IP BAOS 772 ETS Application with building structure Technical Documentation

CaMate Series User s Manual

Instruction manual EFR4000IP

RS 485 Mini Modbus 1AO

RS485 MODBUS Module 8I8RO

ArduCAM-M-2MP Camera Shield

Custom Installation Notes: Serial programming interface and IR remote commands for Arcam UDP411 BD Player

USB. $49.95 USB interface for NCE Cab Bus. Interface board. Use of this product requires Internet access to download the latest USB drivers

The MMDVM Specification ( )

Specification E2 Interface

SuperCard Pro Software Developer's Kit Manual v1.7 Release Date: December 23, 2013 Last Revision: December 7, 2015

VZ8(6)9 rev B I2C communication quick manual. SGX Sensortech

USB-BASED 8-CHANNEL DATA ACQUISITION MODULE

Real Time Clock with Temperature Sensor and RS485/Modbus Comunications

The Extended MBR (version 1.05) (dated: 01 Nov 2018) by Benjamin David Lunt Copyright (c) Forever Young Software

Ultra Short Installation Procedure of the UPS PIco HV3.0 Daemons. and UPS PIco HV3.0 broadcasting System

Modbus Communication Protocol

Pololu TReX Jr Firmware Version 1.2: Command Documentation

1 Introduction. 1.1 Overview. 1.2 Supported Hardware. 1.3 Recommended Hardware. 1.4 Installation

Quick Talking to ControlLogix (PCCC-style)

Boot Loader. Bootloader

Modbus Register Map: Galaxy 5000 & Galaxy 5500

PIC-I/O Multifunction I/O Controller

C628 Enhanced JPEG Module. User Manual

SMARTLOCK. Nuki Home Solutions GmbH. Münzgrabenstraße 92/ Graz Austria T F

Release notes for Flash Recovery Tool Version 10.0(2)

Control Codes. Viewing control state (Get control command) Controlling (Set control command) Command. No. Command type Command Value range

DPScope SE Programming Interface Description

SMART CONNECTION TO SMART HOME VENTO

Custom Installation Notes: Serial programming interface and IR remote commands for Arcam BDP100/300 BD Players

BISS MODULE NOTICE. Each service can have is own SW. but, if more than one service share the same SW, you can use the main SW.

INGICS. ibs01 Payload Format. Jul, 2016 rev. 3

VA-2002 RS232 Remote Interface Specification

SDB V2.2 Users Manual

User manual. Actuator with RS485/SIKONETZ5 interface AG03/1

Printer control system quick install manual (Konica)

RS232 User Guide. Planar Simplicity Series 4K Displays SL4364K SL5564K SL6564K SL7564K SL8664K. Simplicity Series 4K Displays User Guide A

SC2004MBS 20x4 Characters MODBUS RTU Slave LCD

Software Requirement for Virtual Services Platform 9010

Multizones Temperature Controller Series: R2400, R2500, R4000

ROBOTIS e-manual v AX-12W. Part Photo [AX-12W] Hardware Specifications. Weight : 52.9g Dimension : 32mm * 50mm * 40mm

COMMUNICATION MODBUS PROTOCOL

TTDM-128 Modbus Register Map. Version 3.1 Series Current to Document Date

Microcontroller Architecture and Interfacing HOMEWORK 3

COMMUNICATION MODBUS PROTOCOL

Application Note. MLX90129 Sensor Tag Applications. Scope. Applications. Related Melexis Products. Introduction

QBridge. I2C, SPI, CAN Control Software User s Manual. Date: Rev 1.3

ICN12. I2C to UART Bridge, ADC,DAC and I/O

Temperature-Humidity Sensor Configuration Tool Rev. A 1/25/

Developer Notes INSTEON Thermostat v012. Developer Notes. INSTEON Thermostat. Revision History

Communications Manual MC 5010 MC 5005 MC 5004 MCS RS232 / WE CREATE MOTION

BV4208. I2C-RTC & Temp. Sensor. Product specification. November 2008 V0.a. ByVac Page 1 of 5

Communication Protocol Reference Manual

Kinetis Bootloader to Update Multiple Devices in a Field Bus Network

UPB US1-40 Single Rocker Wall Switch with Dimmer Firmware Specification

USB-MPC with MDIO and I2C support User s Manual

Generic RS232 protocol

CAN / RS485. Product Description. Technical Reference Note. Interface Adapter. Special Features

Optris CT/ CTlaser/ CTvideo communication interface

APPLICATION NOTE. OJ-DRHX Modbus protocol OJ DRHX A DRIVES PROGRAMME DEDICATED TO ROTARY HEAT EXCHANGERS /17 (OSH) 2017 OJ Electronics A/S

Home Automation, Inc. Omni-Link. Serial Protocol Description

1.1 Errors and Event list

Transcription:

OPTIGRID MOTORIZATION USB HID CLASS INTERFACE INSTRUCTION Prepared by:... Mark Knudson, Software Engineer 20 APRIL 2007 Approved by:... Steve Mounnarat, Director of Engineering Version Authorized Date Version Authorized Date A Mounnarat 16NOV06 D B 20APR07 E C F Page 1 of 9

This document outlines the command protocols used for a device Optigrid using a USB HID class. HID Class... 3 Commands Defined... 3 Commands Detailed... 4 1. USB_focusFindHome... 4 2. USB_focusFindLimit... 4 3. USB_focusZero... 4 4. USB_focusGetCount... 4 5. USB_focusSetCount... 4 6. USB_focusSetAutoHome... 5 7. USB_focusGetStatus... 5 8. USB_gridGetVoltage... 5 9. USB_gridSetVoltage... 6 10. USB_gridSetControl... 6 11. USB_gridGetControl... 6 12. USB_getStoredData... 6 13. USB_SetStoredData... 7 14. USB_LCDdisplayErrorMessage... 7 15. USB_LCDdisplayErrorMessage2... 7 16. USB_LCDdisplayclearErrorMessage... 8 17. USB_gridGetActualVoltage... 8 18. USB_resetTarget... 8 19. USB _setmotormanual... 8 20. USB _getmotormanual... 8 21. USB_enterCodedownloadMode... 9 Page 2 of 9

HID Class This section describes the interface to the USB driver following a HID class. Commands Defined All packets are HID report # 0 Therefore the first byte sent for each packet is 0x00 Text Command FOCUS_FIND_HOME FOCUS_ZERO FOCUS_GET_COUNT FOCUS_SET_COUNT SET_FOCUS_AUTO_HOME GET_FOCUS_STATUS GRID_GET_VOLTAGE GRID_SET_VOLTAGE SET_GRID_VOLTAGE_CONTROL GET_GRID_VOLTAGE_CONTROL GET_STORED_DATA SET_STORED_DATA LCD_DISPLAY_DATA LCD_DISPLAY_DATA1 LCD_DISPLAY_DATA2 LCD_DISPLAY_DATA_RESET GRID_GET_ACTUAL_VOLTAGE RESET_OPTIGRID_AMPLIFIER FOCUS_FIND_HOME SET_MOTOR_MANUAL GET_MOTOR_MANUAL EMBEDDED_CODE_DOWNLOAD Hex Command 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0C 0x10 0x0D 0x0E 0x0F 0x11 0x12 0x13 0xFF Al packets are 19 bytes long in both directions. Byte 0 Byte 1 Command code Byte 2 Receive number of reply data bytes + 2 (1 command echo, 1 length byte) bytes. Byte 3 through 18 Are command optional data bytes. Unused bytes are undefined. Page 3 of 9

Commands Detailed 1. USB_focusFindHome Send 0x00 0x00 0x00 Receive 0x00 0x00 0x02 // Move the focus servo to the home sensor position and then moves away until the 1st encoder index is encountered. // At this point the encoder count is set to zero. 2. USB_focusFindLimit Send 0x00 0x11 0x00 Receive 0x00 0x11 0x02 // Move the focus servo to the limit sensor position. 3. USB_focusZero Send 0x00 0x01 0x00 Receive 0x00 0x01 0x02 // Set the focus encoder count to zero (at the current position). HID Report 0 inidicator 4. USB_focusGetCount Send 0x00 0x02 0x02 Receive 0x00 0x02 0x04 R3 R4 // Reports the current focus encoder count. R3 LS byte R4 MS byte 5. USB_focusSetCount Send 0x00 0x03 0x00 S3 S4 Receive 0x00 0x03 0x02 // Move the focus to an encoder count. S3 LS byte S4 MS byte Page 4 of 9

6. USB_focusSetAutoHome Send 0x00 0x04 0x00 S3 Receive 0x00 0x04 0x02 // Turn on or off auto-home on power up. Valid inputs are AUTO_HOME and MANUAL_HOME. S3 Auto home value 7. USB_focusGetStatus Send 0x00 0x05 0x06 Receive 0x00 0x05 0x08 R3 R4 R5 R6 R7 R8 // If the focus position has been achieved, values are IN_POSITION and NOT_IN_POSITION // If the focus motor is stalled, values are STALLED and NOT_STALLED // The state of the home switch, values are HOME_SWITCH_ACTIVE and HOME_SWITCH_INACTIVE // The state of the limit switch, values are LIMIT_SWITCH_ACTIVE and LIMIT_SWITCH_INACTIVE // If Auto-home is enabled/disabled, values are AUTO_HOME and MANUAL_HOME R3 Initialized state R4 Position status R5 Stalled status R6 Home switch status R7 Limit switch status R8 Auto home status R9 Piezo cable error ( 0 indicates ok ) R10 Focus cable error ( 0 indicates ok) R11External DAC select 8. USB_gridGetVoltage Send 0x00 0x06 0x02 // Count is sw limited to -32768 through +32767, however the mechanics may not have this range. // If the focus servo mechanism has been initialised (homed), values are INITIALISED and NOT_INITALISED Receive 0x00 0x06 0x04 R3 R4 // Reports the voltage setting. Range 0-150V. // Note:- this value is just an echo on the setting set value resolution is 37mV R3 LS byte R4 MS byte Page 5 of 9

9. USB_gridSetVoltage Send 0x00 0x07 0x00 S3 S4 Receive 0x00 0x07 0x02 // Note:- this value is set by a 12bit D-A converter so the resolution is 37mV S3 LS byte S4 MS byte 10. USB_gridSetControl Send 0x00 0x08 0x01 S3 Receive 0x00 0x08 0x03 R3 S3 Control value R3 Control value // Sets the state of the external grid control input, values are EXTERNAL_GRID_CONTROL=1 and INTERNAL_GRID_CONTROL=0 11. USB_gridGetControl Send 0x00 0x09 0x01 Receive 0x00 0x09 0x03 R3 R3 Control value // Reports the state of the external grid control input, values are EXTERNAL_GRID_CONTROL=1 and INTERNAL_GRID_CONTROL=0 12. USB_getStoredData Send 0x00 0x0A 0x07 Receive 0x00 0x0A 0x09 R3 R4 R5 R6 R7 R8 R9 // Reports various data stored in EEPROM:- // The unit serial number, range 0-. // The software version number, range 0-255. // The hardware version number, range 0-255. // The day of manufacture, range 1-31. // The month of manufacture, range 1-12. // The year of manufacture, range 2000-2255. R3 LS byte Serial number R4 MS byte Serial number R5 SW version R6 HW version R7 Manufacture date day R8 Manufacture date month R9 Manufacture date year since 2000 Page 6 of 9

13. USB_SetStoredData Send 0x00 0x0B 0x00 S3 S4 S5 S6 S7 S8 S9 Receive 0x00 0x0B 0x02 // Sets various data stored in EEPROM:- // The unit serial number, range 0-65535. // The software version number, range 0-255. // The hardware version number, range 0-255. // The day of manufacture, range 1-31. // The month of manufacture, range 1-12. // The year of manufacture, range 2000-2255. S3 LS byte Serial number S4 MS byte Serial number S5 SW version S6 HW version S7 Manufacture date day S8 Manufacture date month S9 Manufacture date year since 2000 14. USB_LCDdisplayErrorMessage Send 0x00 0x0C 0x00 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 Receive 0x00 0x0C 0x02 // Displays an error message on the LCD display line 1. // This data is not retained through a power cycle. // Any normal operation LCD messages generated by the embedded software these are cleared. // Maximum string length 16 characters. // Characters displayed are limited by the type of LCD display // string must be null terminated if less than 16 bytes 15. USB_LCDdisplayErrorMessage2 Send 0x00 0x10 0x00 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 Receive 0x00 0x10 0x02 // Displays an error message on the LCD display line 2. // This data is not retained through a power cycle. // Any normal operation LCD messages generated by the embedded software these are cleared. // Maximum string length 16 characters. // Characters displayed are limited by the type of LCD display // string must be null terminated if less than 16 bytes Page 7 of 9

16. USB_LCDdisplayclearErrorMessage Send 0x00 0x0D 0x00 Receive 0x00 0x0D 0x02 // clears the error message and restores the normal operation LCD display 17. USB_gridGetActualVoltage Send 0x00 0x0E 0x02 Receive 0x00 0x0E 0x04 R3 R4 // Note:- this value is read by a 10bit A-D converter so the resolution is 150mV // This is multiplied to 12-bit in the target R3 LS byte R4 MS byte // Reports the voltage applied to the piezo actuator. Range 0-150V. 18. USB_resetTarget Send 0x00 0x0F 0x00 Receive 0x00 0x0F 0x02 // This function is used to force the target to re-boot. 19. USB _setmotormanual Send 0x00 0x12 0x00 S3 Receive 0x00 0x12 0x02 // Sets the Motor Control Mode S3 Control value S3 = 1 for Motorized. S3 = 0 for Manual. 20. USB _getmotormanual Send 0x00 0x13 0x01 Receive 0x00 0x13 0x03 R3 // Gets the Motor Control Mode R3 Control value R3 = 1 for Motorized. R3 = 0 for Manual. Page 8 of 9

21. USB_enterCodedownloadMode Send 0x00 0xFF 0x00 Receive 0x00 0xFF 0x02 // This function is used to force the target into download mode. // The target will set a flag and then re-boot, the boot code will test this flag, clear it and enter download mode. // The Microchip download utility can then be used. // To exit the download without an upgrade the target should be power cycled. // The code upgrade will use Microchip s bootloader. See DS51526A page 24. Page 9 of 9