AXS Port scrambled responses

Post Reply
Maicol
Forum Member
Posts: 19
Joined: Tue Nov 03, 2009 4:19 pm

AXS Port scrambled responses

Post by Maicol » Wed Feb 26, 2014 9:08 am

Hi,

I was testing these last days the AXS port product, and finally yesterday I could read some useable data from the device. However, today I'm getting incorrect responses from the AXS. I've tried to reset the device to factory settings and updating the firmware, but I get the same result. Please help. As a comment, I still can connect correctly with help of Modbus ToolÔÇÖs Modbus poll, but I get the same garbage data.
IÔÇÖm attaching the responses I get with the Outback reader included in the development package, as you can see the ID changes with each new connection attempt:

Code: Select all

OutBack Commnunications Shell

Version 1.5.0
Type command or 'h' for help
>> c
Connect to: 192.168.1.64
getSunSpecID() Addr 40001 ID 53755368
getSunSpecID() Addr 40001 ID 53755368
ERROR: SunSpec Device NOT Detected
Connection failed
>> c
Connect to: 192.168.0.64
getSunSpecID() Addr 40001 ID 5375CDC8
getSunSpecID() Addr 40001 ID 5375CDC8
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Connect to: getSunSpecID() Addr 40001 ID 53753C48
getSunSpecID() Addr 40001 ID 53753C48
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Connect to: getSunSpecID() Addr 40001 ID 5375D600
getSunSpecID() Addr 40001 ID 5375D600
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Connect to: getSunSpecID() Addr 40001 ID 5375A31C
getSunSpecID() Addr 40001 ID 5375A31C
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Connect to: getSunSpecID() Addr 40001 ID 53756874
getSunSpecID() Addr 40001 ID 53756874
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Connect to: getSunSpecID() Addr 40001 ID 5375C3D0
getSunSpecID() Addr 40001 ID 5375C3D0
ERROR: SunSpec Device NOT Detected
Connection failed
>> c 192.168.0.64
Thanks for your help

itwnz
Forum Junior Member
Posts: 2
Joined: Sun Sep 29, 2013 2:46 pm

Re: AXS Port scrambled responses

Post by itwnz » Fri Feb 28, 2014 12:54 am

Did you set a password on the device by any chance?

Maicol
Forum Member
Posts: 19
Joined: Tue Nov 03, 2009 4:19 pm

Re: AXS Port scrambled responses

Post by Maicol » Thu Mar 20, 2014 9:00 am

It is possible I've mistakenly set a password. However, I've resetted the AXS to factory defaults many times and I get the same results.

itwnz
Forum Junior Member
Posts: 2
Joined: Sun Sep 29, 2013 2:46 pm

Re: AXS Port scrambled responses

Post by itwnz » Thu Mar 20, 2014 11:40 am

I had the same issue after setting a password on the device, it seems this corrupts the device somehow.
Outback replaced it under warranty and told me "Please do not set the password until the updated firmware is released to correct this issue. "

Now almost 6 months later there's no firmware fix and no warnings to prevent others from doing the same.

Maicol
Forum Member
Posts: 19
Joined: Tue Nov 03, 2009 4:19 pm

Re: AXS Port scrambled responses

Post by Maicol » Wed Apr 02, 2014 2:44 pm

I'll contact Outback for a replacement. Thanks for the tip!

LorenAmelang
Forum Whiz
Posts: 37
Joined: Mon Oct 26, 2009 10:51 pm
My RE system: (being majorly revised...)

Re: AXS Port random SunSpec ID

Post by LorenAmelang » Sat Aug 23, 2014 4:30 pm

This is still happening!

A bit of my longer rant (using the Outback Shell app):
=====
So then I got curious to try out all the commands... Great until I got to "Unlock". Doesn't sound very scary... I'd assume that if the device isn't locked, it would just say so. But no - if the device isn't locked, "Unlock" tries to lock it! There doesn't seem to be any escape from entering the password, and there is no "Are you sure?" verification before using whatever you entered to lock your AXS Port. Worst of all, there is no filtering of what is a valid password:
-----
>> u
Password:
e



Write successful
>> ^Z
[1]+ Stopped ./shell
ubuntu@arm:~/Lpkg/axs$
-----
I'm not sure what all I tried, but most likely Ctrl+Z and Ctrl+C were included. I also don't remember what ended the password entry and wrote it to memory - probably <Enter>. After the write, the AXS Port and the Shell app were both unresponsive, and I finally ended the Shell program with Ctrl+Z.
-----


Trying again...
-----
ubuntu@arm:~/Lpkg/axs$ ./shell
OutBack Commnunications Shell

Version 1.5.0
Type command or 'h' for help
>> c
Connect to: 10.1.1.6
Connection failed: Connection timed out
Connection failed
>> >> Not currently connected.
-----
Given a very long time (minutes), the connection attempt eventually does time out by itself. (I left it sitting there waiting while I went out to the power shed with the netbook to reset the AXS Port.) No reasonable user would wait that long.


I have not been able to connect since, but even if I had, the instructions are wrong:
(From the README file for the OutbackShell):
-----
To disable these security features, after unlocking using the current password, write "NULL" to the password field.
-----

In the actual program:

Code: Select all

case 'U':
case 'u':
	if (0 != connected)
	{					
		printf("Password: ");
		scanf("%s", buff);
		if ((0 == strcmp(buff, "clear")) || (0 == strcmp(buff, "CLEAR")))
		{					
			if (1 == writeSunSpecRegister(1, OutBack_Write_Password, 0))
			{
				printf("Password cleared\n");
			}
			else
			{
				printf("Password clear failed\n");
			}
		}
		else
		{
			if (setFieldWithString(1, OutBack_Write_Password, buff))
			{
				printf("Write successful\n");
			}
			else
			{
				printf("Write failed\n");
			}
		}
	}
	else
	{
		printf("Not connected\n");
	}
	break;
Looks like the magic entry is "CLEAR", not "NULL".

--> Using sscanf to process user input of a password, and doing no further processing or verification of the resulting string is a recipe for disaster.
I haven't studied the whole sequence, but I see the input buffer used in the above code is 64 bytes:
char buff[64];
While the target password field is 16 bytes:
Outback_Write_Password String (16)
I'm not seeing any code to resolve that pending disaster. Which obviously struck me.
=====

Neither factory reset nor reloading firmware fix the random second half of the SunSpec ID. Guess the device really is bricked. But it sounds like this is not just about the Outback Shell app writing a bad password string, it is a problem in the AXS Port itself?

How lame!

Post Reply