]> git.tdb.fi Git - r2c2.git/blob - source/libmarklin/constants.h
Initial revision
[r2c2.git] / source / libmarklin / constants.h
1 #ifndef ERROR_H_
2 #define ERROR_H_
3
4 namespace Marklin {
5
6 enum Error
7 {
8         ERR_NO_ERROR=0,
9         ERR_SYS_ERROR,
10         ERR_BAD_PARAM,
11         ERR_POWER_OFF=0x6,
12         ERR_NO_LOK_SPACE=0x8,  // No space in lok command buffer
13         ERR_NO_TURNOUT_SPACE,  // No space in turnout command buffer
14         ERR_NO_DATA,           // "no Lok status available (Lok is not in a slot)"
15         ERR_NO_SLOT,           // "there is no slot available"
16         ERR_BAD_LOK_ADDR,
17         ERR_LOK_BUSY,
18         ERR_BAD_TURNOUT_ADDR,
19         ERR_BAD_SO_VALUE,
20         ERR_NO_I2C_SPACE,
21         ERR_LOW_TURNOUT_SPACE=0x40,
22         ERR_LOK_HALTED,
23         ERR_LOK_POWER_OFF,
24         ERR_UNKNOWN_ERROR=0xFF
25 };
26
27 enum Cmd
28 {
29         CMD_LOK=0x80,
30         CMD_LOK_STATUS=0x84,
31         CMD_LOK_CONFIG=0x85,
32         CMD_FUNC=0x88,
33         CMD_FUNC_STATUS=0x8C,
34         CMD_TURNOUT=0x90,
35         CMD_TURNOUT_FREE=0x93,
36         CMD_TURNOUT_STATUS=0x94,
37         CMD_TURNOUT_GROUP_STATUS=0x95,
38         CMD_SENSOR_STATUS=0x98,
39         CMD_SENSOR_REPORT=0x99,
40         CMD_SENSOR_PARAM_SET=0x9D,
41         CMD_POWER_OFF=0xA6,
42         CMD_POWER_ON=0xA7,
43         CMD_NOP=0xC4,
44         CMD_EVENT=0xC8,
45         CMD_EVENT_LOK=0xC9,
46         CMD_EVENT_TURNOUT=0xCA,
47         CMD_EVENT_SENSOR=0xCB
48 };
49
50 } // namespace Marklin
51
52 #endif