jblance / mpp-solar

Python package to communicate to MPP Solar PIP-4048MS inverters (and similar)
MIT License
355 stars 149 forks source link

Silly Question #240

Closed realSater closed 1 year ago

realSater commented 2 years ago

I am able to connect to the PI30 inverter without any issues, I am able to fetch the data normally, everything is working just fine using mqtt --> telegraf --> influx --> grafana.

I have a non mpp-solar question, if that's fine to ask.

The inverter is showing the output load in watts on the inverter screen (ex: 432w) - this value changes dynamically based on how much load I am having regarding house equipment.

This value does not show in any of the values that mpp-solar is retrieving from the inverter.

List of commands that I am fetching are: QFLAG#QMCHGCR#QMOD#QMUCHGCR#QPIGS#QPIRI

Whether I fetch every command alone or not, I don't see the output load in watts.

the only thing I can relate to, is a parameter coming from the inverter which shows "ac_output_load" and it comes in numbers that doesn't exceed 20.

so after doing some research i figured out that this number is in %. so it shows 3% or 16% load etc.. is there any way that I can convert the percentage into watt?

I tried to google this before i post here, but I have a missing unit value which is the output ampere which is also missing from the data that mpp-solar is fetching, but it shows fine on the inverter screen.

I really appreciate anyone's help on this.

jblance commented 2 years ago

Have you tried QPGS0?

On Sun, 24 Jul 2022, 5:45 pm Mohamad Abdel Sater, @.***> wrote:

I am able to connect to the PI30 inverter without any issues, I am able to fetch the data normally, everything is working just fine using mqtt --> telegraf --> influx --> grafana.

I have a non mpp-solar question, if that's fine to ask.

The inverter is showing the output load in watts on the inverter screen (ex: 432w) - this value changes dynamically based on how much load I am having regarding house equipment.

This value does not show in any of the values that mpp-solar is retrieving from the inverter.

List of commands that I am fetching are: QFLAG#QMCHGCR#QMOD#QMUCHGCR#QPIGS#QPIRI

Whether I fetch every command alone or not, I don't see the output load in watts.

the only thing I can relate to, is a parameter coming from the inverter which shows "ac_output_load" and it comes in numbers that doesn't exceed 20.

so after doing some research i figured out that this number is in %. so it shows 3% or 16% load etc.. is there any way that I can convert the percentage into watt?

I tried to google this before i post here, but I have a missing unit value which is the output ampere which is also missing from the data that mpp-solar is fetching, but it shows fine on the inverter screen.

I really appreciate anyone's help on this.

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNQPHVGZY47SUOXDD3TVVTKATANCNFSM54PDIEOA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

