User`s guide
242  Appendix D – i.LON SmartServer Software License Agreement 
SmartServer FPM FAQs 
1.  What are Freely Programmable Modules (FPMs)? 
FPMs are custom C/C++ applications or drivers (RS-232 or RS-485) that allow you to customize 
the SmartServer’s embedded software. You can use FPMs to perform tasks not provided by the 
SmartServer’s built-in applications. FPMs can have both network variables (NVs) and 
Configuration Properties (CPs). 
•  An FPM Application reads and writes values to the data points declared in it. An FPM 
application executes code upon data point updates, reads data point properties, and controls 
timers and executes code upon their expiration. For example, you can create an FPM 
application that takes two input NVs, adds their values when either one changes, and then 
writes the value to an output NV (in1 + in2 = out). 
•  An FPM Driver provides values for the data points declared in it by reading and writing to 
the RS-232 and RS-485 ports on the SmartServer. FPM drivers let you create gateways for 
non-native devices. 
2.  What do I need to create FPMs? 
You need to purchase the i.LON SmartServer 2.0 Programming Tools DVD (Echelon Model 
72111-409). The i.LON SmartServer 2.0 Programming Tools includes a pre-configured Eclipse 
Development Kit that you can use to write, build, and upload FPMs to your SmartServer. 
Only FPM developers need this tool. That is, you don’t need this tool to use an FPM developed 
by someone else. 
3.  How do I deploy FPMs on my SmartServer? 
•  Your SmartServer must have the following files to deploy an FPM application or driver: 
o  FPM Programming Activation Key. Each SmartServer needs its own unique license 
file, so don’t copy this file to all SmartServers.  If your SmartServer does not have a 
Programming Activation Key, you can order one (Echelon Model 72161) at 
www.echelon.com/ilon/activate 
o  Optional: FPM Application License. An optional license created by the FPM 
developer. 
<i.LON root directory>/config/license 
o  User-defined resource file set (*.ENU, *.fmt, *.fpt, *.ls, and *.typ files), which 
defines the functional profile template used by your FPM application or driver (that 
is, the FPM NVs and CPs). 
<i.LON root directory>/lonworks/types/user/<YourCompany> 
o  FPM executable module (.app or *.drv extension). 
<i.LON root directory>/modules/user/<YourCompany> 
o  Optional: FPM web pages (*.htm) 
<i.LON root directory>/web/config/Fb 
   Optional: NLS local language files (e.g., German) for the FPM web page. 
<i.LON root directory>/web/config/Fb/nls 
o  Optional: External device interface (XIF) file is required if you are deploying an 
FPM application that has a static interface (uses static functional blocks) 
<i.LON root directory>/lonworks/import/<YourCompany> 










