in reply to backticks with system()

my $x10_device = .$event->house_code().$event->unit_code().$event->func().;

I don't think this is your real code. As it is, it produces nothing but a syntax error.  Do you maybe have double quotes around the right hand side of the assignment, i.e.

".$event->house_code().$event->unit_code().$event->func()."

That would produce the string you're seeing, because the $event object would be interpolated/stringified instead of having its methods called...

This has nothing to do with system() or bash.  Just get rid of the superfluous dots:

my $x10_device = $event->house_code().$event->unit_code().$event->func +();