# How to send data from python to the pynq board?

**URL:** https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536
**Category:** Support
**Created:** [August 11, 2022, 8:33am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536 "2022-08-11T08:33:19Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![fpgaenthusiast](https://avatars.discourse-cdn.com/v4/letter/f/ecc23a/32.png) [@fpgaenthusiast](https://discuss.pynq.io/u/fpgaenthusiast)
#### Post date: [August 11, 2022, 8:33am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/1 "2022-08-11T08:33:19Z")

</div>

I want a python interface where I can input some sequence of bits and it should go to the fpga board. The data needs to be inputted to a custom IP. What are the steps required to do this?

---

<div class="post-metadata">

### Author: ![briansune](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/briansune/32/3087_2.png) [@briansune](https://discuss.pynq.io/u/briansune)
#### Post date: [August 11, 2022, 9:57am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/2 "2022-08-11T09:57:41Z")

</div>

Hello and welcome to the community of PYNQ =]

The easiest and lowest effort way is to use GPIO as bytes or words load and capture via some logic.  
And a simplest ready and busy logic to indicate it is go or no go.

Other than that you need more knowledge on HDL design and HLS.

---

<div class="post-metadata">

### Author: ![cathalmccabe](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/cathalmccabe/32/3348_2.png) [@cathalmccabe](https://discuss.pynq.io/u/cathalmccabe)
#### Post date: [August 15, 2022, 8:37am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/3 "2022-08-15T08:37:06Z")

</div>

Video example that may be of use here; using PS GPIO:

[![](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/6/62d755ac97eeb48658407002374725120642d78b.jpeg "PYNQ Tutorial; PS GPIO Part 1: building the hardware") ](https://www.youtube.com/watch?v=a5NnLozPEI0)

There are other ways to do this depending on what you need, and your IP.

Cathal

---

<div class="post-metadata">

### Author: ![fpgaenthusiast](https://avatars.discourse-cdn.com/v4/letter/f/ecc23a/32.png) [@fpgaenthusiast](https://discuss.pynq.io/u/fpgaenthusiast)
#### Post date: [August 23, 2022, 1:08pm UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/4 "2022-08-23T13:08:41Z")

</div>

This is similar to what I want, except that the data I want to transfer is more than 64 bits (136 bits, to be precise). How can that be achieved?

---

<div class="post-metadata">

### Author: ![fpgaenthusiast](https://avatars.discourse-cdn.com/v4/letter/f/ecc23a/32.png) [@fpgaenthusiast](https://discuss.pynq.io/u/fpgaenthusiast)
#### Post date: [August 30, 2022, 10:50am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/5 "2022-08-30T10:50:26Z")

</div>

Hello, could you please elaborate on how this supposed to be done. My design requires a 136-bit input which I want to be given from python code and the rest of the pins of my design will be mapped to the peripherals of the board. I have attached a picture of my design.

![image](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/4/49f19a92698671b82bcb12e304abededd4300150.png)

---

<div class="post-metadata">

### Author: ![fpgaenthusiast](https://avatars.discourse-cdn.com/v4/letter/f/ecc23a/32.png) [@fpgaenthusiast](https://discuss.pynq.io/u/fpgaenthusiast)
#### Post date: [August 30, 2022, 11:21am UTC](https://discuss.pynq.io/t/how-to-send-data-from-python-to-the-pynq-board/4536/6 "2022-08-30T11:21:26Z")

</div>

[https://pynq.readthedocs.io/en/v2.7.0/overlay\_design\_methodology/overlay\_tutorial.html](https://pynq.readthedocs.io/en/v2.7.0/overlay_design_methodology/overlay_tutorial.html)

I saw this tutorial and it is similar to what I want, besides that I want to input an array. One thing though is that the design in the tutorial has an AXILITE interface whereas my IP does not. Do I convert my IP to have an AXILITE interface, as that seems to be very cumbersome? Or is there any other method which I should follow?
