background image

Fidelix FX-RP multiDISPLAY  

Programming manual  

page 15 of 38  

With a multi24 module and a PC 

Using the multi24 programming tool, the same “.dat-xxx” files can be selected in the “Display graphics” section. 

The program will then ask the Modbus address of the display and the multi24 will be used as pass-through 

handler. 

 

With a µSD memory card 

It is 

possible  to  update  the  internal  memory  from  a  μSD

-card. During the power up sequence, the FX-RP 

multiDISPLAY will check if a “MULTI-DISP.dat-

xxxx” file is found on the μSD

-card and if found the file is copied 

into the internal memory. After that, 

the μSD

-card can be removed, and the display restarted (power off and 

back on). From then on, the internally stored pages are used. The advantage over using the graphics from the 

µSD card is the obvious lower number of reads from the µSD card, but mainly the speed.  
Make sure to verify if your FX-RP multiDISPLAY is of the first generation or the second, as the available memory 

is tripled in the V2 displays. In the converter, you can tick the “Large Memory (STM32F405)” tick box when you 

have a V2 display so the converter will allow you to convert larger projects. 

 

Using g

raphics from a μSD

-Card 

During the development stage of graphics or when your project doesn’t fit the internal memory, you can use a 

μSD

-card to store graphics. To do so, tick the “uSD-card” tick box in the converter and copy the generated 

“UserFiles” folder to the μSD

-card using a memory card reader. Insert the card into the memory card slot of the 

FX-RP multiDISPLAY and reboot the FX-RP multiDISPLAY.  

By using a μSD

-card you can quickly test if graphics are working as expected without the need to load images 

into the internal memory of the FX-

RP multiDISPLAY. A μSD

-card also needs to be used if more than 768 kB 

storage space is needed.   
When using a µSD memory card, please make sure you are using cards of good quality from a trustworthy 

manufacturer. SDXC cards are not readable by the FX-RP multiDISPLAY.  

A good reference list for memory cards’ quality can be found here: 

https://elinux.org/RPi_SD_cards. 

 

Minimizing binary file size 

If your project does not fit into the 768kB (or 256 for V1 displays) reserved for internal data storage, you may 

either use a μSD

-card for data storage or try to optimise your project to use less memory. Here are some tips to 

keep your total project size as small as possible: 

-

  Do not use more than 255 colours in images. The easiest way to accomplish this, is to convert your images. 

The embedded compression of the converter only works with < 255 colours. Any images using more than 

255 colours will not be compressed at all. 

-

  Do not change the image size using object properties. Instead use the real height and width of the image. 

-

  Minimise the colour count in pictures. Large areas using a single colour will not take much memory. Even if 

the colour count is less than 255, more memory is needed if more colours are used.  

-

  For dynamic objects, use Text size 12. The “bold” option can be used. Font size 12 is embedded in the 

firmware, all other font sizes will take up space from the internal memory. 

-

  If a larger font size is needed, keep in mind that a larger font size takes more memory than a smaller. So do 

not use larger fonts than needed.  

-

  Minimise different font sizes used. Every different font size uses some space of the memory. 

-

  Try to have only “active” elements; this will make the background image easier and thus smaller. You can 

make an element active by giving it a PointID. Make sure not to use a significant one already in use, like 

“POINTxx”, “LINK”, but rather go for something like “UNUSED_ELEMENT” or “IMAGE”. 

Summary of Contents for multiDISPLAY FX-HP

Page 1: ...ing projects on the multiDISPLAY 14 Loading projects into the FX RP multiDISPLAY s internal memory 14 With an FX controller 14 With a multi24 module and a PC 15 With a µSD memory card 15 Using graphics from a μSD Card 15 Minimizing binary file size 15 Multiple projects on one μSD Card 16 Uploading a project via Modbus 16 Detailed programming 17 Introduction 17 Visualisation customisation 18 IEEE 7...

Page 2: ...X RP multiDISPLAY as a slave and a master device uses the Modbus RTU protocol The FX RP multiDISPLAY has 250 predefined points POINTxxx that can be freely used Each point has 6 registers containing its value unit divider etc see Input data and Output data When working with other Fidelix devices the programmer does not need to know about the Modbus registers for the multi24 all necessary code is ge...

Page 3: ...andard European pattress box electrical socket or light switch size Both have external dimensions of 85x85mm The FX RP A is straight The FX RP B is 7 tilted upwards The FX RP C is without encasing The FX HP Fidelix Hand Panel Though the PCB for the Room Panel and Hand Panel have a different shape they have in fact the same hardware specifications and can thus be used with the exact same software ...

