There's been several updates to the 0.12 branch (still master) and I wanted
to send out an update. First, because of the dynamic nature of the dbus
objects, standard tools like dbus-send would no longer work. First a
subscription had to be made by calling org.automotive.manager.FindObject().
To ease testing and development, there are now some useful tools that
produce the same functionality as dbus-send:
Gets the value for an object(s).
Sets a value for a property on an object
Subscribes to object changes
Get logged data for an object
Right now these tools are pretty rough python code (I'm no python expert).
In the future, I'd like to combine these tools into one tool similar to
the pattern in connmanctl, bluetoothctl, etc.
Second big update is the addition of some pretty cool plugins. Namely the
CAN generator plugin and CAN simulator plugin. Both of these plugins use a
real or virtual CAN port to communicate data into AMB. The generator
plugin listens on a websocket or for "SimCommand" property exposed on DBus
for json commands. The plugin then writes to a CAN device which is read by
the simulator plugin and propagated through AMB. Because the plugin
listens on a websocket, html5 apps can be written to bascially control the
simulation. I've also written a simple python tool so that simulation data
could be set using the command line:
Sets an AMB property from the command line.
There will still be a number of features added to 0.12 before it's branched
and stabilized. But as of now it's pretty stable.