I’ve been thinking about your distributed learning model via IR, and had a few questions:
- Blink Program Layout: What is the physical layout when doing the IR distributed reprogram?
Star pattern with central Blink as the program sender and the surrounding Blinks as receivers of the new program?
-
Blink Depth: Can they be more than 1 deep off of the program sender?? (e.g. a row of Blinks, or 2+ deep in star pattern?)
-
Data Validation: How are you ensuring the receiving blinks are receiving all of the correct data? And when is the validation performed? (per data packet, per bunch, at program end??)
-
Message Queue/Buffering: Is there a message queue (bufferign), or only last received (depth=1; overwrite)?
-
Transmission rate: (directly tied to (3) and (4)) - what kind of data transmission speeds are you reaching reliably?
-
IR Timeout: Given that Blinks are continuously broadcasting and an IR timeout is only when there is no neighbor (or neighbors off); how are you distinguishing valid repeated data from old stale data? E.g. if the receiving BlinkOS in a “read loop” sees 0x11, 0x22, 0x22, 0x22, 0x33 - how can you tell if the 2nd or 3rd 0x22 is a rebroadcast of previous (stale) data or is a purposeful send of the same data?
Thank you,
Ken