Files
motorBase/motorApp/NewFocusSrc

NewFocus PicoMotor Controller (87xx)
===================================


This motorRecord driver supports the NewFocus 8750 and 8752 
PicoMotor Network Controllers. 
	8750 - RS232 @ 19200Baud (8data, No Parity, 1stop)
	8752 - RS232 @ 19200Baud or  Ethernet (port 23)

Support Motor Drivers (daisychained)
	8753 - 3 Channel Open-loop
	8751 - 1 Channel Closed-loop

Motor Resolution:
	Standard Picomotor - ~30nm
	Tiny Picomotor - ~100nm


Serial Port Config
===================
DB9: Male
     Tx - Pin 2
     Rx - Pin 3

     Null-Modem (swap 2-3) required for IP-Octal breakout module

Baud: 19200 (eight data bits, one stop bit, and no parity)


**** EXAMPLE CONFIGURATION FOR VXWORKS TARGETS ****

Ethernet Config (8752 Only)
============================
Commands sent using RS232 port

EHCO ComA ON    Turn echo on RS232 port (Computer) 

IPMODE          (STAT, DHCP)  - IP Mode (Static IP, Use DHCP Server)
IPADDR 		IP Setting
NETMASK		Network Mask 
MACADDR		MAC Address
GATEWAY	        Network Gateway
SAV		Save Configuration Settings

After setting up ethernet parameters and SAV(ing) reset the controller. 
The IPMODE and IPADDR do not take effect untill after a reboot.

Example:
>IPMODE=STAT
>IPADDR=164.54.9.33
>NETMASK=255.255.252.0
>GATEWAY=164.54.8.1
>SAV
<power cycle>


Other Info
===================================
Test Versions:
    VER<cmnd>
	8750 - Version 1.0.13  
	8752 - Version 1.5.0, 1.6.0
	8752 - Version  1.5.4 (NO '>'  on STA command - use '/n' for input EOS)


Detect driver types
   DRT	Driver Type (8752 Only)
	1 = 3 channel open loop (8753)
	2 = 1 channel closed loop (8751)



EPICS SETUP
============


xxxApp/src/Makefile
-------------------
xxx_vxWorks_LIBS += NewFocus

xxxApp/src/xxxCommonInclude.dbd
--------------------------------
include "devNewFocus.dbd"


iocBoot/iocxxx/serial.cmd
---------------------------
tyGSAsynInit("serial1",  "UART_0", 1, 19200,'N',1,8,'N',">","\r")  /* NewFocus Pico Motor */

.
# Setup IP port for 8752 
drvAsynIPPortConfigure("serial3", "164.54.9.33:23", 0, 0, 0)
asynOctetSetInputEos("serial3",0,">")
asynOctetSetOutputEos("serial3",0,"\r")
.
.

# New Focus Picomotor Network Controller (model 87xx) (setup parameters:  
#     (1) maximum number of controllers in system 
#     (2) maximum number of drivers per controller (1 - 3)  
#     (3) motor task polling rate (min=1Hz,max=60Hz)  
#drvPMNC87xxdebug=0
PMNC87xxSetup(1, 2, 10) 
 
# New Focuc Picomotor Network Controller (model 87xx) configuration parameters:  
#     (1) controller# being configured, 
#     (2) asyn port name (string)
PMNC87xxConfig(0, "serial1")


iocBoot/iocxxx/motor.substitutions
----------------------------------
{xxx:, 1,     m$(N),  "PMNC87xx",     0,      0,      "motor $(N)",   degrees,        Pos,    10,             0.,             1.,             0,              1,              .2,             1e-3,   3,              100,    -100,   ""}
{xxx:, 2      m$(N),  "PMNC87xx",     0,      1,      "motor $(N)",   degrees,        Pos,    60,             0.,             1.5,            0,              1,              .2,             1e-3,   3,              100,    -100,   ""}
{xxx:, 3,     m$(N),  "PMNC87xx",     0,      2,      "motor $(N)",   degrees,        Pos,    60,             0.,             1.,             0,              1,              .2,             1e-3,   3,              100,    -100,   ""}