realSater commented 2 years ago
2022-07-24 09:27:47,480:INFO:__init__:main@223: Solar Device Command Utility, version: 0.13.0, add postgres support from skoky
2022-07-24 09:27:47,481:DEBUG:__init__:main@237: MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False)
2022-07-24 09:27:47,482:DEBUG:__init__:main@239: udp port 5555
2022-07-24 09:27:47,483:DEBUG:__init__:main@241: Using Postgres None
2022-07-24 09:27:47,483:DEBUG:__init__:main@244: Using Mongo None with mppsolar
2022-07-24 09:27:47,484:INFO:__init__:main@346: Creating device "unnamed" (type: "mppsolar") on port "/dev/hidraw0 (porttype=None)" using protocol "PI30"
2022-07-24 09:27:47,492:DEBUG:__init__:main@350: device_class <class 'mppsolar.devices.mppsolar.mppsolar'>
2022-07-24 09:27:47,493:DEBUG:device:__init__@33: __init__ args ()
2022-07-24 09:27:47,493:DEBUG:device:__init__@34: __init__ kwargs {'name': 'unnamed', 'port': '/dev/hidraw0', 'protocol': 'PI30', 'baud': 2400, 'porttype': None, 'mqtt_broker': MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False), 'udp_port': '5555', 'mongo_url': None, 'mongo_db': 'mppsolar'}
2022-07-24 09:27:47,494:DEBUG:__init__:get_port_type@38: port matches hidraw
2022-07-24 09:27:47,494:INFO:__init__:get_port@89: Using hidrawio for communications
2022-07-24 09:27:47,498:DEBUG:__init__:get_protocol@12: Protocol PI30
2022-07-24 09:27:47,504:DEBUG:device:__init__@38: __init__ name unnamed, port <mppsolar.inout.hidrawio.HIDRawIO object at 0x7f842900a0>, protocol <mppsolar.protocols.pi30.pi30 object at 0x7f84284c70>
2022-07-24 09:27:47,505:DEBUG:__init__:main@399: Commands [(<mppsolar.devices.mppsolar.mppsolar object at 0x7f84290040>, 'QPGS0', 'QPGS0', 'screen', None, None)]
2022-07-24 09:27:47,505:INFO:__init__:main@404: Looping 1 commands
2022-07-24 09:27:47,506:INFO:__init__:main@414: Getting results from device: mppsolar device - name: unnamed, port: <mppsolar.inout.hidrawio.HIDRawIO object at 0x7f842900a0>, protocol: <mppsolar.protocols.pi30.pi30 object at 0x7f84284c70> for command: QPGS0, tag: QPGS0, outputs: screen
2022-07-24 09:27:47,506:INFO:device:run_command@274: Running command QPGS0
2022-07-24 09:27:47,506:INFO:abstractprotocol:get_full_command@50: Using protocol b'PI30' with 40 commands
2022-07-24 09:27:47,506:DEBUG:protocol_helpers:crcPI@313: Calculating CRC for b'QPGS0'
2022-07-24 09:27:47,507:DEBUG:protocol_helpers:crcPI@363: Generated CRC 0x3f 0xda 0x3fda
2022-07-24 09:27:47,507:DEBUG:abstractprotocol:get_full_command@56: full command: b'QPGS0?\xda\r'
2022-07-24 09:27:47,507:INFO:device:run_command@303: full command b'QPGS0?\xda\r' for command QPGS0
2022-07-24 09:27:47,508:DEBUG:abstractprotocol:get_command_defn@60: Processing command 'QPGS0'
2022-07-24 09:27:47,508:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: F
2022-07-24 09:27:47,509:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: MCHGC
2022-07-24 09:27:47,510:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: MNCHGC
2022-07-24 09:27:47,511:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: MUCHGC
2022-07-24 09:27:47,512:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBCV
2022-07-24 09:27:47,512:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBDV
2022-07-24 09:27:47,513:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBFT
2022-07-24 09:27:47,514:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBT
2022-07-24 09:27:47,515:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PCP
2022-07-24 09:27:47,516:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PCVV
2022-07-24 09:27:47,517:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PE
2022-07-24 09:27:47,518:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PD
2022-07-24 09:27:47,519:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PGR
2022-07-24 09:27:47,519:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: POP
2022-07-24 09:27:47,520:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: POPLG
2022-07-24 09:27:47,521:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: POPM
2022-07-24 09:27:47,522:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PPCP
2022-07-24 09:27:47,523:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PPVOKC
2022-07-24 09:27:47,524:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PSDV
2022-07-24 09:27:47,525:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PSPB
2022-07-24 09:27:47,526:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBATCD
2022-07-24 09:27:47,527:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: DAT
2022-07-24 09:27:47,528:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: PBATMAXDISC
2022-07-24 09:27:47,529:DEBUG:abstractprotocol:get_command_defn@66: Regex commands _command: QPGS
2022-07-24 09:27:47,530:DEBUG:abstractprotocol:get_command_defn@70: Matched: QPGS0 to: QPGS value: 0
2022-07-24 09:27:47,531:DEBUG:hidrawio:send_and_receive@29: length of to_send: 8
2022-07-24 09:27:47,531:DEBUG:hidrawio:send_and_receive@36: 1 chunk send
2022-07-24 09:27:48,286:DEBUG:hidrawio:send_and_receive@69: usb response was: b'QPGS0?\xda\r'
2022-07-24 09:27:48,286:DEBUG:device:run_command@322: Send and Receive Response b'QPGS0?\xda\r'
2022-07-24 09:27:48,287:DEBUG:__init__:main@418: results: {'ERROR': ['Inverter returned the command string for QPGS0 - the inverter didnt recognise this command', '']}
2022-07-24 09:27:48,287:INFO:__init__:get_output@35: attempting to create output processor: screen
2022-07-24 09:27:48,290:DEBUG:screen:__init__@16: processor.screen __init__ kwargs {}
2022-07-24 09:27:48,291:DEBUG:__init__:main@424: Using output filter: None
2022-07-24 09:27:48,291:INFO:screen:output@19: Using output processor: screen
2022-07-24 09:27:48,291:DEBUG:screen:output@20: kwargs {'data': {'ERROR': ['Inverter returned the command string for QPGS0 - the inverter didnt recognise this command', '']}, 'tag': 'QPGS0', 'mqtt_broker': MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False), 'udp_port': '5555', 'postgres_url': None, 'mongo_url': None, 'mongo_db': 'mppsolar', 'filter': None, 'excl_filter': None, 'keep_case': False}
Parameter                       Value           Unit
error                           Inverter returned the command string for QPGS0 - the inverter didnt recognise this command
2022-07-24 09:27:48,292:DEBUG:__init__:main@448: Not daemon, so not looping

