Comments (8)
Hello~
I come from the project of Thomas' project and work on this modules for a while, and there is a problem confused me for a long time.
Although I read most of Thomas' code, including DW1000Raing.cpp and DW1000.cpp. I don't really understand when will the interrupt happens.
When I source back to the attachInterupt() function, I know it happens when the IRQ pin changes but I don't know when the IRQ pin change. I guess it will be changed when it sent/receive a message, but I don't see any codes about changing that pin, is it depends on the inside circuit or I not found it?
Thanks for your reply!!!
from arduino-dw1000-ng.
from arduino-dw1000-ng.
Yeah it is an inside mechanism of the dw1000 itself, there is a register inside the chip that controls when to send an interrupt relative to the selected elements.(we add a struct and a method to select them)
…
On Wed, 10 Oct 2018, 18:32 Elon-Wang, @.***> wrote: Hello~ I come from the project of Thomas' project and work on this modules for a while, and there is a problem confused me for a long time. Although I read most of Thomas' code, including DW1000Raing.cpp and DW1000.cpp. I don't really understand when will the interrupt happens. When I source back to the attachInterupt() function, I know it happens when the IRQ pin changes but I don't know when the IRQ pin change. I guess it will be changed when it sent/receive a message, but I don't see any codes about changing that pin, is it depends on the inside circuit or I not found it? Thanks for your reply!!! — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#89 (comment)>, or mute the thread https://github.com/notifications/unsubscribe-auth/AWi_Nrr0fA7MA1igye45TxwhtCkmmt3kks5ujiEWgaJpZM4W8F7Z .
Thank you for your reply, that really helps me a lot!! I finally find someone who can answer my question.😊😊
After I set the antenna delay, the one to one ranging become precise however when I use three anchors and one tag to do the ranging, there are only one pair of ranging turn out to be reliable, while the other two are quite wrong. The anchor with right raging data is random. For example, if I have three anchors A B C, and turn them on, only A get the right ranging data. However, If you turn anchor A off, one of the rest anchor will work well, the other is still reading the wrong distance. The same phenomenon happens when you turn the second anchor off.
Then I turn them down and using the anchor which is works well to print out the timestamp of Poll/PollACK/Ranging , and calculate the reply1 round1, reply2 , round2. It's strange to see reply1 is bigger than round1 sometime, which is ridiculous. However, those ridiculous timestamps can calculate out the right distance using the formula (Tround1 * Tround2 - Treply1 * Treply2)/ (Tround1 + Tround2 + Treply1 +Treply2) .
Have you ever encounter with the same problem? Is this out of the non-calibration of crystal oscillator,if yes,how to do it? If you know the reason, please tell me how to solve it.
I'm very grateful!!!
from arduino-dw1000-ng.
from arduino-dw1000-ng.
So, you haven't try multiple anchors locate yet?
We can discuss later, lol
Time is very late in my time zone and I have lots of courses in tomorrow~
I'll open an issue soon and introduce more about my issue.
Anyway, thanks a lot for your help.
from arduino-dw1000-ng.
Yeah, we rewrote a lot of the thotro's driver, this is still a work in progress, we wanted to get rid of DW1000Ranging as a loop and instead to make it a library compliant with ISO/IEC-24730/62 to leave the user with more control over the action flow.
I was asking about how you did the 3 anchor range because thotro's library doesn't use frame filtering, so every anchor will be receiving the messages from the tag and probably overlapping when responding. When we finish making the examples using the ISO standard MAC format we will check if the frame filtering code needs to be adjusted. For the moment you could try to add a destination address inside the sent data and check at the receiver if it was for it and discard other anchor's frames.(the standard uses both source and destination addresses).
Feel free to ask any questions! Glad to help
from arduino-dw1000-ng.
I think that we could close this issue @an4cr0n
from arduino-dw1000-ng.
done
from arduino-dw1000-ng.
Related Issues (20)
- analogRead() for ADC1 conflict HOT 4
- Esp32 Wroom board HOT 2
- Examples Not Functioning as Expected or Crashing NodeMCU 1.0 (ESP8266) HOT 6
- Arduino Uno with DWS1000 v0.3 library anchor-tag problem HOT 2
- Anyone ported the library to vscode for use with ESP-IDF platform? HOT 2
- Increase NLOS range of DWM1000 HOT 8
- what about compatible with dwm3000 ? HOT 1
- Is it possible to setup the system with 4 active modules as anchor and 1 tag? HOT 3
- DW1000 shield for Arduino Nano (Nucleo-32) HOT 2
- Connecting Arduino Pro Mini with PC HOT 4
- Problems with BasicReceiver and BasicSender HOT 1
- No connection: Compatible with Board DWS1000 (Arduino Uno)? HOT 4
- Two-way ranging HOT 2
- multiable tags on one device ? HOT 2
- RTLS examples not working HOT 1
- Initiate & Respond to Range Requests
- two way ranging didnt works HOT 1
- Distance measurement between several TAGs and several ANCHORs HOT 1
- Get relative range between two tags
- Connecting time between tag and anchor
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arduino-dw1000-ng.