# How to use PYNQ axidma API without overlay

**URL:** <https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853>\
**Category:** Support\
**Created:** [December 20, 2024, 3:46pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853 "2024-12-20T15:46:18Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Karthick\_Ramu](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/karthick_ramu/32/6563_2.png) [@Karthick\_Ramu](https://discuss.pynq.io/u/Karthick_Ramu)\
**Post date:** [December 20, 2024, 3:46pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/1 "2024-12-20T15:46:18Z")

</div>

I currently have a base block design with AXI DMA. I want to use PYNQ AXI DMA API to send and receive data. But all examples for pynq axi dma starts with downloading a bit file through overlay. I don’t have any additional bit file and my DMA IP is in the base design. How would I use the API to transfer data without having to download bit file.

-Karthick

---

<div class="post-metadata">

**Author:** ![matthew](https://avatars.discourse-cdn.com/v4/letter/m/ed655f/32.png) [@matthew](https://discuss.pynq.io/u/matthew)\
**Post date:** [December 20, 2024, 4:02pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/2 "2024-12-20T16:02:10Z")

</div>

Hi,  
What do you mean by “I currently have a base block design with AXI DMA” ? Do you have a block design that you open with Vivado? Or .bit and .hwh files ?  
With which board are you working?

---

<div class="post-metadata">

**Author:** ![Karthick\_Ramu](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/karthick_ramu/32/6563_2.png) [@Karthick\_Ramu](https://discuss.pynq.io/u/Karthick_Ramu)\
**Post date:** [January 6, 2025, 4:54pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/3 "2025-01-06T16:54:55Z")

</div>

My base design is a block design. I have axi dma core in it. I generate .bit and .hwh files to create a pynq image. I’m currently using Zynq mini ITX board.

[https://www.newark.com/avnet/aes-mini-itx-7z100-bas-g/dev-brd-zynq-7000-all-programmable/dp/31AC6108](https://www.newark.com/avnet/aes-mini-itx-7z100-bas-g/dev-brd-zynq-7000-all-programmable/dp/31AC6108)

---

<div class="post-metadata">

**Author:** ![Karthick\_Ramu](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/karthick_ramu/32/6563_2.png) [@Karthick\_Ramu](https://discuss.pynq.io/u/Karthick_Ramu)\
**Post date:** [January 6, 2025, 4:57pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/4 "2025-01-06T16:57:25Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![marioruiz](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/marioruiz/32/2177_2.png) [@marioruiz](https://discuss.pynq.io/u/marioruiz)\
**Post date:** [January 7, 2025, 12:07pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/5 "2025-01-07T12:07:50Z")

</div>

Hi @Karthick_Ramu,

> [@Karthick\_Ramu](#):
>
> I generate .bit and .hwh files to create a pynq image

These files are your overlay. You should provide the \*.bit file to the Overlay class to download it.  
Then you can use `ip_dict` to inspect the memory mapped IP in your design.

Mario

---

<div class="post-metadata">

**Author:** ![Karthick\_Ramu](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/karthick_ramu/32/6563_2.png) [@Karthick\_Ramu](https://discuss.pynq.io/u/Karthick_Ramu)\
**Post date:** [January 7, 2025, 3:27pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/6 "2025-01-07T15:27:35Z")

</div>

Loading the .bit is already part of bootup sequence. Are you saying I have reload the same .bit file through overlay class?

-Karthick

---

<div class="post-metadata">

**Author:** ![marioruiz](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/marioruiz/32/2177_2.png) [@marioruiz](https://discuss.pynq.io/u/marioruiz)\
**Post date:** [January 7, 2025, 6:58pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/7 "2025-01-07T18:58:08Z")

</div>

In that case you can set the `download=False` in the Overlay class.

---

<div class="post-metadata">

**Author:** ![matthew](https://avatars.discourse-cdn.com/v4/letter/m/ed655f/32.png) [@matthew](https://discuss.pynq.io/u/matthew)\
**Post date:** [January 8, 2025, 10:05pm UTC](https://discuss.pynq.io/t/how-to-use-pynq-axidma-api-without-overlay/7853/8 "2025-01-08T22:05:37Z")

</div>

Does the response of marioruiz answer your question “How would I use the API to transfer data without having to download bit file?” ?