Page 4: ...he second generation displays use a processor with product code STM32F405 and require firmware with version number 2 xx You can also recognise the different generation displays by their different programming connector the red plastic connector used during production capacitor the part looking like a small button battery holding time schedule settings and the clock for 10 50 hours and tamper switch...

Page 5: ...d from a link on the multiDISPLAY After calibration the settings screen is opened Time Date Modbus address display brightness and the five internal time schedules can be adjusted from this page Also the firmware version is show here and click sounds can be en disabled the orientation of the display can be changed and the precision of the screen can be adjusted by selecting finger mode Here the fiv...

Page 6: ... the RDFW BIN file to update several displays consecutively by naming the file RDFWKEEP BIN Basically this has the same effect as having both the RDFW BIN and the RDFW_LOADED BIN file on the μSD card Using the FX RP multiDISPLAY with the Fidelix multi24 room controller module The FX RP multiDISPLAY can be connected to the multi24 s external bus either using the RJ12 connector or via the P2 G0 EA a...

Page 7: ...or all files The second way to achieve the same goal is by following the steps below carefully sometimes the unblocking doesn t seem to be enough and then the following method needs to be used 1 Unzip the program preserving the subfolder structure and save the folder on your local hard drive 2 Delete the downloaded zip file 3 Re zip the whole folder you just unzipped locally and save the new zip f...

Page 8: ...asiest way to mark the available graphics area is to put an element without pointID at 320 X and 240 Y pixels like in the example files Important to know is also that the project folder and the graphics editor program folder have to be on the same logical Windows drive e g C because of the same Windows rights reasons the editor needed to be unblocked With the editor a set of htm pages can be made ...

Page 9: ...gh the pages in your project folder Be careful when switching from page to page through the menu any unsaved changes will be lost and there is NO popup box to remind you to save changes Caution Trying to load the FXINDEX page without it being present in your working folder will cause an error like this to pop up and will cause the editor to completely freeze or get stuck in an endless loop of erro...

Page 10: ...aphical elements have to be either bmp gif dynamic gifs don t work on the display jpg jpeg or png Display points are referenced by their pointID POINT1 through to POINT250 Modbus master points are defined by using MODBUS followed by the configuration of the point in the pointID input field If you want to use a multi stage image like the power buttons in the example pages enter the desired values t...

Page 11: ...programming section HTML to Multi Display Room Display Converter The program s UI The Open file button is used to start the process Select the htm page that you want to use as a start page each time the display is powered on Also any links inside your project to CLOSE will direct the user to this page The converter can also be used to check how much memory a single image will take after conversion...

Page 12: ...ackground for images The loading of images takes more time if a transparent background is used If not selected then instead of transparency the page s background colour is used The Use Transparency for Text selection defines if you want to have transparent background for text The loading of text takes more time if a transparent background is used If not selected then instead of transparency the pa...

Page 13: ...settings and the converter The converter works in such a way that it loads each page and then takes a screenshot of your actual computer screen This means that during conversion no other windows are allowed inside or on top of the converter window as whatever is placed on top will be visible on the display Make sure to set the Microsoft Windows zoom or scale factor to 100 in the Windows settings H...

Page 14: ...ou want to use the graphics from the FX RP multiDISPLAY s internal memory the uSD card tick box is NOT ticked When the box is not ticked the converter will generate 1 file that contains the whole project and that will be copied into the display s internal memory When the box is ticked the same file will only contain the used fonts of the project and links to the files on the µSD card With an FX co...

Page 15: ...the FX RP multiDISPLAY A μSD card also needs to be used if more than 768 kB storage space is needed When using a µSD memory card please make sure you are using cards of good quality from a trustworthy manufacturer SDXC cards are not readable by the FX RP multiDISPLAY A good reference list for memory cards quality can be found here https elinux org RPi_SD_cards Minimizing binary file size If your p...

Page 16: ... card can then be removed making this a very useful feature for situations where you don t know in advance with what equipment the FX RP multiDISPLAY is going to be used Uploading a project via Modbus Graphical pages stored on the FX RP multiDISPLAY s internal memory or on the µSD can be updated through Modbus registers 65278 65343 by any Modbus master 65278 65341 64 data registers 65342 statusCPU...

