16/04/2008 Release Notes For FwHw v3r5: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r5 (or above) - FwCcpc v2r18 (or above) - FwDIM v15r7 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - the return code of fwHw_getApplyRecipe() was wrong if the recipe contained only local PVSS registers. Fixed. - fwHw_getApplyRecipe() returned -1 if the compare failed, like for fwConfigurationDB errors, now it returns -2 for comparison errors. - The interpretation of the recipe names with '|' (or default recipes) did not work properly if no configurator object was present. Fixed. 27/02/2008 Release Notes For FwHw v3r4: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r3 (or above) - FwCcpc v2r15 (or above) - FwDIM v15r4 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - For Ccpc, now adds one PVSS00dim per 10 TELL1s, instead of a single one. - While for Specs there is one PVSS00dim per board type. 18/02/2008 Release Notes For FwHw v3r3: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r3 (or above) - FwCcpc v2r15 (or above) - FwDIM v15r4 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - Now accepts recipe names with subModes "|" and "DEFAULT" recipes. 29/01/2008 Release Notes For FwHw v3r2: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r2 (or above) - FwCcpc v2r14 (or above) - FwDIM v15r4 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - Subscription didn't work for Specs MasterIds below 10. Was using, for example 8 instead of 08. Fixed. - Subscription also didn't work for CreditCard PC type hardware. Fixed. 28/01/2008 Release Notes For FwHw v3r1: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r1 (or above) - FwCcpc v2r14 (or above) - FwDIM v15r4 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - Some bugs were fixed: - A variable was not declared in fwHw_subscribeService - No error was reported if the Master port was not found. 20/01/2008 Release Notes For FwHw v3r0: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v3r0 (or above) - FwCcpc v2r13 (or above) - FwDIM v15r4 (or above) Needs: - fwConfigurationDB-3.3.5 Bug Fixes / Improvements: - New functions: fwHw_subscribeType(hwType) fwHw_unsubscribeType(hwType) Allow to (un)subscribe all registers of all boards of a certain type. Should be used when (un)subscribing to several HWs - New functions: fwHw_convertStringtoByte() fwHw_convertByteToString() - When using fwSpecsWrite() for an I2C register a file name can be writen instead of the data, by giving as data for that register: fwHw_convertStringToByte("file:mydatafile.txt"); The SpecsServer will open the file and write the contents. Note: the file should be on a disk accessible to the SpecsServer. - In general: optimized the re/subscription of services and the apply of recipes. ---------------------------------------------------------------------------------- Previous versions: 22/11/2007 Release Notes For FwHw v2r4: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r11 (or above) - FwCcpc v2r13 (or above) - FwDIM v15r3 (or above) Needs: - fwConfigurationDB-3.3.3 Bug Fixes / Improvements: - Optimized the subscription and unSubscription of HW devices - Fixed the automatic reconnection (when fwSpecsScript starts while PVSS00dim has not yet finished connecting) 31/10/2007 Release Notes For FwHw v2r3: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r11 (or above) - FwCcpc v2r13 (or above) - FwDIM v15r2 (or above) Needs: - fwConfigurationDB-3.3.3 Bug Fixes / Improvements: - bugfix for use in distributed systems (fwHw_getHwRecipeTypeInfo) 19/10/2007 Release Notes For FwHw v2r2: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r11 (or above) - FwCcpc v2r13 (or above) - FwDIM v15r2 (or above) Needs: - fwConfigurationDB-3.3.3 Bug Fixes / Improvements: - fwHw_connectServerState now works also across distributed systems - fwHw_saveRecipe and probably other recipe functions had a bug related to the hw name, for example recipe for board1 would overwrite board1x. Fixed. - Corrected the documentation for recipe function return codes. - Fixed a bug in fwHw_getRecipe for partial devices (example "hw.part") - created a new optional parameter in fwHw_saverecipe - created a new function fwHw_saveRecipeMulti - Added a fast applyRecipe function for TELL1s - If using fwConfigurationDB v3.3.3 non-printable characters and 0x7c ('|') can now be used in recipes with no problem, including export via the ascii manager. 25/09/2007 Release Notes For FwHw v2r1: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r10 (or above) - FwCcpc v2r11 (or above) - FwDIM v15r1 (or above) Needs: - fwConfigurationDB-3.3.2 Bug Fixes / Improvements: - Changed the DCU channelNumber input parameter from decimal to hex in order to accomodate for the latest changes in fwSpecs: - which includes a new option for DCU operations: Now the first 4 bits of the DCU channel can be used to specify the DCU mode (HIR or LIR) as follows: - 0x2 means channel 2, no change to mode - 0x12 means channel 2, LIR mode - 0x22 means channel 2, HIR mode This feature works for the internal DCU as well as for external DCUs 29/08/2007 Release Notes For FwHw v2r0: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r9 (or above) - FwCcpc v2r10 (or above) - FwDIM v15r1 (or above) Needs: - fwConfigurationDB-3.3.1 Bug Fixes / Improvements: - Now several recipe functions and a few new functions work also across distributed systems, so they can be used in the FSM User panels in particular for DUs using the parameter $2. 26/07/2007 Release Notes For FwHw v1r18: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r9 (or above) - FwCcpc v2r10 (or above) - FwDIM v15r1 (or above) Bug Fixes / Improvements: - Optimized the function fwHw_getApplyRecipe(). This function should always be used instead of fwHw_getRecipe()/fwHw_applyRecipe(). - created function fwHw_getApplyRecipeStatus() to return the individual register statuses after getApplyRecipe() - The (get)ApplyRecipe() functions with compare = 0, will not do, by default, a fwXxx_writeRead(), they do only a write. The old writeRead behaviour can be still used with compare = -1. - For the CCPC a (get)ApplyRecipe with compare = 1, will issue a compare on the server - For the Specs (get)ApplyRecipe with compare = 1 will do a writeRead and compare in PVSS 27/06/2007 Release Notes For FwHw v1r17: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r8 (or above) - FwCcpc v2r9 (or above) - FwDIM v15r1 (or above) Bug Fixes / Improvements: - Fixed finally a problem related to the absence of the defaultSettingsDP, for example when hw is imported (ascii manager) from another project. Could not create recipe types for example. Now this dp is created whenever it is needed. 15/06/2007 Release Notes For FwHw v1r16: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r8 (or above) - FwCcpc v2r9 (or above) - FwDIM v15r1 (or above) Bug Fixes / Improvements: - added an optional "compare" parameter in fwHw_applyRecipe() By default there is no camparison between the written and the read-back values. - Subscription should now work better (PVSS00dim should take less CPU) - Created some new function to use when building an FSM Device Unit: - fwHw_getServerState(string domain, string device) Returns wether the SpecsServer/CCpcServer responsible for this device is running or not. - fwHw_connectServerState(string domain, string device) Sets the DU state to UNKNOWN and then back to NOT_READY when the SpecsServer/CCpcServer responsible for this device stops/restarts. - fwHw_makeRecipeName(string domain, string device) Prepares the standard recipe name based on RUN_TYPE and the command received. 18/05/2007 Release Notes For FwHw v1r15: Available for: - PVSS 3.6 (only) Works best with: - FwSpecs v2r5 (or above) - FwCcpc v2r7 (or above) - FwDIM v14r22 (or above) Bug Fixes / Improvements: - When updating recipe contents, the recipe type got lost - fixed. - Fixed a but in setSpecific settings - created a new function: fwHw_getApplyRecipe(), which does the same as fwHw_getRecipe+ fwHw_applyRecipe, and also if an extra parameter - "domain" is given it will use the recipes created by the "FSM Configurator". - In PVSS 3.6 writing data from the panels was not working correctly - fixed. 26/04/2007 Release Notes For FwHw v1r14: Available for: - PVSS 3.0 and above Works best with: - FwSpecs v2r5 (or above) - FwCcpc v2r7 (or above) - FwDIM v14r21 (or above) Bug Fixes / Improvements: - Reverted back to old HwRecipe.pnl - Fixed some bugs in the handling of the Configuration DB error codes. - Fixed a bug in fwHw_remove, if a register had never been subscribed. 19/03/2007 Release Notes For FwHw v1r13: Available for: - PVSS 3.0 and above Works best with: - FwSpecs v2r5 (or above) - FwCcpc v2r7 (or above) - FwDIM v14r21 (or above) Bug Fixes / Improvements: - changes in HwRecipe.pnl to show mask for recipes - new register type included 'UserSpecific' 31/01/2007 Release Notes For FwHw v1r12: Available for: - PVSS 3.0 and above Works best with: - FwSpecs v2r5 (or above) - FwCcpc v2r7 (or above) - FwDIM v14r21 (or above) Bug Fixes / Improvements: - Doesn't need the changes of version v1r11 anymore, in particular no need to use #uses "fwHw.ctl" - Fixed a bug in "fwHw_applyDefaultSettings()" common setting of inserted Hw where sometimes not applied. - Modified fwHw_remove() to include fwHw_unsubscribe(), which it should have always done. 21/12/2006 Release Notes For FwHw v1r11: Available for: - PVSS 3.0 and above Works best with: - FwSpecs v2r4 (or above) - FwCcpc v2r6 (or above) - FwDIM v14r19 (or above) Bug Fixes / Improvements: - Due to changes in the loading of libraries in FwCcpc2.6 FwHw when being installed now creates a dummy fwccpc.ctl file (if fwCcpc not installed). This is to avoid error messages. - Now the fwHw libraries are only downloaded by the managers that need them. Note: The users have now to include the library themselves in any panel or control script that uses it by typing: #uses "fwHw.ctl" in the "general" event of the panel or at the beginning of the ctrl script. 06/12/2006 Release Notes For FwHw v1r10: Available only for: - PVSS 3.0 and above Works best with: - FwSpecs v2r3 (or above) - FwCcpc v2r5 (or above) - FwDIM v14r15 (or above) Bug Fixes / Improvements: - Changing Master Speed didn't work properly for HW types that contained I2C devices and non-I2c devices - fixed. - Recipes: - Changes in the Recipe Type were not correctly taken into account when re-saving a recipe, Fixed. - When dealing with recipes in a HW part (ex. board1.mezzanine) all actions like: saving, deleting, applying will only affect the registers belonging to that HW part. 10/10/2006 Release Notes For FwHw v1r9: Available only for: - PVSS 3.0 and above Works best with: - FwSpecs v2r2 (or above) - FwCcpc v2r5 (or above) - FwDIM v14r15 (or above) Bug Fixes / Improvements: - Changing the SPECS master Port Speed (if using the SPECS) - The SPECS Master port speed can now be given as a "Common Setting" for any hardware device - This means that the selected speed will be applied for any operations on that device - If no speed is given the Max speed (1024 KHz) will be used: - Possibilities are: 0 = 1024, 1 = 512, 2 = 256, 3 = 128, 4 = 64, 5 = 32, 6 = 16 - Two new I2C modes (for the SPECS) were added: 5 = "CombinedFifo (Beetle Shift Registers)" For writing/reading (in particular reading) Beetle shift registers 6 = "CombinedNoAutoInc (Delay25)" For writing/reading all Delay25 registers in one go - Recipies - The function fwHw_getRecipe() which can be used in conjunction with fwHw_applyRecipe() can now accept a "hw" parameter that is not a dp but a dp folder. Example: Instead of calling fwHw_getRecipe("myBoard",...) one can now do: fwHw_getRecipe("myBoard.part1",...) and the call fwHw_applyRecipe() - The function fwHw_deleteRecipe() was added - Also in the FwHw "Recipe" panel there is now a button to remove recipies. - In the FwHw "Recipe" panel, when changing data values (don't forget to press return) the data is no longer written to the hardware, it is just saved locally This allows creating and storing recipes when the HW is not connected. - The "clone" button was very slow -> improoved it. - The "massive" button did not work for "local registers", like Float -> fixed. 31/08/2006 Release Notes For FwHw v1r8: Available only for: - PVSS 3.0 and above Bug Fixes / Improvements: - Implemented a new local register type: DynString - The I2C Monitoring didn't work properly for the SPECS, since the addiction of I2C modes - fixed. - The functions fwSpecs_read and fwSpecs_writeRead didn't always return the correct values (They didn't wait until all data was received from the server) - fixed. - Fixed several bugs related to registers declared with no settings or with non-existing MasterIDs - PVSS00dim crashed when Unsubscribing services - fixed in FwDIM_v14r14 25/08/2006 Release Notes For FwHw v1r7: Available only for: - PVSS 3.0 and above Bug Fixes / Improvements: - Implemented I2C sub-addressing modes: - 0: I2C "combined" mode for most I2C standard chips (Beetle, for example) - 1: I2C "separated" mode for chips with a pointer register (TTcRx for example) - 2: I2C "combined1" mode for the Calorimeter chips - 3: I2C "separated1" with pointer register but no auto-increment (GOL) - All modes available from fwSpecs and fwHw tools - The Hw tool now accepts a Multiplexer before the DCU, in order to use this feature: 1 - When creating HW Types: declare each of your MUX/DCU channels as a register of type DCUChannel 2 - When giving "Specific Settings" to the DCUChannel register, you have to fill in the following settings: DCU/MUX Address (hex) Channel Register (hex) Refresh rate (seconds) Data change (0 or 1) They can be used as follows: - DCU/MUX Address (hex) = TTAAAA where: TT = one byte for Multiplexer access Type 0x01 = I2C 0x02 = JTAG 0x03 = PBUS (parallel bus) 0x04 = REG (mezzanne register) AAAA = two bytes for address (PBUS address or Mezannine Register address, for example) DCU/MUX Address (hex) = 0 means no multiplexer (The DCU doesn't need an address anymore) - Channel = The mezzanine DCU channel to be used: 0 - 7 (for IA0 to IA7) - Register (hex) = Data to write to Mux The data to be written to MUX address (AAAA) in order to address your Channel (a mask can also be given). - Refresh rate and Data change can be used as usual. 3 - After declaring all your channels like this, you can use: - The Hw panel "View" button to perform the combined operation and get the DCU values - the function: fwSpecs_read(...) to read one or several channels in one go. The data returned is actually a dyn_dyn_float (although declared as dyn_dyn_anytype) which contains two values per register read (the DCU count and the converted floating point value). 22/08/2006 Release Notes For FwHw v1r6: Available only for: - PVSS 3.0 and above Bug Fixes / Improvements: - Implemented a new DCUChannel register type (for the SPECS DCU) - Allows reading and "monitoring" the DCU channels - Now the user can also declare local registers (only in PVSS): of types: Float, Int, STring, DynFloat and DynInt These registers are not sent to the HW (Specs or Ccpc) but they can be saved in the Configuration DB (in the recipes) 19/07/2006 Release Notes For FwHw v1r5: Available only for: - PVSS 3.0 and above Bug Fixes / Improvements: - Allowed the "view" button to show complete boards (with all components) - Added two conversion functions: - fwHw_convertWordsToBytes() - fwHw_convertBytesToWords() Very usefull when using the fwSpecs/fwCcpc read/write functions to convert dyn_char arrays (bytes) to and from integer or short arrays. - Implemented the interface to the Configuration DB (Cache only at the moment): - The Hardware Type panel (tab) allows to define "Recipe Types" (containing the list of elements to be stored in the Conf. DB) - The Hardware panel (tab)/ view button allows to define, save and retrieve "recipes" - All functionality is available in the fwHw library as "Recipe" functions.