Combine Lock and Contact in single device

@asparling78 So I got back to this and tried to add the Verilock translator. It joined ok, but didn't find the driver and joined just as a "Device" so I changed over to the Verilock Translator driver and it doesn't appear to be working right. See debug logs below. To adapt the driver you pointed to I made 3 changes: the usual physicalgraph->hubitat, deleted the "simulator" section, deleted the "tiles" section (per App and driver porting to Hubitat).

When I try to run Configure I get the first error message about the pointer exception. When I try to run Refresh I get the other errors. (Line numbers are probably slightly off from your code due to differences in how I might have edited out the sections.)

Any ideas on what you did differently to make this work?

Thanks

Errors:
dev:1622020-05-09 04:21:38.661 pm errorjava.lang.IllegalArgumentException: deviceNetworkId is not specified. on line 72 (parse)

dev:1622020-05-09 04:21:38.637 pm debugChild not found for endpoint. Creating one now

dev:1622020-05-09 04:20:33.565 pm errorjava.lang.IllegalArgumentException: deviceNetworkId is not specified. on line 72 (parse)

dev:1622020-05-09 04:20:33.542 pm debugChild not found for endpoint. Creating one now

dev:1622020-05-09 04:18:44.640 pm errorjava.lang.IllegalArgumentException: deviceNetworkId is not specified. on line 72 (parse)

dev:1622020-05-09 04:18:44.616 pm debugChild not found for endpoint. Creating one now

dev:1622020-05-09 04:11:54.831 pm errorgroovy.lang.MissingMethodException: No signature of method: user_driver_erocm123_Verilock_Translator_394.refresh() is applicable for argument types: () values: [] Possible solutions: every(), parse(java.lang.String), every(groovy.lang.Closure), grep() (refresh)

dev:1622020-05-09 04:11:45.917 pm errorjava.lang.NullPointerException: Cannot invoke method toJson() on null object on line 132 (parse)