The answer might depend on context or expected behaviour of the field, e.g return for new line, as mentioned by @hd.
I don't think you can call it convention.
I believe that button on interface is usually better since you remove the ambiguity of the bottom right keyboard button sometimes being return, sometimes being send. It's one less thing for user to think.
No one will expect a clear SEND button on the interface to add a new line, but some people might need to think if that "return" button is going to send the message, like it did when they were using Snapchat, or break the line, like when they were sending an email.
When in doubt, I always go with the solution with less potential for errors or misunderstanding :)