There are different types of data modes defined in the ETSI docs. Each type has to be handled in different ways. An the payload of the messages differs between Motorola, Hytera, ...
Each message consists of multiple data frames. And there are different types of transfer: unconfirmed, confirmed, short UDP. Confirmed data transfer require a response with in a specific time frame. Data frames and messages contain different checksums to detect transmission errors and to allow retransmission of complete messages or single data frames.
A lot if this is time critical.
The HR-C6000 seems to be able to do a lot of this stuff by itself, but nobody knows how to do that. There is no documentation available.
The code regarding the HR-C6000 has to be rewritten in parts, as for now it mostly handles voice frames.
And you need a complete GUI to display received messages and to compose new messages.
I'm not sure if there is enough flash memory available to implement all this.
And even if all that works there are more problems: Sending an SMS with my Hytera using the local Motorola reapeater does not reliable work. Brandmeister is doing some work to convert between different types of radios. So if it works with one repeater it might not work with a different repeater or hotspot.
It might be a lot easier to implement data transfers for hotspot mode only. Then you only need to send and receive data frames and don't have to handle complete messages. But it still needs a lot of work.
I was already able to receive location messages and send them over the USB port. So in theory SMS would be possible to implement.
Unfortunately I have not enough spare time to do any further work on this topic. But if anybody wants to start working on this send me a message.