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.

TIOL111: TIOL11 or similar IO-Link Trasnceivers capable of detecting wake up when configured as input (DI)?

Part Number: TIOL111

Hello TI

We need the C/Q pin 4 as a device digital input for a device which will have an analog out on pin 2.

Do your IO-Link transceivers support wake up detection when configured as an input (NOT driving as output)?

Kind Regards

Roman Kellner

  • Hello Roman,

    The short answer to your question is the WAKE pin will always remain Hi-Z when the EN pin is Low or left Open. Any activity on the CQ pin will be reflected on the RX pin, including any form of Wake-up pulse from the Master. Only when the EN pin is High and the TIOL111 is driving the line, will the transceiver monitor the line for an overcurrent condition as a result of the Master sending a wake-up signal to the transceiver and reflect that on the WAKE pin as an indication to the MCU to disable the driver so that it can receive data from the Master.

    The TIOL111 only uses the wake-up detection as defined in the IO-Link standard to force a change of state from SIO to Communication mode. If the TIOL111 is already in a state that is ready to receive data from the Master, nothing is required of the MCU and therefore the WAKE pin remains Hi-Z. Data can simply flow from the Master to the Slave.

    Now for the benefit of the forum I will elaborate and add the following as a more detailed answer because this question comes up now and again.

    First off, what is the Wake-Up signal, and when is it used?  Since the IO-Link is a Master/Slave architecture that communicates along a single wire, only the Master or the Slave can send data at any given time.  The majority of the time in a sensor application, the Slave will be configured to send data to the Master.  If however, the Master needs to take over the communication bus, it needs some method to tell the Slave to stop transmitting and change from a “Driving” state where it is actively sinking or sourcing current (EN = High), to a “Receiving” state where it places the CQ pin in a Hi-Z state and allows the Master to send data along the CQ line (EN = Low).  The data received will be passed along to the MCU on the RX pin.  If the Slave is sinking or sourcing current, the Master will detect the current state of the CQ line and will Over-Drive the CQ line to the opposite state with more than 500mA of current for the wake up pulse duration (typically 80uS).  The slave detects this change in current and uses it as an indication that the Master wants it to stop transmitting and change to a Receive state.

    The TIOL111 has 3 basic function modes:

    1. NPN Configuration (N-Switch SIO mode)
    2. PNP Configuration (P-Switch SIO mode)
    3. Push-Pull (Communication Mode)

    In the Push-Pull Communication Mode, EN is set high to enable the driver when there is data to be transmitted and the MCU toggles the TX pin to sink/source current along the CQ line to effectively Push/Pull data by either having the N-Switch or P-Switch engaged at all time.  When the data transmission is complete, the EN pin is typically changed to a Low to place the TIOL111 into a receive state so that it can receive data from the Master.

    The NPN and PNP Configuration ties the TX pin either High or Low and uses the EN pin to control whether the switch is active.  This effectively is done by Enabling/Disabling the driver by toggling between a “Drive” state (EN = High) and a “Receive” state (EN = Low).

    To summarize, the Wake-Up function is only needed when the EN = High because when EN = Low, the device is already in a mode that is capable of receiving data from the Master and no wake-up pulse is needed.

    Section 8.3.1 of the datasheet explains the Wake Up Detection as follows:

    The TIOL111 may be operated in IO-Link mode or Standard Input / Output (SIO) mode.  If the device is in SIO mode and the master node wants to initiate communication with the device node, the master drives the CQ line to the opposite of its present state, and will either sink or source current (≥ 500 mA) for the wake-up duration (typically 80 μs) depending on the CQ logic level as per the IO-Link specification.  The TIOL111 detects this wake-up condition and communicated to the local microcontroller via the WAKE pin.  The IO-Link communication requires the device node to switch to receive mode within 500 μs after receiving the wake-up signal.

    The Master should only need to send a Wake-Up condition to the TIOL111 when the TIOL111’s EN pin = High.  If the Master sends this Wake-Up pulse when EN = High, the TIOL111 will reflect this on the Wake pin and the MCU should respond by changing EN to Low.  If the EN pin is already Low and the Master sends a Wake-Up pulse, the TIOL111 is already in a receive mode and therefore there is nothing to respond to and it keeps the Wake pin in a Hi-Z state (High) because no change to the EN pin is necessary.

    This behavior is what is outlined in the IO-Link standard. What is not outlined in the IO-Link standard is what the WAKE pin should do if the transceiver is already in a non-driving state and ready to receive communication from the Master. The TIOL111 follows the defined operation in the standard, but nothing more. If the transceiver is not driving the line, can there even be a wake-up signal where the master drives the line to an opposite state? The Master already has control over the bus and can simply start transmitting data to the Slave.

    Other transceivers may have added additional functionality for the WAKE pin to reflect activity on the line when the transceiver is already in a receive mode. However, this is not defined in the IO-Link standard.

    The TIOL111 interprets the purpose of a Wake-Up pulse as a method to force a state change from SIO mode to Communication mode with the driver disabled.

    If you are wanting to also use this as a form of a system level interrupt to the MCU or indication that the Master is about to send data and plan on having a Wake-up pulse prior to every transmission, then the TIOL111 will need to be in SIO mode in order for the WAKE pin to pass such a signal to the MCU. Otherwise, the Master is already able to communicate data to the Slave and the MCU should simply use activity on the RX pin as data coming from the Master. Any Wake-Up pulse from the Master will always be reflected on the RX pin when the TIOL111 is in a receive mode, even though it will not be reflected on the WAKE pin when EN pin = Low. The MCU could detect this initial Wake-Up pulse on the RX pin as an interrupt and then prepare itself for data reception to follow.

    Regards,

    Jonathan

  • Hello Jonathan

    Thanks for the detailed explanation.

    Consequently the device when in input mode (SIO - DI) would have to listen on the C/Q pin, feeding it into the UART and parallel interpreting the pattern as whatever the input was foreseen e.g. reset, zeroing, teach, sync or trigger pulse. As soon as the UART together with the IO-Link stack recognizes a valid start of IO-Link communication, the device would switch from the SIO as input mode into communication mode no longer interpreting the pulse pattern as ordinary DI signals.

    In that case the TIOL111 is not directly involved to detect the wake-up ans switch from SIO - DI to Comm.

    Regards

    Roman