Page 17: ...sed in the yellow part is to 1 define the number of decimals and the unit displayed 2 help to get the graphics correct during design Ticking Show point value will enable the displaying of the actual value of the point or register mentioned in the PointID field When not ticked the middle column needs to contain the texts that will be shown when the point has the corresponding value specified in the...

Page 18: ... to evaluate this user entered value Showing text based on the value of a point like for instance on off day night or off startup slow fast error is done by selecting a text type element and writing the desired values and corresponding texts in the yellow box inside the EditPoint dialog box More details can be found in the Status texts section later in this document To use a multi stage image like...

Page 19: ...aling out completely The hiding is particularly useful when your value has decimals as the Low Middle and High values are before division for example if one decimal is in use and you need to limit minimum value to 10 0 use parameter MIN 100 The Middle value can be omitted and even HAS to be omitted when using this combined with the NOEDIT tag NOEDIT makes a Bar Display element only show a value wh...

Page 20: ...ributed to it So only the actual received value can be visualised Increment Decrease Minimum Maximum When a symbol or button is selected this can be used to increment or decrease the value of a point For this the pointID just contains the point name e g POINT145 and in the Fixed value field 3 numbers separated by spaces define the incrementation or decrementation step the minimum value and the max...

Page 21: ... consumption to the screen show the price that needs to be paid To use math operators simply add a suffix to the pointID field POINTxx MATH POINTyy POINTzz POINTxx MATH POINTyy POINTzz POINTxx MATH POINTyy POINTzz POINTxx MATH POINTyy POINTzz This function is only available during slave mode operation Status texts By default the number of different texts for fixed values so called Status Texts is ...

Page 22: ... for example when you are making a text input page Time and date temperature firmware version and Modbus address Time date locally measured temperature and the display s firmware version and Modbus address can be displayed in various ways pointID Further customisation in Text field of the EditPoint dialog box Result TIME n a 16 23 45 TIME2 n a 16 23 TIME3 hh HH 24h 12h without leading zero mm minu...

Page 23: ... rest of the project layout and graphical style For this use following pointIDs Day selection 0 not active 1 active TIMESCH1_MON TIMESCH1_TUE TIMESCH1_WED TIMESCH1_THU TIMESCH1_FRI TIMESCH1_SAT TIMESCH1_SUN TIMESCH5_MON TIMESCH5_TUE TIMESCH5_WED TIMESCH5_THU TIMESCH5_FRI TIMESCH5_SAT TIMESCH5_SUN Time schedule status Any integer value from 0 15 TIMESCH1_STATE1 TIMESCH1_STATE5 TIMESCH1_STATE2 TIMES...

Page 24: ...like it does when you trigger the calibration by pressing in the same spot on the display for 10 seconds If DISPLAY_SETTINGS is specified in the link field of the object the link will go to settings page immediately a page otherwise brought up by long pressing on the same place on the multiDISPLAY Dynamic links can be created by using the value of a display POINT to select the page to navigate to ...

Page 25: ...pages can be force shown at any given time meaning the user doesn t have to be on the page containing the link for the linked page to pop up when instructed so by the Modbus master This function is only available during slave mode operation If HISTORY is suffixed to the pointID from which the link is called in this case the linked must be called from one of the 250 points the history graph window ...

Page 26: ...on1 png FdxButton2 png FdxButton3 png FdxButton4 png FdxButton5 png FdxButton6 png FdxButton7 png FdxButton8 png FdxButton9 png FdxButtonBackSpace png FdxButtonPlusMinus png FdxButtonCancel png FdxButtonDot png FdxButtonOk png The multiDISPLAY demo projects folder contains an example project folder named Keypad example that will help you on your way Extended UTF 8 character support The FX RP multi...

Page 27: ...egister order IEEE 754 dual register single precision floating point IEEE 754 dual register single precision floating point with reversed register order bitmask operation for register bitmask is presented in hex format and it can contain one or more bits set Example BITMASK 0020 means the 6th bit In addition to these settings some serial settings and other communication related settings are needed...

Page 28: ...es are not shown on the multiDISPLAY In this case it can be used in combination with MODBUSDEVICES AUTO MODBUSDEVICE ADDRESS 10 READREG 33 WRITEREG 4 COUNT 1 TYPE HOLDING TIMEOUT 250 Affects only if MANUAL mode defined Use this to make a field that shows the value of register 33 but that writes to register 4 The slave will most likely handle the writing of the value you write into register 4 into ...

