How do I pass a variable to a smarty template?
I found a way to achieve the goal, although I'm sure there are other ways and possibly a more correct way. 

In the module, assuming the value of $var is already set, in the module I have:

 $form-&gt;addElement('text','my_var', $var );

  // dynamically insert a template block in the page
   $templatePath = realpath(dirname(__FILE__)."/templates");
    CRM_Core_Region::instance('page-body')-&gt;add(array(
      'template' =&gt; "{$templatePath}/testfield.tpl"


Then the template file is this.  My data appears under 'label' instead of 'value'.  It does work though.  

{* template block that contains the new field *}
&lt;div id="testfield-tr"&gt;
  &lt;div&gt;The value of var is: {$form.my_var.label}&lt;/div&gt;
&lt;/div&gt;
{* reposition the above block after #someOtherBlock *}
&lt;script type="text/javascript"&gt;
  cj('#testfield-tr').insertAfter('#intro_text')
&lt;/script&gt;