This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Missing feature in Middleware-Lib CDC ACM

Hello,

i´m working on a K-Line interface using a STM32F105.
The middleware lib is successfully installed and the virtual com port is running good with the CDC ACM feature.

Now there is a special problem. The KWP2000 protocol is using a special RS232 feature called send line break condition.
There is a SEND_BREAK request (23h) send from Windows via the usbser.sys driver to the middleware library. So the cortex as to apply a positiv voltage on the rs-232 tx-line.

I could´t find the point or the function which is called or is it not implemented in the usb device class?

Parents
  • Hey Milorad,
    thanks for the fast answer.
    I have already testet some "Core" functions but they are all already defined in the compiled USB_CM3.lib.
    I think they are translated in the library from USBD_CDC_ACM_CoreSendBreak to USBD_CDC_ACM_SendBreak but i couldn´t verify it because it has never been called.

    Are you sure the SendBreak funktion is the right way ?

    I´m looking for the function in the CDC ACM which is called when windows send "IOCTL_SERIAL_SET_BREAK_ON" for example.

    Maybe the "USBD_CDC_ACM_Core_SendBreak" is the way back to the usb-host ???

Reply
  • Hey Milorad,
    thanks for the fast answer.
    I have already testet some "Core" functions but they are all already defined in the compiled USB_CM3.lib.
    I think they are translated in the library from USBD_CDC_ACM_CoreSendBreak to USBD_CDC_ACM_SendBreak but i couldn´t verify it because it has never been called.

    Are you sure the SendBreak funktion is the right way ?

    I´m looking for the function in the CDC ACM which is called when windows send "IOCTL_SERIAL_SET_BREAK_ON" for example.

    Maybe the "USBD_CDC_ACM_Core_SendBreak" is the way back to the usb-host ???

Children
  • Hi Wolf,

    the only thing that CDC offers regarding break signalling is SEND_BREAK command 23h, which is specified in details in PSTN120.pdf from USB.org file.

    If you are able to see USB traffic then when you do your mentioned "IOCTL_SERIAL_SET_BREAK_ON" you should be able to see control endpoint 0 request SEND_BREAK.

    That request will be passed to USBD_CDC_ACM_CoreSendBreak function which if you implement it will do whatever you implement.