Page 29: ...at when using a lot of Modbusdevices you calculate the actual memory used The multiDISPLAY demo projects folder contains an example project folder named Modbus master example which will help you on your way Also the folders text editing example basic example and time editing example contain example files for the master functionality An example of each of the features available in the ModbusMasterS...

Page 30: ... 2 COUNT 1 SOURCEREG 3001 TIMEOUT 300 SENDREGISTERS ADDRESS 10 WRITEREG 5 COUNT 1 SOURCEREG 3002 TIMEOUT 300 SENDREGISTERS ADDRESS 10 WRITEREG 8 COUNT 1 SOURCEREG 3003 TIMEOUT 300 SENDREGISTERS ADDRESS 11 WRITEREG 2000 COUNT 1 SOURCEREG 3004 TIMEOUT 300 SENDREGISTERS ADDRESS 29 WRITEREG 456 COUNT 5 SOURCEREG 3007 TIMEOUT 300 local minute 0 59 SENDREGISTERS ADDRESS 12 WRITEREG 1044 COUNT 1 SOURCERE...

Page 31: ...1 Reg00 Parameters Divider Unit Reg01 Value 16 highest bits Reg02 Value 16 lowest bits POINT2 Reg03 Reg04 Reg05 POINT3 Reg06 Reg07 Reg08 POINT250 Reg747 Parameters Divider Unit Reg748 Value 16 highest bits Reg749 Value 16 lowest bits The Parameters Divider Unit register is divided into two Parameters Divider most significant byte of the Parameters Divider Unit register and Unit least significant b...

Page 32: ...ernal Modbus master reads from these slave display registers POINT1 Reg1000 Info Reg1001 Value 16 highest bits Reg1002 Value 16 lowest bits POINT2 Reg1003 Reg1004 Reg1005 POINT3 Reg1006 Reg1007 Reg1008 POINT250 Reg1747 Info Reg1748 Value 16 highest bits Reg1749 Value 16 lowest bits The Info register contains 0 if the value is not set from the display and 1 if the value set from the display The FX ...

Page 33: ...e Modbus master that all points and values have been properly synchronized A 4 and a half minute video is available on Youtube to clarify this process https youtu be tEushV8ugsA This rather complex process is however not always necessary Actually in most cases we don t use it when not working with the Fidelix multi24 controller where all of these functionalities are embedded into two functions Get...

Page 34: ...is Reg2315 Divider Reg2316 Point count Reg2317 Hairline 0 do not draw 1 draw Reg2318 adjust buttons 0 no buttons 1 upper left corner 2 upper right corner 3 lower left corner 4 lower right corner Reg2319 reserved Reg2320 X value of point 1 Reg2329 X value of point 10 Reg2330 Y value of point 1 Reg2339 Y value of Point 10 String Variables The string section registers 2400 2911 is divided into 8 bloc...

Page 35: ...ur multi 24 module If the FX RP multiDISPLAY is connected directly to an FX controller these registers should be handled by using Modbus devices Reg Function R W Notes 3000 Internal Temperature Measurement in C R Multiplied by 10 for example 255 25 5 C 3001 Current Day R Current Day 1 31 3002 Current Month R Current Month 1 12 3003 Current Year R Current Year e g 2018 3004 Current Hour R Current H...

Page 36: ...ction 3047 Calibration Page R W 0 normal 1 disabled also the settings page will be disabled 2 skip calibration and jump directly to settings 3048 Calibration delay R W 0 normal 7 sec all other values seconds 3049 Startup sound R W 0 normal Positive action in Quiet mode 1 or higher startup sound disabled 3050 En Disable Daylight Saving Hour Change R W 0 enabled default 1 disabled no automatic chang...

Page 37: ...added READREG xx WRITEREG yy for master added Added feature to send fixed values from the display master depending on the internal time schedule status 1 58 1 23 Added SINGLEREG for reading writing single holding registers from the multiDISPLAY as Modbus master 1 59 1 25 Register 3053 can now be set from the local display itself also 1 60 1 27 Added dynamic links 1 63 Added free graphical interfac...

Page 38: ...master mode Increased available memory for projects in V2 displays File table is now dynamic when more than 2 kB are needed for the internal file allocation table the converter will dynamically attribute more memory to the file table Added LOCKPATH feature to make another project start up by default Added possibility to hide on BIT or BYTE value Added UNITSPACE PointID suffix x 96 1 51 Small fix l...

Reviews: