XDK110
BCDS
© Bosch Connected Devices and Solutions GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such as
copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice.
General Information Guide XDK110
!
Page
!
31
3.5 Operating XDK
The XDK Workbench indicates in which operation mode XDK is
.
XDK must be in bootloader mode
to flash via XDK Workbench
. The
XDK Workbench will automatically put XDK into bootloader mode
before flashing
.
If this does not work, XDK must be placed manually into bootloader
.
3.5.1 USB Port
XDK is equipped with a micro USB port to connect it to the PC. This port is directly connected to
the USB controller on the MCU of XDK and its function is hence dependent on the software
running on XDK. XDK SDK defines a standard behavior of the USB port and allows the user to
send and receive data via USB.
Unique Serial Number
Each XDK has a unique iSerialNumber which is identical to the MCU ID.
Device String Allows Mode Detection
•
XDK has different iProduct strings for bootloader and application modes
•
Refer to: iProduct:
http://www.beyondlogic.org/usbnutshell/usb5.shtml
•
XDKs iProducts
o
Bootloader mode: XDK Bootloader
o
Application mode: XDK Application
CDC ACM Device
•
XDK is recognized as CDC/ACM device via USB
o
Refer to:
http://en.wikipedia.org/wiki/USB_communications_device_class
o
On Windows, this creates a virtual COM port
•
•
XDK USB IDs
o
idProduct: 0x017B
o
idVendor: 0x108C
•
•
Bidirectional Communication
o
XDK is recognized as a virtual COM port on Windows
o
printf outputs of XDK are redirected to the COM port
o
"USB" module of XDK API can be used to receive data from the PC
When connected to a PC, XDK is recognized as a CDC ACM device. CDC stands for
"communications device class", while ACM stands for "Abstract Control Model". Essentially, this
means, that XDK emulates a serial port (so-called virtual serial port) over the USB connection.
Operating systems such as Mac OS X and Linux ship with standard drivers for such devices. For
Windows, XDK Workbench automatically installs the necessary drivers. Windows assigns a port
identifier "COMx" to XDK, where the number x is incremented when new devices are connected.
Each XDK has a unique USB serial number. This ensures that no matter to which USB port of your
PC you connect XDK; the assigned port identifier will always be the same.
When running software on XDK, issuing a printf command will send data over the virtual serial port.
This can be used for simple debugging purposes as well as for sending data over the virtual serial
port. Furthermore, the XDK SDK offers a USB module that also allows receiving data over the
serial port. Using the function USB_callBackMapping, you can easily register a callback that is
called when data is received over the virtual serial port.