I updated my implementation of the laser widget now that the serial json widget publishes with onQueue and onComplete signal. I am getting more accurate reflection of whether the laser is on or off. However, since grbl still has a few lines in its buffer, it is not possible to determine for sure whether the laser is indeed on in real time.
Does tinyG has better support for DRO perhaps? Things like spindle speed and such would definitely make my switch even more urgent