Skip to content
This repository was archived by the owner on Nov 9, 2023. It is now read-only.
This repository was archived by the owner on Nov 9, 2023. It is now read-only.

multiable tags on one device ? #212

Open
@fanno

Description

@fanno

Hello
I am looking to create a arduino with 3 tags as ilustrated below.

i want it to be "self" calibrating using A1 as x=0 y=0 and i want to leasure distance A1A2 and distance A1 A3 and distance A2A3 Calculate the triangle and create X axis as A1A3 and and create a cartition system automatic from that.

A1xxxxxxxxxxxA2
x
x
x
x
A3

once "calibrated A1-A3 i would be able to add a Tag, and gets it's X/Y positions from that.

However looking at the framework i do not see how this could work with the current source without major rework.
following problems that i have "sporret" may be more:

  • "ss" is overwritten (no wat to have more than one at a time)
  • Interupt is the same for all and curently no way to determin who the interupt comes from.
    Could make different static classes to be called so you that could determin where it comes from.

only way to make it work that i see is to make dw1000 a none "static" so you could create a DW1000 per device. that would prevent the SS problem. But it dont fix the interupt problem. would have to do something like:

insted of calling "interruptServiceRoutine"

you would call. interruptServiceRoutine1 for IRQ 1 interruptServiceRoutine2 for IRQ 2

then
static uint8_t activeinterupt =0

static DW1000 devices[maxpins]; ???? or something like it. tho it could become a memory problem on smaller devices.

void interruptServiceRoutine1 () {
activeinterupt = 1 < static
interruptServiceRoutine()
activeinterupt = 0
}

void interruptServiceRoutine1 () {
// use the activeinterupt to point to the relevant info needed to know what callbacks ect to reply to. and what SS pin to use ect
devices[activeinterupt]........
}

DW1000NgRanging would propearly also have to be none static

I am fairly new to arduino and c++ so there are good changes i have missed something.

(NOTE: i do not ahve my dw1000 emiters curently so i am curently waiting for that. but wanted to start making the base. of the system)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions