Can't open serial device on MAC

I have a problem with TTY device on MAC. I created a script which talks to Arduino and works well on Linux. Problem I'm having with MAC is I can't "fopen" the device. For example, if I do

sudo echo "foo" >> /dev/tty.usbmodem1431

It hangs forever blocking the port. It works well from Arduino's Serial Monitor so theoretically I should be able talking to it.

sudo echo "foo" >> /dev/tty.usbmodem1431

How do you "append" to the end of a serial port? Try > instead.

Well spotted but the real problem is fopen. Command line example was only to isolate the problem. ">" has the same issue as ">>" it waits forever. I never had this problem on Linux so I presume it's Mac related issue.

I still don't know why I can't open TTY but I found a working solution. I have to wrtie to "/dev/cu.usbmodem1431" instead of "/dev/tty.usbmodem1431"

I have always had to use cu as well, tty has never worked for me