I'm trying to set up a seemingly simple project. It's an RFID table where users can place different tiles. Thankfully only two tiles will physically fit in the detection area. We want certain videos to play with specified combinations of tags in the detection area.
So far, that means-
- a 'home' state with looping attract video
- 13 different serial input commands (they're actually RFID tags on from a Nexmosphere RFID reader)
- 9 different possible videos will play with specified combinations of RFID tags, ideally in either order (tag 009 then 010 will work the same as 010 then 009)
- Ideally, 'invalid' combinations will display a 10th state (i.e. "please try a different combination", but this isn't strictly necessary
I'm wondering what the 'best' way of doing this would be. The nexmosphere XR controller reports back both place / remove serial events so I am able to set actions based on those.
Obviously I can program each of the individual 13 tags to go to 13 separate states identical to the home screen and wait for the 2nd tag (and from there, 13 MORE possible combinations for a grand total of 169 possible outcomes). But that does not seem ideal, because each one of those outcomes ALSO needs to be able to respond to quite a few different possibilities, e.g. someone places tag 008 then 010 -> sees incorrect combination, removes 008 and replaces 009 -> correct video plays.
I hope I've explained this adequately. I am currently trying to make things work with conditional targets and user variables -> i.e. setting a variable for the 2-tag "correct" combinations based off the state of the individual tag variables: tag 009 sets TILE1=G and tag 010 TILE2=G... and a conditional target at media end of the home screen 'loop' when $$TILE1$$$$TILE2$$ = GG