@sstuhlmann check your Chrome dev tools betwork tab to see what REST API requests for data points are actually issued.
If it is like you say you can stop the query running until you retrieve your device name by using a ng-if e.g.
<ma-point-query ng-if="$ctrl.devName">Alternatively do something like this, so that if devName is undefined it queries for the deviceName being null instead (which should return 0 results)
<ma-point-query query="{deviceName:$ctrl.devName || null}">Although what I suspect is actually happening is that the query is not exact, I think that type of query is actually a fuzzy query, it will search for deviceName LIKE %devName% in the SQL database.
Try this -
<ma-point-query query="{deviceName:$ctrl.devName, $exact: true}">