DWM1001 and ESP8266 Serial communication Establishment

Hey All,
I’m a newbie for this technology sorry for the noob question,
here im having a 4 Anchors and 2 tags though i tag i have configure it with raspberry pi with GPIO pins and i got the X,Y,Z data successfully.
Hence i tried the same with ESP8266 i can’t get that data hence the connection of DWM1001 to esp like Gnd-Gnd, Tx-Rx, Rx-Tx and i used to send a simple serial write and printed the resultant data its not comming any data hence i was able to see that tag in my DRTLS Application can i have advice on this or can i have any related links to communicate ESP8266 and DWM1001
Thanks & Regards,
Sri

Hi @sri
it is hard to guess what is wrong. Try to check this:

  • Verify that the DWM1001 is powered from 3.3V voltage
  • Check the communication speed
  • The DWM1001 are blank by default so you need to program them first.

Cheers
JK

can you pls guide me to any link’s referring this issue…
Regards,
Sri

Hi @sri
what issue?

Cheers JK

Hi @leapslabs,

My Questions are,
1)is it possible to communicate decawave Mdek1001 Development board to esp8266/esp 32
2)is there any standard code to communicate between these ?(preferrebly esp8266)
3)should we desolder jumper 13 to communicate serially through esp8266?
we are able to connect it to computer through microusb cable and access serial shell by pressing enter twice already .need to get the data through esp8266

Regards,
Sri

Hi @sri
have you checked my ideas? You didn’t replied if you have checked them.

Regarding your questions)
ad 1) Yes it is.
ad 2) I do not think so. You need to do this by yourself.
ad 3) I believe that it is not needed, but if you want to be sure then you should desolder J14 and J15 (these are TXD and RXD between segger and DWM1001)

Could you post here you schematics/connections?

Cheers
JK

Hi All,
After all the try it is done that the DWM1001 sensor can be successfully interfaced with Arduino Mega and ESP-32 For the position Data acquisition.
Though i tried the same with ESP-8266 can’t be communicated.
Connection details:
In Rpi header pins Rx was not connected from DWM1001 sensor so, we tried to transmit the shell commands from microcontroller to the sensor by connecting the microcontrollers RX to the J14 . and
microcontrollers Tx to the rpi Headers Rx and by connecting ground to ground francimala has a library to conenct with arduino mega and it also works for esp 32 same connections as stated above and unable to enter the shell mode through esp 8266
Final code:

char receivedChar;
boolean newData = false;
void setup() {
Serial.begin(115200);
Serial2.begin(115200);
Serial.println(“”);
Serial.println(“Serial communication started”);
Serial.print(“sent”);
Serial2.write(“\r”);
Serial2.write(“\r”);
delay(2000);
Serial2.write(“lec\r”);
}
void loop() {
recvOneChar();
showNewData();
Serial.println(Serial2.readStringUntil(‘\n’)); //show position in Serial Monitor
}

void recvOneChar() {
if (Serial2.available() > 0) {
receivedChar = Serial2.read();
newData = true;
}
}
void showNewData() {
if (newData == true) {
Serial.print("This just in … ");
Serial.println(receivedChar);
newData = false;
}
}
Thanks & Regards
Sri Haran S

1 Like

Hi @sri
the dev boards are delivered without header - so if you have there some problems with connection then I would recommend you to resolder the header.

I have no experience with ESP but in general it must work too.

I see one potential problem in your source code - the shell is designed a module - human interface and you should not use it as a module - computer interface. You should use the binary API here.

However as the shell is designed as human interface you need to add 10-20ms spaces between characters. For example when you want to send lec command you need to do it this way:

Serial2.write(“l”);
delay(20); // 20ms
Serial2.write(“e”);
delay(20); // 20ms
Serial2.write(“c”);
delay(20); // 20ms
Serial2.write(“\n”);

Cheers
JK

Hi All,
After all the try it is done that the DWM1001 sensor can be successfully interfaced with Arduino Mega and ESP-32 For the position Data acquisition.
Though i tried the same with ESP-8266 can’t be communicated.
Connection details:
In Rpi header pins Rx was not connected from DWM1001 sensor so, we tried to transmit the shell commands from microcontroller to the sensor by connecting the microcontrollers RX to the J14 . and
microcontrollers Tx to the rpi Headers Rx and by connecting ground to ground francimala has a library to conenct with arduino mega and it also works for esp 32 same connections as stated above and unable to enter the shell mode through esp 8266
Final code:

char receivedChar;
boolean newData = false;
void setup() {
Serial.begin(115200);
Serial2.begin(115200);
Serial.println(“”);
Serial.println(“Serial communication started”);
Serial.print(“sent”);
Serial2.write(“\r”);
Serial2.write(“\r”);
delay(2000);
Serial2.write(“lec\r”);
}
void loop() {
recvOneChar();
showNewData();
Serial.println(Serial2.readStringUntil(‘\n’)); //show position in Serial Monitor
}

void recvOneChar() {
if (Serial2.available() > 0) {
receivedChar = Serial2.read();
newData = true;
}
}
void showNewData() {
if (newData == true) {
Serial.print("This just in … ");
Serial.println(receivedChar);
newData = false;
}
}
Thanks & Regards
Sri Haran S

Hi @sri ,

May I know if you used 3.3 V as your power supply or used 5V? And according to your explanation, only RX pin and GND pin of RPI header need to be connected. Am I right?

I am trying to open shell terminal on DWM1001 using ESP32. But DWM TX and RX pins from RPI header are not sending anything.
Serial out from ESP32 are checked using serial monitor to make sure the commands are out.

Regards,
Htet