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.

BOOSTXL-PGA460: Using two PGA460 EVMs for Indoor Positioning System

Part Number: BOOSTXL-PGA460
Other Parts Discussed in Thread: PGA460, , USB2ANY, MSP-EXP430F5529LP, PGA460-Q1, ENERGIA

Hi

I would like to evaluate the PGA460 for use in an ultrasonic indoor positioning system. In the end, there will be one mobile sender and multiple receivers, but for now evaluation of one sender and one receiver would be ok as well. Sender and receiver will be up to 5 meters apart, but never closer than about 0.5m.

Is there any way I can set this up with one or more PGA460 EVM? The struggle will be to synchronize both evalkits to the same time source. Even if there are cables which will limit the distance two EVMs can be apart, but is there a way at all to test this with the kits?

  • Hi Stefanie,

    Yes, it is possible to configure one PGA460 as a transmitter, and the other as a receiver.

    Yes, you can use two BOOSTXL-PGA460 EVMs to synchronize the two PGA460s devices using the broadcast burst-and-listen command. Please refer to the PGA460 Array of Ultrasonic Transducers for Triangulation and Tracking ( https://www.ti.com/lit/an/slaa783/slaa783.pdf ) app report for a detailed explanation on synchronizing multiple PGA460 devices. You don't need to add the triangulation algorithm for your application, unless you need position tracking.

    In short, one of the EVMs will only be connected to the driver (OUTA and OUTB pins), while the other EVM is only connected to the receiver (INP and INN pins). This way, when you send a broadcast burst/listen command to all PGA460s on the same UART/SPI bus, all devices will be synchronized, but only the driver-EVM will burst, and only the receiver-EVM will listen due to the hardware configuration.

    You can then add up to a total of eight PGA460 devices (one transmitter, seven receivers) to expand the number of receivers using the same approach since the PGA460 uses a three-bit address (UART_ADDR = 0h to 7h).

  • Hi Akeem

    Thank you for the answers and the link, the SLAA783 is what I was looking for. But it does not provide details about the hardware setup. Is the demo application GUI used as a platform and the commands are issued using the "Interface Mode" tab? Meaning that the GUI will broadcast by sending a message out to all serial connectors available at the same time?

    Is it possible to communicate to the PGA460 that is sitting on top of the MSP430 using the serial COM port on the computer? What are the prerequisites? Can I have the GUI running at the same time or would it block the COM port?

    I will try to use multiple PGA460 as I will use trilateration for this setup: one receiver (the moving robot in the field with only a small battery) and multiple transmitters at fixed locations.

  • Hi Stefanie,

    Yes, you can use the GUI's Interface page to send broadcast commands to all PGA460 devices connected to the same UART bus of the MSP-EXP430F5229LP. Afterwards, you would then use the Interface page to send a single address command to read back the ultrasonic measurement result or echo data dump data of the receiving PGA460s. Remember, you will need to pre-program the UART_ADDR to different values on all the PGA460s individually (using the GUI) before you connect them all to the same UART bus.

    It is possible to program the MSP-EXP430F5229LP to work in a serial USB-CDC COM terminal mode, but you will not be able to use both the GUI and a COM terminal simultaneously. The GUI requires the MSP430 to programmed with proprietary USB2ANY firmware that runs in a USB-HID mode.

    For an example of using the same PGA460-Q1 EVM hardware (MSP-EXP430F5529LP and BOOSTXL-PGA460) in a serial COM port mode, please refer to the PGA460 Energia Library and Code Example (Version 1.0.9) (Rev. I). This download actually includes a triangulation example (Triangulation.ino), which you can repurpose for the already implemented broadcast burst/listen command and ultrasonic measurement result readback. You would just need to remove the post-processing triangulation function. This example uses UART_ADDR address '0' as the transmitter/transceiver module, and address '1' as the receive-only module. Do not connect the transducer to the driver pins (OUTA/OUTB) on the receive-only module.

  • Hi Akeem

    I have now worked with the Energia library extensively and am ready to connect multiple PGA460 daughterboards to the same MSP430 launch pad. Can I just stack the daughter cards on top of each other, meaning all IO Pins going from the MSP430 launchpad to the PGA460 will be in bus mode and be connected to all PGA460 in my setup? Or do I only connect certain pins of the launchpad in a bus topology to the PGA daughter cards?

  • Stefanie,

    Stacking multiple BOOSTXL-PGA460 boards onto the LaunchPad is ok if you are using UART or SPI communication.

    Note, you will need to program the UART_ADDR of each device to a different value using the GUI before stacking them all to the same LaunchPad since all devices have a factory default address of '0'.

    Also, you will need to use an external voltage supply to power up multiple BOOSTXL-PGA460 boards. The USB supply from a traditional desktop/laptop can only power a single BOOSTXL-PGA460 board.