Page 1
AFBR-S50 Time-of-Flight (ToF) Sensor Family Reference Design Application Note Version 1.0 Broadcom AFBR-S50-RD-AN100 April 23, 2020...
Page 2
The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries. For more information, please visit www.broadcom.com. Broadcom reserves the right to make changes without further notice to any products or data herein to improve reliability, function, or design. Information furnished by Broadcom is believed to be accurate and reliable. However, Broadcom does not assume any liability arising out of the application or use of this information, nor the application or use of any product or circuit described herein, neither does it convey any license under its patent rights nor the rights of others.
All information that is required to rebuild the reference design based on the MKL17Z256VFM4 MCU. Instructions on how to integrate the AFBR-S50 Time-of-Flight and an Arm Cortex-M0+ MCU into a closed system that provides the full interface to external devices (Explorer App SW implementation).
The following table shows the hardware requirements for using the S50 API and one AFBR-S50 sensor with respect to the specifications of the MKL17Z256VFM4 (Kinetis KL17Z) MCU from NXP. As the recommended MCU that meets all hardware requirements, the Kinetis KL17Z is the perfect choice for the AFBR-S50-RD.
Figure 2 shows the schematic of the AFBR-S50-RD. The input voltage for the AFBR-S50-RD is 5V, and it is distributed to the circuit via the pin 1 of the J1 connector (FTS-111-02-F-S, a single-row 11-pin header with 1.27-mm/50-mil pitch). However, the operating voltage of the Kinetis KL17Z MCU is within the range from 1.7V to 3.6V. To facilitate the power requirements of the Kinetis KL17Z MCU, an additional low-dropout voltage regulator (LDO) must be used.
The compact size of the entire PCB allows the AFBR-S50-RD to be used as a complete ToF module in an out-of-the-box manner, cutting the time to market.
Page 8
Figure 4 show the layout and the 3D model of the AFBR-S50-RD PCB design. Figure 3: AFBR-S50-RD PCB Layout – Top View (Left), and AFBR-S50-RD PCB Layout – Bottom View (Right) Figure 4: Three-Dimensional Models of the AFBR-S50-RD PCB NOTE: All Gerber files of the AFBR-S50-RD will be available from the AFBR-S50 product pages.
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design 2.3 System Connections Overview The following table shows an overview of the signal connections from the 11-pin AFBR-S50-RD header (J1), through the Kinetis KL17Z MCU, to the AFBR-S50 ToF sensor. AFBR-S50-RD J1 Connector...
PTA1 UART RX 2.4 AFBR-S50-RD Hardware Interfaces This section describes two methods of accessing the AFBR-S50-RD interface. The first method represents connecting with an additional adapter board, and the second one is connecting by using an FTDI cable. NOTE: The adapter board is primarily intended for communication with the FRDM-KL46Z evaluation kit. Additional firmware needs to be uploaded to the KL46Z MCU.
Reference Design 2.4.1 Adapter Board for the AFBR-S50-RD The AFBR-S50-RD has a single-row 11-pin connector and, therefore, has limited connectivity capabilities. To cope with this issue and expand the connectivity, Broadcom offers an additional adapter board. The idea behind the AFBR-S50-RD adapter board is to cover as many different interfaces as possible, offering a unified connectivity solution for the AFBR-S50-RD.
Page 12
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design Figure 6: PCB Layout: Top View, Bottom View, and 3D Model Figure 7: Adapter Board Pinout Layout NOTE: All Gerber files of the AFBR-S50-RD will be available for download from the AFBR-S50 product pages. Broadcom AFBR-S50-RD-AN100...
Page 13
2.4.1.2 Available Connectors and Jumpers The following set of header connectors is available on the adapter board for the AFBR-S50-RD: One 1×11-pin header (female) with 1.27-mm (50-mil) pitch, for interfacing with the AFBR-S50-RD PCB (labeled as CON4 on the schematic) Two 2×10-pin headers (male) with 2.54-mm (100-mil) pitch, Arduino/FRDM-KL46Z-compatible pinout (labeled as CON1...
Page 14
– Pin 10 (5V INPUT) – Pin 14 (GND) NOTE: Both 3V3 INPUT pin and 5V INPUT must be connected. 5V is for powering AFBR-S50-RD and 3V3 for for the interface selection circuit. 2.4.1.2.2 Communication Interface Selection Jumpers Communication interface selection jumpers (J1 and J2) are used to select the interface between the host development board and the AFBR-S50-RD.
Page 15
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design Figure 8: Top View of the Standard 10-pin JTAG/SWD Connector Besides the original J-Link PRO from SEGGER, It is also possible to use the LPC-Link2 debug probe from NXP. The LPC-Link2 debug probe is configurable using the firmware images, allowing support for various development tools and IDEs.
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design Figure 9 shows how to debug a project by clicking on the J-Link icon. The J-Link debug probe must be installed before debugging. Figure 9: J-link Debug Project 2.4.2 FTDI Cable The FTDI cable is a USB to Serial (TTL level) converter, which allows for a simple way to connect TTL interface devices, such as MCUs, to a USB.
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design The FTDI cable can be connected to the UART interface of the AFBR-S50-RD adapter board using the pins on the CON2 connector, as described in the following table. Wire jumpers are used to establish the connection.
Page 18
Figure 11: Location for Installation AFBR-S50-SDK Application Direct link to the SDK: https://docs.broadcom.com/docs/12395357 After the installation, the API Reference Manual can be opened from the Help menu, as illustrated in Figure Figure 12: Location to AFBR-S50 SDK: Argus API Reference Manual Broadcom AFBR-S50-RD-AN100...
Before using either of the two available examples, it is required first to upload the appropriate compiled binary files to the AFBR-S50-RD (more precisely, to the flash memory of the Kinetis KL17Z MCU). Note that programming is only possible using the J-Link or compatible programmer (for example, LPC-Link2), as described in Section 2.4.1.3, Debugging Interface...
In python script, these are labeled as start_byte, stop_byte, and esc_byte. The values assigned to those variables can be found in the Command Byte Format section in the AFBR-S50 SDK: Argus API Reference Manual, as shown in Figure Figure 14: API Reference Manual, Command Byte Format Each command to a slave is acknowledged after successful execution.
Page 21
Figure 15: The Left Side Shows Master to Slave Communication. The Right Side Shows Slave to Master Communication. Besides of the independent TX line, the UART protocol supports the special feature of log and error messages. For interpreting specific commands, refer to the Command Overview section in the AFBR-S50 SDK: Argus API Reference Manual, as shown in...
1. Prepare your evaluation kit (with NXP MKL46z MCU) by flashing the UART binary to the device. 2. Connect the OpenSDA USB port (not the one labeled with KL46Z) to your computer. 3. Go to the Device/Binary folder install directory of your SDK (default: C:\Program Files (x86)\Broadcom\AFBR- S50 SDK\Device\Binary) and copy the AFBR.S50.ExplorerApp.vX.X.X_KL46z_UART.srec file to the OpenSDA USB drive.
Page 23
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design The script requires the pySerial module, which may need to be installed additionally. See: https://pyserial.readthedocs.io/en/latest/index.html The script sends configuration commands to set the data output mode to 1D data only, and the frame rate to 5 Hz. After setting up the configuration parameters, the measurement is started.
Page 24
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design elif cmd == 0x36: # 1D Data Set # Extract Range: r = (rx[12] << 16) + (rx[13] << 8) + rx[14] r = r / 16384.0 # convert from Q9.14 print ("Range[m]: "...
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design Figure 18: Output from the Python Script 4 Troubleshooting and FAQs 4.1 Related Documents For more information, refer to the AFBR-S50 SDK: Argus API Reference Manual. Broadcom AFBR-S50-RD-AN100...
AFBR-S50 Time-of-Flight (ToF) Sensor Family Application Note Reference Design Revision History AFBR-S50-RD-AN100; April 23, 2020 Initial release of the document. Broadcom AFBR-S50-RD-AN100...
Need help?
Do you have a question about the AFBR-S50 and is the answer not in the manual?
Questions and answers