How can I connect an Xbee to FPGA to transmit data.

  • \$\begingroup\$ Do you have a soft core processor in there, or are you planning to do it all with a state machine? Can you load custom code into the module for a web page or TCP-serial interface, or do you have to implement a network server on your FPGA board? \$\endgroup\$ Feb 24, 2015 at 15:40

1 Answer 1


The correct answer is, of course, "with wires".

I assume you've read the WiFi module's datasheet? A quick look at the XBee website shows that their WiFi module communicates over either UART or SPI.

Implementing a UART or SPI master on an FPGA is (relatively) simple and, if you've never done much FPGA work before, a good learning experience. If you don't want to go down that route then you can either explore the IP provided by Actel or have a look for something open source.

Actel have something called "CoreUART" which would probably provide a robust UART implementation, and something called "CoreSPI" which does the same for SPI. If you don't have licenses for them, opencores probably have what you need. There's a few UART and SPI projects listed there, although I can't give any testament to their functionality.

These cores would just give the core protocol - a method of writing or reading bytes to the device. Depending on the WiFi device, you may need to implement a lot of further logic to send and receive commands, or it may do it all for you (acting as an "invisible" serial port between your FPGA and your computer). All that would be revealed in the documentation.

As Chris Stratton said, If you're using a soft-core processor then the answer will be very different. Is the FPGA part of a larger robotics platform, or is it just an FPGA development board?


Not the answer you're looking for? Browse other questions tagged or ask your own question.