WOOHOO I sent a file through a virtual serial cable !

In this quick demo I do the following

Start GPS, although its really about the Serial Service - the intent is to be able to read data from KMC's "real" GPS without having to hook up the sensor here.  KMC can just run the GPS and save the rx file.  Then he can send me this file and I can "simulate" his sensor.

In the video I'm pretending the Flight.gpx is a valid gps data - I guess it might be (I found it on the internet) - but it's not binary data from a sensor - which is what I'm expecting from kmc.

The process is :

  • Create a virtuual UART.  With that one button, it creates another Serial service, a virtual null modem cable.  Adds 2 new ports to the system. Crossconnects the virtual null modem cable with the 2 ports. Connects the Serial service with one port and the UART with the other.  So the UART becomes the virtual GPS
  • Next step is to send data from the GPS/Virtual UART to the Serial service which comes with the GPS service.  I do this just by sending a file (Flight.gpx) 
  • The data flies across the virtual wire - so quickly the GUI can not keep up (virtual wires are wicked quick - quicker than 1.5Mbs even :) ..  the gui is slow - but thats ok
  • So theoretically I could troubleshoot the GPS service from a file emailed from KMC

WoooHoo !  Whats next ?  Virtual Arduinos & Servos & InMoovs :D

Gareth

9 years 4 months ago

So this would give the possibility to test data streams without the Hardware..... then this would be cool for debugging and development.

Could be used as a pass though serial service where you can sniff off and display data in transit ?.

(or do I recall another service already does that)...

Yeah .. this (although it still needs work) - opens up a world of possibilities.

  • Virtual devices - ability to develop new and existing services without having to rely on "real" hardware
  • Robot "mind state" - most of the sensors a robot have operate as serial devices, so if we can simulate those devices we can develop a better "mind state" - This is the 3d environment saturated with sensor data which the robot sees as its reality.
  • Switchable serial interfaces - ability to design on virtual systems and switch to "real" systems without any additional development.
  • Proxy "real" data and provide more accurate "virtual" devices - we can now capture the messy data of the real environment and play it in the virtual world - to make our robots react more appropriately to real situations

It makes the robot a prisoner in the Allegory of a Cave .. but its a start ...

I tested the example ... and it worked within MRL.....YaY

...However I am puzzled how I can port it in/out of  Blender ...... as its not appearing on my windows device map.

... any ideas welcome......

Ya, mrl virtual serial ports are only visible to mrl ...  (Linux is a little bit of a pita, and windows is big time pita making virtual serial ports) ..  mrl its easy, but only usable inside mrl..

Sooooo,  we got to cross process boundaries, and TCP/Ip should just do fine that way..