Home AMX User Forum NetLinx Studio

Font Issues with iPort Module

I am using the NetLinx Sonance iPort module. I am also using the included user interface. Because I am using an NXD-500i the small font used in the UI is difficult to read. I have edited the font (size, color, etc.) in TPD4 to a point where it is very easy to read. When I send the file to the panel the font changes back to what was originally included in the UI. I believe the module is changing the font. I'm not sure why it would do this. My question is, how do I fix it?

Comments

  • Is this the Netlinx module or the Duet module and which version of the module is in use?
  • It's the NetLinx module
  • I've recently used the latest version of the Netlinx iPort module and I changed the font for all of the text fields (to Dungeon :( because customer wanted the Blue Steel layout).

    Didn't have any issues with font changes being lost. I was using MVP 8400's not 500i's.

    You may have a corrupt panel file but I would try "remove all user pages" from the 500i's setup screen and do a full clean transfer to see if that fixes the problem.

    Also there was a recent post about a similar issue and the fix was to use a font size slightly different than what the poster wanted originally. I don't remember the specifics but say for example you are trying to use the font set to size 10 well then try 11 instead even though there probably isn't an 11 in the drop down list, just go ahead and type it in.

    Hopefully one of these things will fix it. I've had to start over from scratch before when a file became corrupted and it sucked!
  • I just tried doing a "remove user pages" and then re-transferring the files to the touch panel. This did not fix the issue. I think this code in the user interface module for the iPort has something to do with my problem but I don't really understand what the code is doing.
    DEFINE_FUNCTION SEND_VTEXT (INTEGER nCHAN, CHAR strMSG[]) //All variable text to panel is sent thru this function
    {
        STACK_VAR WIDECHAR strSTRING1[600]
        STACK_VAR CHAR strSTRING2[600]
        STACK_VAR INTEGER iTEXT
           
        strSTRING1 = WC_DECODE(strMSG,WC_FORMAT_UTF8,1) // Used to Decode 
        strSTRING2 = WC_ENCODE(strSTRING1,WC_FORMAT_TP,1)
        
        
        FOR(itext = 1;iTEXT <= nDEV_LENGTH;iTEXT++) //Check to see if G3 or G4 panel to send correct text command
        {
    	//SEND_STRING 0,"'R4 Device_ID = ',ITOA(DEVICE_ID(dvTP[3]))" //R4 Device is 322
    	IF(DEVICE_ID(dvTP[iTEXT]) < 256) //Is it a G3 Panel in the array?
    	{
    	    IF(nON_IPORT_PAGE[iTEXT] = 1) // Is the Panel currently on the iPort page?
    	    {
    		SEND_COMMAND dvTP[iTEXT], "'TEXT',ITOA(nCHAN),'-',strMSG"        //G3 Panels without Unicode Support
    	    }							     		//NOTE: Unicode not supported on G3 panels
    	}
    	ELSE //It must be a Modero Panel and not a G3 panel
    	{
    	    IF(nON_IPORT_PAGE[iTEXT] = 1) // Is the Panel currently on the iPort page?
    	    {
    		IF(DEVICE_ID(dvTP[iTEXT]) = 322) //Is it an R4 Remote in the array?
    		{
    		    //Send Nothing - Use Virtual R4 in Main.axs in DEV array for iPort UI devices
    		}
    		ELSE
    		{
    		    SEND_COMMAND dvTP[iTEXT], "'^UNI-',ITOA(nCHAN),',0,',strSTRING2"   //Unicode Modero Panels
    		    //SEND_COMMAND dvTP,"'^TXT-',ITOA(nCHAN),',1&2,',strMSG"      // G4 panels without Unicode
    		}
    	    }
    	}
        }
    }
    

    I don't get all the unicode stuff.
  • remeolb wrote: »
    I just tried doing a "remove user pages" and then re-transferring the files to the touch panel. This did not fix the issue. I think this code in the user interface module for the iPort has something to do with my problem but I don't really understand what the code is doing.
    DEFINE_FUNCTION SEND_VTEXT (INTEGER nCHAN, CHAR strMSG[]) //All variable text to panel is sent thru this function
    {
        STACK_VAR WIDECHAR strSTRING1[600]
        STACK_VAR CHAR strSTRING2[600]
        STACK_VAR INTEGER iTEXT
           
        strSTRING1 = WC_DECODE(strMSG,WC_FORMAT_UTF8,1) // Used to Decode 
        strSTRING2 = WC_ENCODE(strSTRING1,WC_FORMAT_TP,1)
        
        
        FOR(itext = 1;iTEXT <= nDEV_LENGTH;iTEXT++) //Check to see if G3 or G4 panel to send correct text command
        {
    	//SEND_STRING 0,"'R4 Device_ID = ',ITOA(DEVICE_ID(dvTP[3]))" //R4 Device is 322
    	IF(DEVICE_ID(dvTP[iTEXT]) < 256) //Is it a G3 Panel in the array?
    	{
    	    IF(nON_IPORT_PAGE[iTEXT] = 1) // Is the Panel currently on the iPort page?
    	    {
    		SEND_COMMAND dvTP[iTEXT], "'TEXT',ITOA(nCHAN),'-',strMSG"        //G3 Panels without Unicode Support
    	    }							     		//NOTE: Unicode not supported on G3 panels
    	}
    	ELSE //It must be a Modero Panel and not a G3 panel
    	{
    	    IF(nON_IPORT_PAGE[iTEXT] = 1) // Is the Panel currently on the iPort page?
    	    {
    		IF(DEVICE_ID(dvTP[iTEXT]) = 322) //Is it an R4 Remote in the array?
    		{
    		    //Send Nothing - Use Virtual R4 in Main.axs in DEV array for iPort UI devices
    		}
    		ELSE
    		{
    		    SEND_COMMAND dvTP[iTEXT], "'^UNI-',ITOA(nCHAN),',0,',strSTRING2"   //Unicode Modero Panels
    		    //SEND_COMMAND dvTP,"'^TXT-',ITOA(nCHAN),',1&2,',strMSG"      // G4 panels without Unicode
    		}
    	    }
    	}
        }
    }
    

    I don't get all the unicode stuff.


    Well unicode is an extension of the ascii character set and I believe is encoded differently. The function that you posted is there to make sure that nonstandard ascii characters are properly sent to the UI. This function should not be changing fonts or font sizes just the character encoding.

    You can test this by commenting out the module definition in your code and seeing if the text is still changed when the module is disabled.
  • ericmedleyericmedley Posts: 4,177
    remeolb wrote: »
    I am using the NetLinx Sonance iPort module. I am also using the included user interface. Because I am using an NXD-500i the small font used in the UI is difficult to read. I have edited the font (size, color, etc.) in TPD4 to a point where it is very easy to read. When I send the file to the panel the font changes back to what was originally included in the UI. I believe the module is changing the font. I'm not sure why it would do this. My question is, how do I fix it?

    You also might try unchecking 'Smart Transfer' and check 'Normal Transfer' I've been seeing lots of issues like this with projects that have many different panel types. the upload will fail. When I go to normal transfer the load will occur. However, it takes considerably longer when this happens. Quite a few times I've seen fonts goofed up or graphics not changing when they're supposed to.

    The corrupt file might be the problem as well.
  • I finally called AMX tech support for help. Apparently there is a bug in NetLinx Studio 3 with the Arial Bold font. I'm not sure the exact details but basically the panel re-sizes the font because NetLinx Studio is not sending it properly. For me it only seems to do this if the font size is 12 but I haven't played around with it much. They said this will be fixed in the next update.

    I changed the font to something other than Arial Bold and it works fine.
Sign In or Register to comment.