I know it has a dwm1000 chip but im having a hell of a time with the pinouts to get it working with a esp32 wroom.
Protip: Photograph at oblique angles to minimize flash/light while enhancing printing/etching.
Did you buy it? No data sheet?
There seems to be quite a few different modules available that use that component and reasonably priced.
I couldn't see one with that FFC connector.
Why not just buy another one that comes with some information and see how you get on.
Otherwise you are going to have to do a lot more research, maybe tracing tracks through etc.
Could be some kind of u-blox NEO-M9N GNSS/GPS board.
Looks more advanced than the very common NEO-6M / M8N modules and possibly intended for UAV/robotics applications.
Sorry, I should have added additional details to first post (it was late and I was falling asleep).
No data sheet came with the board. Bought them (6) off of eBay, contacted Seller, he told me to seek out the manufacturer but outside of the DWM1k being Decawave, there are no traceable manufacturer marks on the two smaller chips on the daughterboard (I put the board under a scope, got the numbers/letters and extensively researched but found bupkis).
I've traced from the DWM1k pads to FFC, then went back and retraced from the FFC to the two smaller chips (one seems to be a IC, the other a voltage regulator) and those leads to the pads of DWM1k.
Better pics of all the chips are below.
Where do you source your DWM1k?
Thanks!
I don't.
But I make sure any modules I do buy are well supported before I buy them.
It pays, usually, to get modules or breakout boards from established businesses like Adafruit or Sparkfun. Some ebay sellers are helpful, some not.
It's the same with Arduino boards. Buying genuine boards supports the project as a whole.
Often you read here, my board doesn't work. Is it a clone? Yes.
You'll have to research the main chip and the supporting IC's.
Have you looked for application notes from the DW people?
These are often separate from data sheets.
It has NXP logo, likely PCA9539A gpio-expander.
Hi @zeitgeist !
Looks like the Ultra WIde Band Board on this page:
https://www.reddit.com/r/diyelectronics/comments/1syxw1u/need_help_sourcing_uwb1000_dev_boardpinout
DecaWave is now a part of Qorvo:
I got the following response from Gemini AI (so please be careful
)
--------------- Start of AI Answer ------------
The DWM1000 relies on a standard SPI bus interface along with specific control pins for communication.
1. Typical Pinout Mapping for the 20-Pin FPC Connection
While this specific carrier board is a custom design, these boards map the edge castellations of the Qorvo/Decawave DWM1000 module directly to the 20-pin flat flexible cable (FFC/FPC) connector. To interface this with a standard microcontroller (like an Arduino, ESP32, or Raspberry Pi), you will need to trace or map the pins to the following critical functions: [1, 2, 3, 4]
| Function Pin [3, 5] | Type | DWM1000 Pin Description |
|---|---|---|
| VDD3V3 | Power | 3.3V Power Supply input. Do not connect to 5V. |
| VSS / GND | Ground | Ground connection. |
| SPICLK | Input | SPI Clock signal from the host microcontroller. |
| SPIMISO | Output | SPI Master In Slave Out data to the host. |
| SPIMOSI | Input | SPI Master Out Slave In data from the host. |
| SPICS | Input | SPI Chip Select (Active Low). |
| IRQ | Output | Interrupt Request output. Signals the host processor when data arrives. |
| RSTn | Input/Output | Reset Pin (Active Low). Open-drain device reset line. |
2. Getting Started with Arduino Sample Code
To get this hardware up and running, you can utilize the community-standard arduino-dw1000 library by Thomas Trojer. It handles the low-level SPI registers automatically.
Wiring Reference Setup
Make sure you use a 3.3V logic microcontroller (or bidirectional logic level shifters if using a standard 5V Arduino Uno). [6]
#include <SPI.h>#include <DW1000.h>
// Define the SPI connection and handshake pins based on your breakout mappingconst uint8_t PIN_RST = 9; // Reset pinconst uint8_t PIN_CS = 10; // SPI Chip Select (SS)const uint8_t PIN_IRQ = 2; // Interrupt Request pin
void setup() {
Serial.begin(115200);
Serial.println(F("### DW1000-UWB Initialization ###"));
// Initialize configuration and callback handlers
DW1000.begin(PIN_IRQ, PIN_RST);
DW1000.select(PIN_CS);
Serial.println(F("DW1000 initialized successfully."));
// Load standard chip configurations
DW1000.newConfiguration();
DW1000.setDefaults();
DW1000.setDeviceAddress(1);
DW1000.setNetworkId(10);
DW1000.commitConfiguration();
Serial.println(F("Committed default configuration profile."));
}
void loop() {
// Your ranging or data transmission loop logic goes here
}
------------------- End of AI answer ----------
You may try to contact the person that asked for the pinout on reddit or further dig into the DecaWave/Qoro sources ...
As written above I'm not sure about the technical assistance of the AI but it helped to quickly gather information about the board just by an image search.
Good luck!
ec2021
BTW: The AI answer I posted may lack some information that you are interested in. Feel free to ask the AI yourself to get further assistance!
I was able to find this product that uses the same module:
https://uk.rs-online.com/web/p/communication-wireless-development-tools/2162643
This led to the following datasheet for the DWM1000 module:
https://docs.rs-online.com/b72b/A700000007461947.pdf
This includes the pinout and further information. I wasn't quite sure from the first post whether you may already have this information?
Since there is no branding on the board (which likely the seller would have been aware of), I am not sure how they can expect you to reasonably "seek out the manufacturer". With an unhelpful reply like that, one wonders whether the best thing would be to return for refund on the basis that they are unusable due to missing information which the seller is unwilling or unable to provide. Then buy a dev board that is documented. Alternatively if they were cheap enough to experiment with then salvage the modules and make you own carrier board or maybe reach out to the person in that Reddit post and ask for the gerbers for their board and order some PCBs..
I am that Reddit poster. :D Shows ya how long I've been chewing on this thing!
PCA datasheet helps you to step forward.
Yeah, I did find the data sheet of the dwm1000 module as you had provided. I might just rip the DWM1k from the board and go to a new carrier board.
The more I'm looking into this, after reading everyone's great advice. I'm thinking it is probably my supercheap ESP32's.
Time to wack the piggy bank I guess.
That makes asking much easier... ;-)
Did you consider to map the pins of the chip to the connector pins?
This wiki may be of assistance (you probably know it already ... ):
https://github.com/thotro/arduino-dw1000/wiki
Have fun and the necessary luck ...
ec2021
Yeah, I have several sheets with mappings from the FFC to the subchips to the DWM1k. Gets a bit confusing but I've triple checked and revised my work and still can't get solid output from test code. My ESP32's were dirt cheap from Alibaba so I think that is the primary issue. I'm looking at a couple from Mouser - ESP32-S3-DevKitC-1-N8R8 But probably overkill.
Assuming that you get this bargain working, what will you do with six of them?
I'm working on a warehouse size guardian-space for my Quest 3s. The work would have 4 anchors, one in each corner of the area and a Tag on the helmet of the player. Allowing them to move freely in a much larger area than what is currently possible with the mapping tool of the Quest 3s for the same result. I know they have Omnidirectional Treadmills available, but this would be MUCH cheaper and with some extra work you should be able to play with friends in the same area too.
After more research than should ever be needed. Ive found these boards are used in Filippetti Group's SOS and ManDown IIoT systems. The carrier board is proprietary and the odds of me using it as-is is practically null. Time to rip the dwm1k off and repurpose it!






