implement hws init