I think the command is not supported.

jblance commented 2 years ago

Bummer

What inverter do you have again?

On Sun, 24 Jul 2022, 6:28 pm Mohamad Abdel Sater, @.***> wrote:

2022-07-24 @.: Solar Device Command Utility, version: 0.13.0, add postgres support from skoky 2022-07-24 @.: MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False) 2022-07-24 @.: udp port 5555 2022-07-24 @.: Using Postgres None 2022-07-24 @.: Using Mongo None with mppsolar 2022-07-24 @.: Creating device "unnamed" (type: "mppsolar") on port "/dev/hidraw0 (porttype=None)" using protocol "PI30" 2022-07-24 @.: device_class <class 'mppsolar.devices.mppsolar.mppsolar'> 2022-07-24 @.: init args () 2022-07-24 @.: init kwargs {'name': 'unnamed', 'port': '/dev/hidraw0', 'protocol': 'PI30', 'baud': 2400, 'porttype': None, 'mqtt_broker': MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False), 'udp_port': '5555', 'mongo_url': None, 'mongo_db': 'mppsolar'} 2022-07-24 @.: port matches hidraw 2022-07-24 @.: Using hidrawio for communications 2022-07-24 @.: Protocol PI30 2022-07-24 @.: init name unnamed, port <mppsolar.inout.hidrawio.HIDRawIO object at 0x7f842900a0>, protocol <mppsolar.protocols.pi30.pi30 object at 0x7f84284c70> 2022-07-24 @.: Commands [(<mppsolar.devices.mppsolar.mppsolar object at 0x7f84290040>, 'QPGS0', 'QPGS0', 'screen', None, None)] 2022-07-24 @.: Looping 1 commands 2022-07-24 @.: Getting results from device: mppsolar device - name: unnamed, port: <mppsolar.inout.hidrawio.HIDRawIO object at 0x7f842900a0>, protocol: <mppsolar.protocols.pi30.pi30 object at 0x7f84284c70> for command: QPGS0, tag: QPGS0, outputs: screen 2022-07-24 @.: Running command QPGS0 2022-07-24 @.: Using protocol b'PI30' with 40 commands 2022-07-24 @.: Calculating CRC for b'QPGS0' 2022-07-24 @.: Generated CRC 0x3f 0xda 0x3fda 2022-07-24 @.: full command: b'QPGS0?\xda\r' 2022-07-24 @.: full command b'QPGS0?\xda\r' for command QPGS0 2022-07-24 @.: Processing command 'QPGS0' 2022-07-24 @.: Regex commands _command: F 2022-07-24 @.: Regex commands _command: MCHGC 2022-07-24 @.: Regex commands _command: MNCHGC 2022-07-24 @.: Regex commands _command: MUCHGC 2022-07-24 @.: Regex commands _command: PBCV 2022-07-24 @.: Regex commands _command: PBDV 2022-07-24 @.: Regex commands _command: PBFT 2022-07-24 @.: Regex commands _command: PBT 2022-07-24 @.: Regex commands _command: PCP 2022-07-24 @.: Regex commands _command: PCVV 2022-07-24 @.: Regex commands _command: PE 2022-07-24 @.: Regex commands _command: PD 2022-07-24 @.: Regex commands _command: PGR 2022-07-24 @.: Regex commands _command: POP 2022-07-24 @.: Regex commands _command: POPLG 2022-07-24 @.: Regex commands _command: POPM 2022-07-24 @.: Regex commands _command: PPCP 2022-07-24 @.: Regex commands _command: PPVOKC 2022-07-24 @.: Regex commands _command: PSDV 2022-07-24 @.: Regex commands _command: PSPB 2022-07-24 @.: Regex commands _command: PBATCD 2022-07-24 @.: Regex commands _command: DAT 2022-07-24 @.: Regex commands _command: PBATMAXDISC 2022-07-24 @.: Regex commands _command: QPGS 2022-07-24 @.: Matched: QPGS0 to: QPGS value: 0 2022-07-24 @.: length of to_send: 8 2022-07-24 @.: 1 chunk send 2022-07-24 @.: usb response was: b'QPGS0?\xda\r' 2022-07-24 @.: Send and Receive Response b'QPGS0?\xda\r' 2022-07-24 @.: results: {'ERROR': ['Inverter returned the command string for QPGS0 - the inverter didnt recognise this command', '']} 2022-07-24 @.: attempting to create output processor: screen 2022-07-24 @.: processor.screen init kwargs {} 2022-07-24 @.: Using output filter: None 2022-07-24 @.: Using output processor: screen 2022-07-24 @.: kwargs {'data': {'ERROR': ['Inverter returned the command string for QPGS0 - the inverter didnt recognise this command', '']}, 'tag': 'QPGS0', 'mqtt_broker': MqttBroker(name='localhost', port=1883, username=None, password=None, results_topic='mpp-solar', mqttc=<paho.mqtt.client.Client object at 0x7f84b412e0>, _isConnected=False), 'udp_port': '5555', 'postgres_url': None, 'mongo_url': None, 'mongo_db': 'mppsolar', 'filter': None, 'excl_filter': None, 'keep_case': False} Parameter Value Unit error Inverter returned the command string for QPGS0 - the inverter didnt recognise this command 2022-07-24 @.***: Not daemon, so not looping

