How can I use both modules to transmit information UWB(RAK13801) and ETHERNET(RAK13800)?

I am using rak modules UWB(RAK13801)(RAK13801 WisBlock UWB Module Datasheet | RAKwireless Documentation Center) and ETHERNET(RAK13800)(RAK13800 WisBlock Ethernet Module Datasheet | RAKwireless Documentation Center), both of them are in a Base Board Dual I/O core RAK19001(RAK19001 | Dual IO Base Board | Multi Slot WisBlock Base Board – RAKwireless Store). When I try working with any of them separately, it works fine, but when they are together it doesn’t work. Is there anyone knows how to use two modules in rak Base Board Dual I/O core?. I read the documentation and I suppose it doesnt work because the control pin (SS) is the same to select the Ethernet and UWB. How can I fix that?

Using the docs, I have tried switching the SS pins when sending either UWB or Ethernet. But I only manage to get one to work at any given time.

Hi @AntonioDominguez ,

When you say manage to get one to work does it mean separate code or in a single code? Since they use SPI bus, take note that it can only communicate to the Core one at a time depending on which is selected via slave select pin.

Hi @carlrowan, what I want is to get the distance (between anchor and tag) using UWB and then I need to transmit the data using the Ethernet(both of them are in the base board dual I/O core). I understood that I can only work with one of them at the time, but is It posible to do what I want? Thanks for your time.

Yes @AntonioDominguez ,

You should be able to do it. I do not have example or tutorials for that exact application though (UWB + Ethernet).

However, there are many reference you can find like this demo for UWB.

There are many configurations possible with UWB. Like on the video, since the anchors are at same level, two anchors are enough.

For Ethernet, there many resources online as well like if you will setup your own small webserver or will send data.

I appreciated, but I am using all your modules (UWB, Ethernet, RAK4631 (core) and Dual I/O base boar) and I need the way to use both UWB - Ethernet.What I found is the I/Os slots are using the same SPI protocol and I am only able to use one of them at the time. Please help me with that.

I had a quick look and it seems to be more complicated that I thought. Aside on the SS pins, some critical IOs are used by both modules.

We can still make it useable with changes on the UWB module.

SPI_CS going to IO1
WAKEUP going to IO4
IRQ going to SDA
RSET going to SCL

Here’s the illustration. Doing this, will remove all pin conflicts.


As for the software side, we can only give limited support. However the modules on WisBlock are the common ones with available open-source libraries. For RAK UWB module, you can use this - GitHub - RAKWireless/RAK13801_UWB: Arduino library for the RAK13801 UWB module based on the Decawave DWM1000

Thanks a lot @carlrowan It was usefully to me. Now, I was wondering about what is the maximum transmission power of DW1000 that I can use on the code?

This is what I get from Qorvo when it comes to max power.

You can use setTXPower of the library to change this.

Also if range is your concern, there are great applications note for that: