# Combining IPs' problem

**URL:** <https://discuss.pynq.io/t/combining-ips-problem/4868>\
**Category:** Support\
**Created:** [November 2, 2022, 9:55am UTC](https://discuss.pynq.io/t/combining-ips-problem/4868 "2022-11-02T09:55:32Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![hsuharry12](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/hsuharry12/32/3715_2.png) [@hsuharry12](https://discuss.pynq.io/u/hsuharry12)\
**Post date:** [November 2, 2022, 9:55am UTC](https://discuss.pynq.io/t/combining-ips-problem/4868/1 "2022-11-02T09:55:32Z")

</div>

Hi, I have created my own IP overlay “SDA” (Fig.1) and it works just fine. Also, I have tried another built-in IP “SPI” (Fig.2) to communicate with a peripheral DSP and it also works successfully. I tried to combine the two IPs (Fig.3) to reduce the time spent on loading the bit files, since I need to switch between the IPs for my project. When I was testing “SDA” IP by doing the same function in a for loop, it seems to stuck in DMA.sendchannel.wait() after a few cycles. Not sure what causes this problem. The Python code and error message is shown below. (Fig. 4-6)

 ![Fig.1](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/e/e8411b141420900a2814085a7cc8bfb2fd969642.jpeg)

 ![Fig.2](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/1/1a3ee1933bbbc09b56b644e08a9e9cb40c4b66d0.jpeg)

 ![Fig.3](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/b/b7e9fd096576699e59b12297ee5481e4baebf30e.jpeg)

 ![Fig.4](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/d/dcb6bfb5c88154c5c80731e011a0161d3107b824.jpeg)

 ![Fig.5](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/3/3c781c38d4c3d215003ab595cb843e4a92424e03.jpeg)

 ![Fig.6](https://us1.discourse-cdn.com/flex019/uploads/pynq1/original/2X/a/abe1a5b7f37c3ef486c52dd331b9a491af6ae662.jpeg)