I think the command is not supported.

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193256878, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNRARR4MPFZMUXXSJG3VVTPBJANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

Brand: Crown Micro Model: Durant Model Number: DT-2KW-M

2000W inverter

Unfortunately I cannot seem to find the exact model name on the internet πŸ˜‚, there are other models with lower Watt. - makes me think it is discontinued...

It is made in China πŸ‡¨πŸ‡³

But on mpp-solar when i use QPI it shows:

protocol_id PI30

jblance commented 2 years ago

Try command Q1

On Sun, 24 Jul 2022, 6:35 pm Mohamad Abdel Sater, @.***> wrote:

Brand: Crown Micro Model: Durant Model Number: DT-2KW-M

2000W inverter

Unfortunately I cannot seem to find the exact model name on the internet πŸ˜‚, there are other models with lower Watt. - makes me think it is discontinued...

It is made in China πŸ‡¨πŸ‡³

But on mpp-solar when i use QPI it shows:

protocol_id PI30

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193257644, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNTWYI4XFRR5HB42PMLVVTP33ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

Q1 doesn't work either

Q2 fetched the below:

solar@solar:~ $ sudo mpp-solar -P PI30 -c Q2 -p /dev/hidraw0
Command: Q2 - No description found
------------------------------------------------------------
Parameter                       Value           Unit
warning                         No definition for command Q2 in protocol b'PI30'
response                        (010 020 030 040 050 060&Γͺ

and Q0..Q3..Q4 etc. doesn't work

realSater commented 2 years ago

deleted

jblance commented 2 years ago

Ok. That's not a command I've seen before. But it looks like "valid charge amounts" or similar

This means there are unknown commands are implemented

On Sun, 24 Jul 2022, 6:45 pm Mohamad Abdel Sater, @.***> wrote:

Q2 fetched the below:

@.***:~ $ sudo mpp-solar -P PI30 -c Q2 -p /dev/hidraw0

Command: Q2 - No description found


Parameter Value Unit

warning No definition for command Q2 in protocol b'PI30'

response (010 020 030 040 050 060&Γͺ

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193258656, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNRW4FDMZNLRQYMO2HDVVTRA3ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

jblance commented 2 years ago

Does it come with any software ?

On Sun, 24 Jul 2022, 6:47 pm John Blance, @.***> wrote:

Ok. That's not a command I've seen before. But it looks like "valid charge amounts" or similar

This means there are unknown commands are implemented

On Sun, 24 Jul 2022, 6:45 pm Mohamad Abdel Sater, < @.***> wrote:

Q2 fetched the below:

@.***:~ $ sudo mpp-solar -P PI30 -c Q2 -p /dev/hidraw0

Command: Q2 - No description found


Parameter Value Unit

warning No definition for command Q2 in protocol b'PI30'

response (010 020 030 040 050 060&Γͺ

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193258656, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNRW4FDMZNLRQYMO2HDVVTRA3ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

I have knowledge in what I am doing, would you like me to bruteforce the commands?

if so can you give me the general letters that usually all manufacturers set in their inverters?

like: letter Q letter S letter V letter P letter 1

etc...

edit: fixed grammatical typo

jblance commented 2 years ago

Does Q3 or Q4 etc give any response?

On Sun, 24 Jul 2022, 6:49 pm John Blance, @.***> wrote:

Does it come with any software ?

On Sun, 24 Jul 2022, 6:47 pm John Blance, @.***> wrote:

Ok. That's not a command I've seen before. But it looks like "valid charge amounts" or similar

This means there are unknown commands are implemented

On Sun, 24 Jul 2022, 6:45 pm Mohamad Abdel Sater, < @.***> wrote:

Q2 fetched the below:

@.***:~ $ sudo mpp-solar -P PI30 -c Q2 -p /dev/hidraw0

Command: Q2 - No description found


Parameter Value Unit

warning No definition for command Q2 in protocol b'PI30'

response (010 020 030 040 050 060&Γͺ

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193258656, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNRW4FDMZNLRQYMO2HDVVTRA3ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

Does it come with any software ?

unfortunately it doesn't, i barely ran it using watchpower on a windows machine

jblance commented 2 years ago

If you do -c without a command it will show all the available commands for pi30

Generally commands start with Q for queries

On Sun, 24 Jul 2022, 6:50 pm Mohamad Abdel Sater, @.***> wrote:

Does it come with any software ? … <#m883837859247985866> On Sun, 24 Jul 2022, 6:47 pm John Blance, @.> wrote: Ok. That's not a command I've seen before. But it looks like "valid charge amounts" or similar This means there are unknown commands are implemented On Sun, 24 Jul 2022, 6:45 pm Mohamad Abdel Sater, < @.> wrote: > Q2 fetched the below: > > @.*:~ $ sudo mpp-solar -P PI30 -c Q2 -p /dev/hidraw0 > > Command: Q2 - No description found > > ------------------------------------------------------------ > > Parameter Value Unit > > warning No definition for command Q2 in protocol b'PI30' > > response (010 020 030 040 050 060&Γͺ > > > β€” > Reply to this email directly, view it on GitHub > <#240 (comment) https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193258656>,

or unsubscribe > https://github.com/notifications/unsubscribe-auth/AAJVKNRW4FDMZNLRQYMO2HDVVTRA3ANCNFSM54PDIEOA https://github.com/notifications/unsubscribe-auth/AAJVKNRW4FDMZNLRQYMO2HDVVTRA3ANCNFSM54PDIEOA . > You are receiving this because you commented.Message ID: > @.*> >

unfortunately it doesn't, i barely ran it using watchpower on a windows machine

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193259207, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNQGJAMI27GQ3MJDBYLVVTRTJANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

If you do -c without a command it will show all the available commands for pi30 Generally commands start with Q for queries

great! do you know if there is a maximum length for the commands? say a maximum of 5 letters?

I am about to write a simple script to bruteforce to pass all possible letter combinations to the inverter starting with Qxxxx

but i would like to know the maximum length of xxxx

jblance commented 2 years ago

I've not seen a max length and some are quite long

On Sun, 24 Jul 2022, 6:54 pm Mohamad Abdel Sater, @.***> wrote:

If you do -c without a command it will show all the available commands for pi30 Generally commands start with Q for queries

great! do you know if there is a maximum length for the commands? say a maximum of 5 letters?

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193259628, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNXKR5ARQC6SE6Y7JCLVVTSCHANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

are you suggesting that the length can be more than 8 characters? including the letter Q?

jblance commented 2 years ago

Some commands include the date and time so are longer than 8 chars in total

Most generic queries are 5 chars or less tho

On Sun, 24 Jul 2022, 7:04 pm Mohamad Abdel Sater, @.***> wrote:

are you suggesting that the length can be more than 8 characters? including the letter Q?

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193260774, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNU6GVYACIKSGJ7H6SLVVTTI5ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

can we leave this thread open till I get back with the results?

jblance commented 2 years ago

Yup

On Sun, 24 Jul 2022, 7:18 pm Mohamad Abdel Sater, @.***> wrote:

can we leave this thread open till I get back with the results?

β€” Reply to this email directly, view it on GitHub https://github.com/jblance/mpp-solar/issues/240#issuecomment-1193262606, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJVKNUFIRCN2YHZHOME3C3VVTU33ANCNFSM54PDIEOA . You are receiving this because you commented.Message ID: @.***>

realSater commented 2 years ago

This thread is going to be long... I hope you don't mind. I will start posting the results once they finish.

so far i noticed that if you issue any command simultaneously it sometimes can generate those weird output data i mentioned up like:

Command: Q2 - No description found
------------------------------------------------------------
Parameter                       Value           Unit
warning                         No definition for command Q2 in protocol b'PI30'
response                        (010 020 030 040 050 060&Γͺ

But if you stop the mpp service and run the commands one by one without any other interference, you will get a correct response whether the command is invalid or not.

So far I have checked the below:

Qn where n is a number from 0-9 Qc where c is a capital letter from A-Z Qcc where both c are capital letters from A-Z Qcn where c is a number from A-Z and n is a number from 0-9 Qnc where n is a number from 0-9 and where c is a number from A-Z Qnn where both n are numbers from 0-9

c stands for character and n stands for number 🀣

I still have: Qccc Qncc Qcnc Qccn Qcccc Qnccc Qcncc Qccnc Qcccn

Will keep you updated

Screenshot 2022-07-24 121717

realSater commented 1 year ago

I am closing this thread.

I was calling QFLAG#QMCHGCR#QMOD#QMUCHGCR#QPIGS#QPIRI which is absolutely not necessary and a waste of pull requests from the inverter to mpp-solar.

Everyone who is getting such error or any kind of error like "response too short" is simply due to misconfiguration of the number of times mpp-solar is pulling data from any inverter.

You cannot run mpp-solar simultaneously (you will see errors when running 2 commands at the exact same time or during data pull time)

simply make sure that everything is stopped, there are no cronjobs making mpp-solar run every minute, or any software like monit or such, then trigger your command WITHOUT stacking commands with # or , because they are useless and have no use (at least to my experience, only 1 or 2 should be enough, so don't overload the data pull with 3+ commands)