echo do_shortcode just prints the shortcode name and not its content

I can’t comment yet – So I will do my best for providing an answer until i get enough rep –

 function add_my_shortcode(){
     $content = "Habba";
     return $content;
 }
 add_shortcode('yourShortcodeName', 'add_my_shortcode');

I have been doing it like this for a long time, and never had any problems – have you written this code in a file that executes early?
like functions.php, or have you put it in a template?
I can’t see anything else there could be wrong with your code?