Communication Examples

Set and Get Registers Example

from ingeniamotion import MotionController

mc = MotionController()
mc.communication.connect_servo_eoe("192.168.2.22", "cap-net_0.5.0.xdf")
mc.communication.set_register("DRV_PROT_USER_OVER_VOLT", 60)
volt = mc.communication.get_register("DRV_PROT_VBUS_VALUE")
print("Current voltage is", volt)
mc.communication.disconnect()

Load Firmware ECAT

import ingeniamotion

# Create MotionController instance
mc = ingeniamotion.MotionController()

# Print infame list to get ifname index
print(mc.communication.get_interface_name_list())

# Load firmware
mc.communication.load_firmware_ecat_interface_index(
    2,  # ifname index
    "./cap-xcr-e_0.7.1.lfu",  # FW file
    1,  # Slave index
    boot_in_app=False)  # True if Everest, False if Capitan, else contact manufacturer

Load Firmware FTP

import ingeniamotion

# Create MotionController instance
mc = ingeniamotion.MotionController()

# Connect drive
mc.communication.connect_servo_ethernet("192.168.2.22", "eve-net-c_eth_1.8.1.xdf")

# Load firmware
mc.communication.boot_mode_and_load_firmware_ethernet("eve-net-c_1.8.1.sfu")