Closed afnan closed 5 years ago
Hi
This codebase is not related to the PANS library. You should direct PANS questions to the Decawave forum.
This stack supports a lwIP implementation which you can use for basic data communications.
Alternatively, if you are interested in augmenting ranging packets with custom messages, you can overload the dw1000_mac_interface->final_cb and modify the frame->payload[] with IMU data etc. (Note: these comments pertain to the refactor branch, this will be merged into the master shortly)
The final_cb is accessible through the dw1000_mac_get_interface API. The final_cb is in the interrupt context, so plan just populate the data and return.
static bool
my_final_cb(dw1000_dev_instance_t * inst, dw1000_mac_interface_t * cbs){
dw1000_rng_instance_t * rng = inst->rng;
twr_frame_t * frame = rng->frames[(rng->idx)%rng->nframes];
for (uint16_t i=0;i<sizeof(struct _twr_data_t);i++)
frame->payload[i]....
}
main(){
....
// Override default final callbacks
dw1000_mac_get_interface(inst, DW1000_RNG_DS_EXT)->final_cb = my_final_cb;
}
Thank you for detailed information. I will be working on AHRS. I have a suggestion perhaps your team can take it up. Instead of integrating MPU6500 and similar stuff and then using Mahony or Medwick (processor intensive) into your future hardware (from docs looks like you have planned for it), use EM7180 to do all the heavy lifting and read it through I2C. I found them highly reliable within 2 degrees. https://www.tindie.com/products/onehorse/ultimate-sensor-fusion-solution-lsm6dsm-lis2md/
Secondly, regarding point no 2 does this code refer to PANS library? The hardware module I would be using in DWM1001.
Hi Afnan, Thanks for the suggestion, we welcome any contributions. We are looking at going beyond AHRS and fusing UWB with IMU to tackle the NLOS problem. As you can see we have put in place the necessary hooks; now we need to find time to complete this work.
Hi, I have the following questions.