Any other way than modem.print ?

I have an MKR1300 (MKRWAN.h + CayenneLPP.h) to use with TTN, but i have to use CayenneLPP data model, so I have a string with my message coded like "01 67 01 10" that it is the real message I want to receive on TTN.

If I use modem.print(msg), the result payload is one bye per character (16 at the end) and that's no the message I want to send, just need exactly what the string has. ¿ any idea to do it ?

Thanks in advance.

You would have to supply your sketch for people to be able to see just what and how your are using the print statements.
Please use code tags if you do ( </> ) as it makes the sketch easy to read properly.

There are a lot of Ethernet examples in the various Ethernet libraries maybe take a look at how some of those work or even some IOT examples that abound on the web.

modem.write(b) sends one byte. However, you have to extract them from your string (are you sure you really have a string?).