This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MCF8315EVM: Unable to connect using GUI or spin motor using pot

Part Number: MCF8315EVM
Other Parts Discussed in Thread: MCF8315A

Hello,

I am unable to connect to this board using the GUI. I have tried both chrome and firefox with neither functioning. I do see the port available in the selection and left the baud at 9600. I have also attempted to install the windows version of the software, but am running into issues with the installation of GUI Composer. It will not install from the web, and pointing it to an installed GUI Composer runtime I had installed (6.2.0.1) it would not find a valid runtime.

I also am unable to spin a motor by following the steps in the tuning guide/GUI to use the pot speed selection.

I am looking for some assistance with making this functional. Thanks!

  • Hi Keith,

    May you describe what your actions are and what appears on the GUI (ex: after plugging in the USB, the bottom of the screen says failed to connect)? For spinning the motor without GUI on the EVM, I will try replicating the steps and get back to you later today.

    Regards,

    Hong

  • In the GUI (The web version since I can't install the local one). I:

    • Plug in the board
    • Go to the serial port configuration and make sure the COM port is selected
    • Leave the baud rate as default (9600) and press OK
    • Press the link on the bottom left of the screen
    • GUI shows "Connecting to target ..."
    • It is never able to establish a connection
  • Hi Keith,

    You may be encountering an issue with drivers. If you are on Windows, go to Device Manager, and then Ports (COM & LPT). If the port corresponding to the EVM has a yellow caution sign on the USB symbol, try installing the FTDI VCP driver from here: https://ftdichip.com/drivers/vcp-drivers/.

    Best,

    Hong

  • Hi Hong,

    The COM port did not show any issues in device manager, but I reinstalled the FTDI drivers just to verify. There was no change in behavior after reinstalling.

  • Hi Keith,

    Does D6 turn on when you plug in the USB? Also, have you ever been able to connect or get the motor to spin on this device, or are these errors preventing you from doing so?

    Regards,

    Hong

  • Hi Hong,

    D6 does turn on when USB is connected. I have been unable to spin a motor, I have even tried simply using the pot control with no results.

  • Hi Keith,

    Just to verify, may you screenshot your device manager with the com ports expanded?

    We can try to install the offline version of the GUI; when you try download GUI composer from web when installing the MCF8315A GUI, what error message shows up?

    Regards,

    Hong

  • Hi Hong,

    Here is the device manager ports, I do see the port on the web GUI.

    Here is what I see when I try to use the download option

    Thanks!

  • Hi Keith,

    The error may be from corporate security software blocking the web install. May you try uninstalling your current GUI composer runtime and installing from a file?

    Go to https://dev.ti.com/gallery and search for MCF8315A. Hover over the download button and click "Windows runtime" to download the GUI composer installer.

    Then, when installing the GUI, instead of using the download from web option, choose the windows runtime installer as the file to install from.

    Let me know if there are any errors in this process and if the offline version works!

    Regards,

    Hong

  • Hi Hong,

    I was able to successfully install the GUI and connect to the board.

    I am able to get the motor to spin, however it is not responding to speed controls. I've tried both using 'Analog' with the pot and the I2C based control.

    I first had issues with the 'MPET BEMF FAULT', but adjusting the current as directed in the steps solved this.

    Under the motor status I see this:

    And the motor continues to spin even if I tell it to go to 0% unless I use the break switch on the board.

    Thank you for the help.

  • Hi Keith,

    If the back emf generated during MPET is too low, the algorithm can get stuck in the measurement state. To increase back emf, you can increase the percent speed this measurement takes place at with MPET_OPEN_LOOP_SPEED_REF in the INT_ALGO_1 register.

    Regards,

    Hong

  • Hi Hong,

    I just tried to adjust that value. It started at 15% and I tried the options up to 50% (maximum). The speed did not appear to change with different settings and the GUI indicated it was still stuck trying to measure KE.

  • Hi Keith,

    May you upload your registers here? Go to File > Save Registers to get a JSON file. I can look over them to try and see any anomalies.

    Regards,

    Hong

  • Hi Hong,

    Unfortunately I am now having connection issues with the board. I can do an initial connection through the GUI but when I do anything (reset values, read registers, etc.) it disconnects and shows me

    I have tried a second USB cable with the same issue. If I can get back to where I was at previously I will save the registers

  • Hey Keith, 

     We will take a look at this and aim to provide feedback next week.

    Best,

    Akshay

  • Hi,

    I was able to connect to a different board. It seems that the one I had been using had some problems and may be damaged/faulty.

    Using the second board I ran through the setup steps. I had adjusted the 'MPET_OPEN_LOOP_CURR_REF' as suggested based on the fault, once that was updated the motor seems to be perpetually spinning, no faults but not finishing the MPET. I adjusted the 'MPET_OPEN_LOOP_SPEED_REF' as suggested, and the motor did spin faster, but it was still getting stuck at the same point.

    Here are my registers

    {
      "signature": "oneui-register-data",
      "data": [
        [
          {
            "idx": 0,
            "id": "isd_config",
            "value": "0x64738C20"
          },
          {
            "idx": 1,
            "id": "rev_drive_config",
            "value": "0xA8200000"
          },
          {
            "idx": 2,
            "id": "motor_startup1",
            "value": "0x0B6807D0"
          },
          {
            "idx": 3,
            "id": "motor_startup2",
            "value": "0xA306600C"
          },
          {
            "idx": 4,
            "id": "closed_loop1",
            "value": "0x0D3201B5"
          },
          {
            "idx": 5,
            "id": "closed_loop2",
            "value": "0x9BAD0000"
          },
          {
            "idx": 6,
            "id": "closed_loop3",
            "value": "0x00000000"
          },
          {
            "idx": 7,
            "id": "closed_loop4",
            "value": "0x00000168"
          },
          {
            "idx": 8,
            "id": "speed_profiles1",
            "value": "0x00000000"
          },
          {
            "idx": 9,
            "id": "speed_profiles2",
            "value": "0x00000000"
          },
          {
            "idx": 10,
            "id": "speed_profiles3",
            "value": "0x00000000"
          },
          {
            "idx": 11,
            "id": "speed_profiles4",
            "value": "0x800D0000"
          },
          {
            "idx": 12,
            "id": "speed_profiles5",
            "value": "0x00000000"
          },
          {
            "idx": 13,
            "id": "speed_profiles6",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_ctrl1",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "algo_debug1",
            "value": "0x80000000"
          },
          {
            "idx": 2,
            "id": "algo_debug2",
            "value": "0x00000000"
          },
          {
            "idx": 3,
            "id": "current_pi",
            "value": "0x03010301"
          },
          {
            "idx": 4,
            "id": "speed_pi",
            "value": "0x00000000"
          },
          {
            "idx": 5,
            "id": "dac_1",
            "value": "0x00000000"
          },
          {
            "idx": 6,
            "id": "dac_2",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algorithm_state",
            "value": "0x0000000D"
          },
          {
            "idx": 1,
            "id": "fg_speed_fdbk",
            "value": "0x7FFFFFFF"
          },
          {
            "idx": 2,
            "id": "bus_current",
            "value": "0x00000000"
          },
          {
            "idx": 3,
            "id": "phase_current_a",
            "value": "0xFFF80000"
          },
          {
            "idx": 4,
            "id": "phase_current_b",
            "value": "0x00140000"
          },
          {
            "idx": 5,
            "id": "phase_current_c",
            "value": "0x000C0000"
          },
          {
            "idx": 6,
            "id": "csa_gain_feedback",
            "value": "0x00000002"
          },
          {
            "idx": 7,
            "id": "voltage_gain_feedback",
            "value": "0x00000001"
          },
          {
            "idx": 8,
            "id": "vm_voltage",
            "value": "0x0323C000"
          },
          {
            "idx": 9,
            "id": "phase_voltage_va",
            "value": "0x00045483"
          },
          {
            "idx": 10,
            "id": "phase_voltage_vb",
            "value": "0x0004C35D"
          },
          {
            "idx": 11,
            "id": "phase_voltage_vc",
            "value": "0x00045483"
          },
          {
            "idx": 12,
            "id": "sin_commutation_angle",
            "value": "0x08000000"
          },
          {
            "idx": 13,
            "id": "cos_commutation_angle",
            "value": "0x00000000"
          },
          {
            "idx": 14,
            "id": "ialpha",
            "value": "0x14840000"
          },
          {
            "idx": 15,
            "id": "ibeta",
            "value": "0x0FB94937"
          },
          {
            "idx": 16,
            "id": "valpha",
            "value": "0x00C692A2"
          },
          {
            "idx": 17,
            "id": "vbeta",
            "value": "0x000193EB"
          },
          {
            "idx": 18,
            "id": "id",
            "value": "0xFFEFD77C"
          },
          {
            "idx": 19,
            "id": "iq",
            "value": "0x07484CFE"
          },
          {
            "idx": 20,
            "id": "vd",
            "value": "0xFFE2B788"
          },
          {
            "idx": 21,
            "id": "vq",
            "value": "0x005B56B2"
          },
          {
            "idx": 22,
            "id": "iq_ref_rotor_align",
            "value": "0xE666C700"
          },
          {
            "idx": 23,
            "id": "speed_ref_open_loop",
            "value": "0xFF507155"
          },
          {
            "idx": 24,
            "id": "iq_ref_open_loop",
            "value": "0xE666C700"
          },
          {
            "idx": 25,
            "id": "speed_ref_closed_loop",
            "value": "0x00000000"
          },
          {
            "idx": 26,
            "id": "id_ref_closed_loop",
            "value": "0x00000000"
          },
          {
            "idx": 27,
            "id": "iq_ref_closed_loop",
            "value": "0x00000000"
          },
          {
            "idx": 28,
            "id": "isd_state",
            "value": "0x00000005"
          },
          {
            "idx": 29,
            "id": "isd_speed",
            "value": "0x0D342EDA"
          },
          {
            "idx": 30,
            "id": "ipd_state",
            "value": "0x00000000"
          },
          {
            "idx": 31,
            "id": "ipd_angle",
            "value": "0x07BC8D18"
          },
          {
            "idx": 32,
            "id": "ed",
            "value": "0x0002125D"
          },
          {
            "idx": 33,
            "id": "eq",
            "value": "0x003D2722"
          },
          {
            "idx": 34,
            "id": "speed_fdbk",
            "value": "0x019286CA"
          },
          {
            "idx": 35,
            "id": "theta_est",
            "value": "0xB40A8D51"
          }
        ],
        [
          {
            "idx": 0,
            "id": "fault_config1",
            "value": "0xC6C80106"
          },
          {
            "idx": 1,
            "id": "fault_config2",
            "value": "0xF0D00888"
          }
        ],
        [
          {
            "idx": 0,
            "id": "gate_driver_fault_status",
            "value": "0x00000000"
          },
          {
            "idx": 1,
            "id": "controller_fault_status",
            "value": "0x00000000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "pin_config",
            "value": "0x00000002"
          },
          {
            "idx": 1,
            "id": "device_config1",
            "value": "0x00101462"
          },
          {
            "idx": 2,
            "id": "device_config2",
            "value": "0xC000F00F"
          },
          {
            "idx": 3,
            "id": "peri_config1",
            "value": "0xC1C01F00"
          },
          {
            "idx": 4,
            "id": "gd_config1",
            "value": "0x9C450100"
          },
          {
            "idx": 5,
            "id": "gd_config2",
            "value": "0x80200000"
          }
        ],
        [
          {
            "idx": 0,
            "id": "int_algo_1",
            "value": "0xA43341FD"
          },
          {
            "idx": 1,
            "id": "int_algo_2",
            "value": "0x000001A7"
          }
        ],
        [
          {
            "idx": 0,
            "id": "algo_status",
            "value": "0x0FB70004"
          },
          {
            "idx": 1,
            "id": "mtr_params",
            "value": "0x9B001E00"
          },
          {
            "idx": 2,
            "id": "algo_status_mpet",
            "value": "0xCA000000"
          }
        ]
      ]
    }

  • Hi Keith,

    Could you try and follow the steps 3 and 4 of section 2.6.2 of the MCF8315A Tuning Guide to manually input the BEMF constant of your motor? I believe that MPET maybe having trouble measuring the BEMF of the motor so by manually inputting this parameter into the MOTOR_BEMF_CONST register MPET will skip this measurement.

    Regards,

    Joshua

  • Hi Joshua,

    I have tried those steps and still am getting the same response. It does not appear to actually be skipping that part. Is there another configuration I need to set to do that?

    Manually spinning the motor and measuring with a scope to calculate the constant.

  • Hi Keith,

    You are correct, there are some additional settings that need to be set to be able to skip the BEMF measurement step.

    From Figure 7-41 in the datasheet we can see conditions checked to run the BEMF measurement routine of MPET.

    To skip the BEMF measurement you must set MOTOR_BEMF_CONST, SPD_LOOP_KP and SPEED_LOOP_KI to non-zero values and make sure that MPET_KE and MPET_MECH are set to 0.

    Regards,

    Joshua

  • Hi Joshua,

    Going through these steps allows me to spin the motor using the pot, I2C, or PWM. It does appear that the first board I used was faulty in some way, so it did require a second board after I started to have the connection issues.

    Thank you for the assistance!