<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def hardware_version(self):
 """Return the embedded hardware version string for this tile. The hardware version is an up to 10 byte user readable string that is meant to encode any necessary information about the specific hardware that this tile is running on. For example, if you have multiple assembly variants of a given tile, you could encode that information here. Returns: str: The hardware version read from the tile. """

        res = self.rpc(0x00, 0x02, result_type=(0, True))

        # Result is a string but with zero appended to the end to make it a fixed 10 byte size
        binary_version = res['buffer']

        ver = ""

        for x in binary_version:
            if x != 0:
                ver += chr(x)

        return ver