Hello, my problem turned out to be two issues, I believe
_MAIL_SMTP_PORT : I looked at the code and noticed all other variables in that section of codes started with MAIL_SMTP... No underscore at the start of variable name. So I removed the "_" and tried again.
This time, it showed the formatted error message saying the mail did not get sent.
I use GoDaddy server and thought this could be a host issue. I found the following info in Goddady’s page.
If you use the mail() function in your PHP, you do not need to specify an outgoing mail server. If you are using some other method besides mail() in your PHP code, use relay-hosting.secureserver.net for your relay server. This function is not supported on IIS 7
according to this article, php mail() should work, but somehow this simple php test code don’t send the mail.
<?php
mail("[email protected]",
"test message from godaddy",
"this is a test message, if you are reading this the email was sent successfully.");
?>
So I set the modx system setting to use SMTP with "relay-hosting.secureserver.net", no authentication, no username nor password, and voila, it worked. So now I have a form function on my site.
I am still not sure why the mail() does’nt work. Maybe my plan does not include it

but that’s another point. Good thing is, SPForm is working
PS. I refreshed Godaddy’s webformmailer installation and now mail() function is also working. Stange.