#ifndef __IES1000_SM_H__ #define __IES1000_SM_H__ enum ies1000_err_t { IES1000ERR_NONE = 0, // launch IES1000ERR_LAUNCH_COMMERR, /* stdby */ IES1000ERR_STDBY_COMMERR, IES1000ERR_STDBY_CHK_DEVAPS0_FAIL_AFTER_SET, IES1000ERR_STDBY_CHK_STOP_FAIL_AFTER_SET, IES1000ERR_STDBY_WAIT_STOP_TIMEOUT, IES1000ERR_STDBY_WAIT_RUN_TIMEOUT, IES1000ERR_STDBY_UNKOWN_RUNSTAT, /* stop */ IES1000ERR_STOP_COMMERR, IES1000ERR_STOP_NONE_STOP_DETECTED, IES1000ERR_STOP_CHK_DEVAPS0_FAIL_AFTER_SET, IES1000ERR_STOP_WAIT_RUNMOD_OFFGRID_TIMEOUT, IES1000ERR_STOP_WAIT_IDLE_TIMEOUT, /* ready */ IES1000ERR_READY_COMMERR, IES1000ERR_READY_WAIT_STOP_TIMEOUT, IES1000ERR_READY_WAIT_RUN4DHG_TIMEOUT, IES1000ERR_READY_WAIT_AP4DHG_TIMEOUT, IES1000ERR_READY_WAIT_RUN4CHG_TIMEOUT, IES1000ERR_READY_WAIT_AP4CHG_TIMEOUT, IES1000ERR_READY_NONIDLE_DETECTED, IES1000ERR_READY_SEND_STARTCMD_FAIL, IES1000ERR_READY_SET_DEVAPS_FAIL, IES1000ERR_READY_WAIT_RUNMOD_OFFGRID_FOR_OFFGRID_TIMEOUT, IES1000ERR_READY_WAIT_IDLE_FOR_OFFGRID_TIMEOUT, IES1000ERR_READY_WAIT_TARGET_VOLTAGE_FOR_OFFGRID_TIMEOUT, IES1000ERR_READY_WAIT_RUNMOD_ONGRID_FOR_DHG_TIMEOUT, IES1000ERR_READY_WAIT_RUNMOD_ONGRID_FOR_CHG_TIMEOUT, /* dhg */ IES1000ERR_DHG_COMMERR, IES1000ERR_DHG_WAIT_DEVAPS0_TIMEOUT, IES1000ERR_DHG_WAIT_AP0_TIMEOUT, IES1000ERR_DHG_NONDHG_DETECTED, IES1000ERR_DHG_WAIT_DEVAPS0_FOR_READYCMD_TIMEOUT, IES1000ERR_DHG_WAIT_AP0_FOR_READYCMD_TIMEOUT, IES1000ERR_DHG_WAIT_RUNSTATE_IDLE_FOR_READYCMD_TIMEOUT, /* chg */ IES1000ERR_CHG_COMMERR, IES1000ERR_CHG_WAIT_DEVAPS0_TIMEOUT, IES1000ERR_CHG_WAIT_AP0_TIMEOUT, IES1000ERR_CHG_NONCHG_DETECTED, IES1000ERR_CHG_WAIT_DEVAPS0_FOR_READYCMD_TIMEOUT, IES1000ERR_CHG_WAIT_AP0_FOR_READYCMD_TIMEOUT, IES1000ERR_CHG_WAIT_RUNSTATE_IDLE_FOR_READYCMD_TIMEOUT, // offgrid IES1000ERR_OFFGRID_ERRSTAT_DETECTED, IES1000ERR_OFFGRID_NON_DHGCHG_DETECTED, /* err */ IES1000ERR_ERR_PWRUP, IES1000ERR_ERR_COMMERR, IES1000ERR_NA, }; int ies1000_sm_init(int idx); void ies1000_sm( int idx ); #endif