add comm interface