-
Notifications
You must be signed in to change notification settings - Fork 848
/
Copy pathir__Bosch_8h_source.html
356 lines (354 loc) · 72.9 KB
/
ir__Bosch_8h_source.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: src/ir_Bosch.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremoteESP8266
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ir_Bosch.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="ir__Bosch_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Copyright 2022 Nico Thien</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"></span> </div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">// Supports:</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// Brand: Bosch, Model: CL3000i-Set 26 E A/C</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// Brand: Bosch, Model: RG10A(G2S)BGEF remote</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>  </div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>  </div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#ifndef IR_BOSCH_H_</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#define IR_BOSCH_H_</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>  </div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#define __STDC_LIMIT_MACROS</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor">#include <stdint.h></span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include <algorithm></span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#include <cstring></span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include "<a class="code" href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a>"</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "<a class="code" href="IRsend_8h.html">IRsend.h</a>"</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "<a class="code" href="IRrecv_8h.html">IRrecv.h</a>"</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "<a class="code" href="IRtext_8h.html">IRtext.h</a>"</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include "<a class="code" href="IRutils_8h.html">IRutils.h</a>"</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <Arduino.h></span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef UNIT_TEST</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "IRsend_test.h"</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">// Constants</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#aadc63aebf2d5196fb04c738e7f55b962"> 31</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#aadc63aebf2d5196fb04c738e7f55b962">kBoschHdrMark</a> = 4366;</div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ae231af130976f79d9a96ea6c5733fa87"> 32</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#ae231af130976f79d9a96ea6c5733fa87">kBoschBitMark</a> = 502;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ac6515523960e0d98d6d046aa4ba1421b"> 33</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#ac6515523960e0d98d6d046aa4ba1421b">kBoschHdrSpace</a> = 4415;</div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a18b51b04770e85adc8f9d0dea16c07a2"> 34</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a18b51b04770e85adc8f9d0dea16c07a2">kBoschOneSpace</a> = 1645;</div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a3cfa01af62a0e1c3d507488dd5e1f05c"> 35</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a3cfa01af62a0e1c3d507488dd5e1f05c">kBoschZeroSpace</a> = 571;</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a7e42d2f410aed3cef58bac2f8a09cb06"> 36</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a7e42d2f410aed3cef58bac2f8a09cb06">kBoschFooterSpace</a> = 5235;</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a4b96eb4a16f1711be9e836ba593fcbb3"> 37</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a4b96eb4a16f1711be9e836ba593fcbb3">kBoschFreq</a> = 38000; <span class="comment">// Hz. (Guessing the most common frequency.)</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ac45d61b421b7d326977e0d93ff52f954"> 38</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#ac45d61b421b7d326977e0d93ff52f954">kBosch144NrOfSections</a> = 3;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a441cbba39ea68a84b1c7eb73da6c2042"> 39</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a441cbba39ea68a84b1c7eb73da6c2042">kBosch144BytesPerSection</a> = 6;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">using</span> <a class="code" href="namespaceirutils.html#a12ba9cf1830a886649a80c3cc5fdce2b">irutils::addBoolToString</a>;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">using</span> <a class="code" href="namespaceirutils.html#a8b74ae0258e98aa0eaebc6f3efe1481e">irutils::addModeToString</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">using</span> <a class="code" href="namespaceirutils.html#a1de74ec4ecc33ce0bac35964ea7ba821">irutils::addFanToString</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">using</span> <a class="code" href="namespaceirutils.html#a63e326858d646230b4c286a889e651a7">irutils::addTempToString</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">using</span> std::min;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">using</span> std::max;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">using</span> std::memcpy;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">using</span> std::memcmp;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">// Modes Bit[0] to Section 3 Bit[1-2] to Section 1</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">// ModeS3 ModeS1</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ae1b65b7d5d2a21fa03c4466233a78dc9"> 52</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#ae1b65b7d5d2a21fa03c4466233a78dc9">kBosch144Cool</a> = 0b000;</div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a6a32c659316f38e3fbaabfbc8d0a0916"> 53</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a6a32c659316f38e3fbaabfbc8d0a0916">kBosch144Dry</a> = 0b011;</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ae971649b89317b55905c71b90ac74c23"> 54</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#ae971649b89317b55905c71b90ac74c23">kBosch144Auto</a> = 0b101;</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#aa41021bc17297e00f3c565dc1f81c994"> 55</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#aa41021bc17297e00f3c565dc1f81c994">kBosch144Heat</a> = 0b110;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a300684692145a91ded17d87743cb3810"> 56</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a300684692145a91ded17d87743cb3810">kBosch144Fan</a> = 0b010;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">// Fan Control Bit[0-5] to Section 3 Bit[6-8] to Section 1</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">// FanS3 FanS1</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#abda383043be34f9e0af15460ee3d4094"> 60</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#abda383043be34f9e0af15460ee3d4094">kBosch144Fan20</a> = 0b111001010;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a97356715789abc8d671b604c4b0c8995"> 61</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a97356715789abc8d671b604c4b0c8995">kBosch144Fan40</a> = 0b100010100;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a9cfa60260f8c67a06248f3952a34a131"> 62</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a9cfa60260f8c67a06248f3952a34a131">kBosch144Fan60</a> = 0b010011110;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a96fbac4ef9a0879de1ea5b95af45c4f8"> 63</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a96fbac4ef9a0879de1ea5b95af45c4f8">kBosch144Fan80</a> = 0b001101000;</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a83d7eb073bb0df2b93c6df8537a0f241"> 64</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#a83d7eb073bb0df2b93c6df8537a0f241">kBosch144Fan100</a> = 0b001110010;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#af936a2563f263b9ef6d621679962269c"> 65</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#af936a2563f263b9ef6d621679962269c">kBosch144FanAuto</a> = 0b101110011;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#aafc6fa16ff4363e83ca38d78c753e7cb"> 66</a></span> <span class="keyword">const</span> uint16_t <a class="code" href="ir__Bosch_8h.html#aafc6fa16ff4363e83ca38d78c753e7cb">kBosch144FanAuto0</a> = 0b000110011;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// Temperature</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#ac8770a71650aa08bf7c72232cd103166"> 69</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#ac8770a71650aa08bf7c72232cd103166">kBosch144TempMin</a> = 16; <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a2ba01d6f896cf20ab4106027d4770064"> 70</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a2ba01d6f896cf20ab4106027d4770064">kBosch144TempMax</a> = 30; <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a7e1b33ab729c54bd23f9c1ca1f6a2ed3"> 71</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a7e1b33ab729c54bd23f9c1ca1f6a2ed3">kBosch144TempRange</a> = <a class="code" href="ir__Bosch_8h.html#a2ba01d6f896cf20ab4106027d4770064">kBosch144TempMax</a> - <a class="code" href="ir__Bosch_8h.html#ac8770a71650aa08bf7c72232cd103166">kBosch144TempMin</a> + 1;</div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a290c1d4209617cb3b079107526434eda"> 72</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a290c1d4209617cb3b079107526434eda">kBosch144TempMap</a>[<a class="code" href="ir__Bosch_8h.html#a7e1b33ab729c54bd23f9c1ca1f6a2ed3">kBosch144TempRange</a>] = {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  0b00001, <span class="comment">// 16C // Bit[0] to Section 3 Bit[1-4] to Section 1</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  0b00000, <span class="comment">// 17C // TempS3 TempS1</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  0b00010, <span class="comment">// 18c</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  0b00110, <span class="comment">// 19C</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  0b00100, <span class="comment">// 20C</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  0b01100, <span class="comment">// 21C</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  0b01110, <span class="comment">// 22C</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  0b01010, <span class="comment">// 23C</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  0b01000, <span class="comment">// 24C</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  0b11000, <span class="comment">// 25C</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  0b11010, <span class="comment">// 26C</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  0b10010, <span class="comment">// 27C</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  0b10000, <span class="comment">// 28C</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  0b10100, <span class="comment">// 29C</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  0b10110 <span class="comment">// 30C</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> };</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// "OFF" is a 96bit-message the same as Coolix protocol</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#a4d861103b77d2ff49587386bf2a947e1"> 91</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#a4d861103b77d2ff49587386bf2a947e1">kBosch144Off</a>[] = {0xB2, 0x4D, 0x7B, 0x84, 0xE0, 0x1F,</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  0xB2, 0x4D, 0x7B, 0x84, 0xE0, 0x1F};</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">// On, 25C, Mode: Auto</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="ir__Bosch_8h.html#acae2cc398c13bc4a798cf319267213cc"> 95</a></span> <span class="keyword">const</span> uint8_t <a class="code" href="ir__Bosch_8h.html#acae2cc398c13bc4a798cf319267213cc">kBosch144DefaultState</a>[<a class="code" href="IRremoteESP8266_8h.html#af87fb0ccdc4097e21c256581723499d8">kBosch144StateLength</a>] = {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  0xB2, 0x4D, 0x1F, 0xE0, 0xC8, 0x37,</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  0xB2, 0x4D, 0x1F, 0xE0, 0xC8, 0x37,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  0xD5, 0x65, 0x00, 0x00, 0x00, 0x3A};</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  </div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html"> 100</a></span> <span class="keyword">union </span><a class="code" href="unionBosch144Protocol.html">Bosch144Protocol</a> {</div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#af98f90f7a15cdf6558e1877279016c48"> 101</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#af98f90f7a15cdf6558e1877279016c48">raw</a>[<a class="code" href="IRremoteESP8266_8h.html#af87fb0ccdc4097e21c256581723499d8">kBosch144StateLength</a>]; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#aea2e87551b2c3a4d230d63b309136091"> 103</a></span>  uint8_t :8; <span class="comment">// Fixed value 0b10110010 / 0xB2. ############</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a85e4033c3a142be92ccf7b0372f79995"> 104</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a85e4033c3a142be92ccf7b0372f79995">InnvertS1_1</a>:8; <span class="comment">// Invert byte 0b01001101 / 0x4D #</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a728d753735315b082d83177a3cd4227d"> 105</a></span>  uint8_t :5; <span class="comment">// not used (without timer use) #</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a20e8e79e0fc2334dde077692a5c496b1"> 106</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a20e8e79e0fc2334dde077692a5c496b1">FanS1</a> :3; <span class="comment">// Fan speed bits in Section 1 #</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#abe02b2a88c8f1edc730d7daa20fc2dff"> 107</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#abe02b2a88c8f1edc730d7daa20fc2dff">InnvertS1_2</a>:8; <span class="comment">// Invert byte # Section 1 =</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#ac37a55f3440d355cdd8ad4f42b4f2af1"> 108</a></span>  uint8_t :2; <span class="comment">// not used (without timer use) # Sektion 2</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a911d69322cc55c210b3161f5a1bfc74e"> 109</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a911d69322cc55c210b3161f5a1bfc74e">ModeS1</a> :2; <span class="comment">// Operation mode bits S1 #</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#ab775eb7268299e4ad57750b2bb943643"> 110</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#ab775eb7268299e4ad57750b2bb943643">TempS1</a> :4; <span class="comment">// Desired temperature (Celsius) S2 #</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a9004617bd0ca8c321a4c41e2acdac641"> 111</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a9004617bd0ca8c321a4c41e2acdac641">InnvertS1_3</a>:8; <span class="comment">// Invert byte (without timer use) ############</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  </div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a5652d979ef01c888bf68b1473fd95ddc"> 113</a></span>  uint8_t :8; <span class="comment">// Fixed value 0b10110010 / 0xB2. ############</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a812fee7cbc06c63239fbf97355901f4e"> 114</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a812fee7cbc06c63239fbf97355901f4e">InnvertS2_1</a>:8; <span class="comment">// Invert byte 0b01001101 / 0x4D #</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a1934cbae9aabcea9ecd49728e901c30a"> 115</a></span>  uint8_t :5; <span class="comment">// not used (without timer use) #</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a89a4ec658b88c62b3132c47985655549"> 116</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a89a4ec658b88c62b3132c47985655549">FanS2</a> :3; <span class="comment">// Fan speed bits in Section 2 #</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#acb932cffdc91a8f6289a32ec283e351f"> 117</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#acb932cffdc91a8f6289a32ec283e351f">InnvertS2_2</a>:8; <span class="comment">// Invert byte # Section 2 =</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#aa01093d7cfab4936f02a7e09af858762"> 118</a></span>  uint8_t :2; <span class="comment">// not used (without timer use) # Sektion 1</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#ac6b0b38ae3bed7841ff92f506946ca8a"> 119</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#ac6b0b38ae3bed7841ff92f506946ca8a">ModeS2</a> :2; <span class="comment">// Operation mode bits S2 #</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a17073ac1488316cf373c069170850eb9"> 120</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a17073ac1488316cf373c069170850eb9">TempS2</a> :4; <span class="comment">// Desired temperature (Celsius) S2 #</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#ab838c6e66dfe14786f38e8841f9a7c41"> 121</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#ab838c6e66dfe14786f38e8841f9a7c41">InnvertS2_3</a>:8; <span class="comment">// Invert byte (without timer use) ###########</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  </div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a6a2ef6460e3a3f6f698c13ab6c189b83"> 123</a></span>  uint8_t :8; <span class="comment">// Fixed value 0b11010101 / 0xD5 ###########</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a49c94706d59d2034cda39e6fda173dd2"> 124</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a49c94706d59d2034cda39e6fda173dd2">ModeS3</a> :1; <span class="comment">// ModeBit in Section 3 #</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a24a5d88cd6077aa8c281ca095b9be399"> 125</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a24a5d88cd6077aa8c281ca095b9be399">FanS3</a> :6; <span class="comment">// Fan speed bits in Section 3 #</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#acf7e2827772785a440e85eb91af8b97e"> 126</a></span>  uint8_t :1; <span class="comment">// Unknown #</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a838b6fce42f250df13b0cb979311ca66"> 127</a></span>  uint8_t :7; <span class="comment">// Unknown #</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#ab4c76500e9c08fb21b54a6034fd473ce"> 128</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#ab4c76500e9c08fb21b54a6034fd473ce">Quiet</a> :1; <span class="comment">// Silent-Mode # Section 3</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a2409e951d1631dbc7413cb4e092c539c"> 129</a></span>  uint8_t :4; <span class="comment">// Unknown #</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#abe9133fc125b1c0584a59351fcf673c9"> 130</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#abe9133fc125b1c0584a59351fcf673c9">TempS3</a> :1; <span class="comment">// Desired temp. Bit in Section3 #</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#aa6bd80cbec0cf71313d927226023eb2b"> 131</a></span>  uint8_t :3; <span class="comment">// Unknown #</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#add5312de38150a36fce3b3751efb0fcb"> 132</a></span>  uint8_t :8; <span class="comment">// Unknown #</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="unionBosch144Protocol.html#a5036cc299459cf6aacd788204c2aaa17"> 133</a></span>  uint8_t <a class="code" href="unionBosch144Protocol.html#a5036cc299459cf6aacd788204c2aaa17">ChecksumS3</a> :8; <span class="comment">// Checksum from byte 13-17 ###########</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  };</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> };</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment">// Classes</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  </div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classIRBosch144AC.html"> 140</a></span> <span class="keyword">class </span><a class="code" href="classIRBosch144AC.html">IRBosch144AC</a> {</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keyword">explicit</span> <a class="code" href="classIRBosch144AC.html#a927a83361eebb8ce1810e6289662d1e9">IRBosch144AC</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a379cd5f290b6d1cd9d2c7e1d9cd8b960">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor">#if SEND_BOSCH144</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#ab75002829b14bfd9b85ac4cde5369300">send</a>(<span class="keyword">const</span> uint16_t repeat = 0);</div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classIRBosch144AC.html#ac5b82e8ff735d1f89d3382bc03b688b0"> 151</a></span>  int8_t <a class="code" href="classIRBosch144AC.html#ac5b82e8ff735d1f89d3382bc03b688b0">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRBosch144AC.html#a315dad009025d7b95b7454f40aa8d2a9">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor">#endif // SEND_BOSCH144</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#ab2e7548d9bcc134e31810e40036eb199">begin</a>();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#ae4ad87991dd0c63aa132fd72c410a387">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> state);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordtype">bool</span> <a class="code" href="classIRBosch144AC.html#a58f540b25925a0f44cde6616f766d4b9">getPower</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a01c620a1ecd3c6ca262234962125ec13">setTemp</a>(<span class="keyword">const</span> uint8_t temp);</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  uint8_t <a class="code" href="classIRBosch144AC.html#a3ff66233faa9b002bb5e82543857e14e">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#ad361336dde5ab727b7b2c469c6169f7b">setFan</a>(<span class="keyword">const</span> uint16_t speed);</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  uint16_t <a class="code" href="classIRBosch144AC.html#a567251b7ee42ac9d8e7390b5f275928b">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a97f787485d966e379d989fa90491a2b8">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  uint8_t <a class="code" href="classIRBosch144AC.html#a81777c309d9a56683f4ee153c274c4f2">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a8c04dd7a5119875de4034594ad83bfbe">setQuiet</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> on);</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keywordtype">bool</span> <a class="code" href="classIRBosch144AC.html#ae07f34367c11488fc4b0f1a31a83766e">getQuiet</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  uint8_t* <a class="code" href="classIRBosch144AC.html#aa30c55200c97e10bab856dd27bba64db">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a1966ed6666715438fb839bb2dc2f9521">setRaw</a>(<span class="keyword">const</span> uint8_t new_code[],</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#af87fb0ccdc4097e21c256581723499d8">kBosch144StateLength</a>);</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keyword">static</span> uint8_t <a class="code" href="classIRBosch144AC.html#af1e045d15cf1a48ec533ec8b812d7369">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keyword">static</span> uint16_t <a class="code" href="classIRBosch144AC.html#ab71895d6c6a3bc93425180ef063e0be2">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRBosch144AC.html#a879ca1a0f3c2f2e63d4ab5f691f0e0f9">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRBosch144AC.html#a1fd74c2ece890f4adf8fefc214fefe14">toCommonFanSpeed</a>(<span class="keyword">const</span> uint16_t speed);</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRBosch144AC.html#ae1dff3c4142ccdd1ae3c1f78f44fbc31">toCommon</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRBosch144AC.html#ad979fe20db3afc576dadab4df36f0209">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keyword">private</span>:</div>
<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classIRBosch144AC.html#a315dad009025d7b95b7454f40aa8d2a9"> 176</a></span>  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRBosch144AC.html#a315dad009025d7b95b7454f40aa8d2a9">_irsend</a>; </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor">#else</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  IRsendTest <a class="code" href="classIRBosch144AC.html#a315dad009025d7b95b7454f40aa8d2a9">_irsend</a>; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classIRBosch144AC.html#a323e8fc918658017b032a5523e50891d"> 182</a></span>  <a class="code" href="unionBosch144Protocol.html">Bosch144Protocol</a> <a class="code" href="classIRBosch144AC.html#a323e8fc918658017b032a5523e50891d">_</a>; </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  </div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="comment">// Internal State settings</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classIRBosch144AC.html#aabce2d83667eb2a06a56edc211e29bb1"> 185</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classIRBosch144AC.html#aabce2d83667eb2a06a56edc211e29bb1">powerFlag</a>;</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  </div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a590735ec72c5656c9088415307ca783c">setInvertBytes</a>();</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#ab11ee3ece12a6388e786c10c04ef6dda">setCheckSumS3</a>();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="keywordtype">void</span> <a class="code" href="classIRBosch144AC.html#a4d0bc1837f548015e6a2d9067316b3c7">setTempRaw</a>(<span class="keyword">const</span> uint8_t code);</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  uint8_t <a class="code" href="classIRBosch144AC.html#a16b349038a1c58a04658163ee92bf251">getTempRaw</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> };</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  </div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor">#endif // IR_BOSCH_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassIRBosch144AC_html_a323e8fc918658017b032a5523e50891d"><div class="ttname"><a href="classIRBosch144AC.html#a323e8fc918658017b032a5523e50891d">IRBosch144AC::_</a></div><div class="ttdeci">Bosch144Protocol _</div><div class="ttdoc">The state of the IR remote in IR code form.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:182</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ac5b82e8ff735d1f89d3382bc03b688b0"><div class="ttname"><a href="classIRBosch144AC.html#ac5b82e8ff735d1f89d3382bc03b688b0">IRBosch144AC::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:151</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a1fd74c2ece890f4adf8fefc214fefe14"><div class="ttname"><a href="classIRBosch144AC.html#a1fd74c2ece890f4adf8fefc214fefe14">IRBosch144AC::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint16_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:211</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a567251b7ee42ac9d8e7390b5f275928b"><div class="ttname"><a href="classIRBosch144AC.html#a567251b7ee42ac9d8e7390b5f275928b">IRBosch144AC::getFan</a></div><div class="ttdeci">uint16_t getFan(void) const</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:127</div></div>
<div class="ttc" id="air__Bosch_8h_html_ac6515523960e0d98d6d046aa4ba1421b"><div class="ttname"><a href="ir__Bosch_8h.html#ac6515523960e0d98d6d046aa4ba1421b">kBoschHdrSpace</a></div><div class="ttdeci">const uint16_t kBoschHdrSpace</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:33</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a5036cc299459cf6aacd788204c2aaa17"><div class="ttname"><a href="unionBosch144Protocol.html#a5036cc299459cf6aacd788204c2aaa17">Bosch144Protocol::ChecksumS3</a></div><div class="ttdeci">uint8_t ChecksumS3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:133</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a911d69322cc55c210b3161f5a1bfc74e"><div class="ttname"><a href="unionBosch144Protocol.html#a911d69322cc55c210b3161f5a1bfc74e">Bosch144Protocol::ModeS1</a></div><div class="ttdeci">uint8_t ModeS1</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:109</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_af87fb0ccdc4097e21c256581723499d8"><div class="ttname"><a href="IRremoteESP8266_8h.html#af87fb0ccdc4097e21c256581723499d8">kBosch144StateLength</a></div><div class="ttdeci">const uint16_t kBosch144StateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1168</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a16b349038a1c58a04658163ee92bf251"><div class="ttname"><a href="classIRBosch144AC.html#a16b349038a1c58a04658163ee92bf251">IRBosch144AC::getTempRaw</a></div><div class="ttdeci">uint8_t getTempRaw(void) const</div></div>
<div class="ttc" id="air__Bosch_8h_html_a7e42d2f410aed3cef58bac2f8a09cb06"><div class="ttname"><a href="ir__Bosch_8h.html#a7e42d2f410aed3cef58bac2f8a09cb06">kBoschFooterSpace</a></div><div class="ttdeci">const uint16_t kBoschFooterSpace</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:36</div></div>
<div class="ttc" id="air__Bosch_8h_html_aafc6fa16ff4363e83ca38d78c753e7cb"><div class="ttname"><a href="ir__Bosch_8h.html#aafc6fa16ff4363e83ca38d78c753e7cb">kBosch144FanAuto0</a></div><div class="ttdeci">const uint16_t kBosch144FanAuto0</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:66</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_ab4c76500e9c08fb21b54a6034fd473ce"><div class="ttname"><a href="unionBosch144Protocol.html#ab4c76500e9c08fb21b54a6034fd473ce">Bosch144Protocol::Quiet</a></div><div class="ttdeci">uint8_t Quiet</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:128</div></div>
<div class="ttc" id="anamespacestdAc_html_a8bb0dbf18fe69f639f4ac0b3ff133383"><div class="ttname"><a href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a></div><div class="ttdeci">fanspeed_t</div><div class="ttdoc">Common A/C settings for Fan Speeds.</div><div class="ttdef"><b>Definition:</b> IRsend.h:61</div></div>
<div class="ttc" id="air__Bosch_8h_html_ac8770a71650aa08bf7c72232cd103166"><div class="ttname"><a href="ir__Bosch_8h.html#ac8770a71650aa08bf7c72232cd103166">kBosch144TempMin</a></div><div class="ttdeci">const uint8_t kBosch144TempMin</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:69</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_ab838c6e66dfe14786f38e8841f9a7c41"><div class="ttname"><a href="unionBosch144Protocol.html#ab838c6e66dfe14786f38e8841f9a7c41">Bosch144Protocol::InnvertS2_3</a></div><div class="ttdeci">uint8_t InnvertS2_3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:121</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a01c620a1ecd3c6ca262234962125ec13"><div class="ttname"><a href="classIRBosch144AC.html#a01c620a1ecd3c6ca262234962125ec13">IRBosch144AC::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:103</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_abe9133fc125b1c0584a59351fcf673c9"><div class="ttname"><a href="unionBosch144Protocol.html#abe9133fc125b1c0584a59351fcf673c9">Bosch144Protocol::TempS3</a></div><div class="ttdeci">uint8_t TempS3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:130</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ab11ee3ece12a6388e786c10c04ef6dda"><div class="ttname"><a href="classIRBosch144AC.html#ab11ee3ece12a6388e786c10c04ef6dda">IRBosch144AC::setCheckSumS3</a></div><div class="ttdeci">void setCheckSumS3()</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:274</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_aa30c55200c97e10bab856dd27bba64db"><div class="ttname"><a href="classIRBosch144AC.html#aa30c55200c97e10bab856dd27bba64db">IRBosch144AC::getRaw</a></div><div class="ttdeci">uint8_t * getRaw(void)</div><div class="ttdoc">Get a copy of the internal state as a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:68</div></div>
<div class="ttc" id="air__Bosch_8h_html_ac45d61b421b7d326977e0d93ff52f954"><div class="ttname"><a href="ir__Bosch_8h.html#ac45d61b421b7d326977e0d93ff52f954">kBosch144NrOfSections</a></div><div class="ttdeci">const uint16_t kBosch144NrOfSections</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:38</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a879ca1a0f3c2f2e63d4ab5f691f0e0f9"><div class="ttname"><a href="classIRBosch144AC.html#a879ca1a0f3c2f2e63d4ab5f691f0e0f9">IRBosch144AC::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:198</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a58f540b25925a0f44cde6616f766d4b9"><div class="ttname"><a href="classIRBosch144AC.html#a58f540b25925a0f44cde6616f766d4b9">IRBosch144AC::getPower</a></div><div class="ttdeci">bool getPower(void) const</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:92</div></div>
<div class="ttc" id="aIRsend_8h_html"><div class="ttname"><a href="IRsend_8h.html">IRsend.h</a></div></div>
<div class="ttc" id="air__Bosch_8h_html_af936a2563f263b9ef6d621679962269c"><div class="ttname"><a href="ir__Bosch_8h.html#af936a2563f263b9ef6d621679962269c">kBosch144FanAuto</a></div><div class="ttdeci">const uint16_t kBosch144FanAuto</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:65</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ab75002829b14bfd9b85ac4cde5369300"><div class="ttname"><a href="classIRBosch144AC.html#ab75002829b14bfd9b85ac4cde5369300">IRBosch144AC::send</a></div><div class="ttdeci">void send(const uint16_t repeat=0)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:57</div></div>
<div class="ttc" id="air__Bosch_8h_html_a97356715789abc8d671b604c4b0c8995"><div class="ttname"><a href="ir__Bosch_8h.html#a97356715789abc8d671b604c4b0c8995">kBosch144Fan40</a></div><div class="ttdeci">const uint16_t kBosch144Fan40</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:61</div></div>
<div class="ttc" id="anamespaceirutils_html_a8b74ae0258e98aa0eaebc6f3efe1481e"><div class="ttname"><a href="namespaceirutils.html#a8b74ae0258e98aa0eaebc6f3efe1481e">irutils::addModeToString</a></div><div class="ttdeci">String addModeToString(const uint8_t mode, const uint8_t automatic, const uint8_t cool, const uint8_t heat, const uint8_t dry, const uint8_t fan)</div><div class="ttdoc">Create a String of human output for the given operating mode. e.g. "Mode: 1 (Cool)".</div><div class="ttdef"><b>Definition:</b> IRutils.cpp:770</div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Class for sending all basic IR protocols.</div><div class="ttdef"><b>Definition:</b> IRsend.h:237</div></div>
<div class="ttc" id="air__Bosch_8h_html_a4d861103b77d2ff49587386bf2a947e1"><div class="ttname"><a href="ir__Bosch_8h.html#a4d861103b77d2ff49587386bf2a947e1">kBosch144Off</a></div><div class="ttdeci">const uint8_t kBosch144Off[]</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:91</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a49c94706d59d2034cda39e6fda173dd2"><div class="ttname"><a href="unionBosch144Protocol.html#a49c94706d59d2034cda39e6fda173dd2">Bosch144Protocol::ModeS3</a></div><div class="ttdeci">uint8_t ModeS3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:124</div></div>
<div class="ttc" id="aclassIRsend_html_ad1776aa6c699f9eeca1eef9bb4fe355b"><div class="ttname"><a href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">IRsend::calibrate</a></div><div class="ttdeci">int8_t calibrate(uint16_t hz=38000U)</div><div class="ttdoc">Calculate & set any offsets to account for execution times during sending.</div><div class="ttdef"><b>Definition:</b> IRsend.cpp:207</div></div>
<div class="ttc" id="air__Bosch_8h_html_a2ba01d6f896cf20ab4106027d4770064"><div class="ttname"><a href="ir__Bosch_8h.html#a2ba01d6f896cf20ab4106027d4770064">kBosch144TempMax</a></div><div class="ttdeci">const uint8_t kBosch144TempMax</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:70</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a17073ac1488316cf373c069170850eb9"><div class="ttname"><a href="unionBosch144Protocol.html#a17073ac1488316cf373c069170850eb9">Bosch144Protocol::TempS2</a></div><div class="ttdeci">uint8_t TempS2</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:120</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afbeda3fd1bdc8c37d01bdf9f5c8274ff"><div class="ttname"><a href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a></div><div class="ttdeci">std::string String</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1521</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a8c04dd7a5119875de4034594ad83bfbe"><div class="ttname"><a href="classIRBosch144AC.html#a8c04dd7a5119875de4034594ad83bfbe">IRBosch144AC::setQuiet</a></div><div class="ttdeci">void setQuiet(const bool on)</div><div class="ttdoc">Set the Quiet mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:148</div></div>
<div class="ttc" id="air__Bosch_8h_html_a83d7eb073bb0df2b93c6df8537a0f241"><div class="ttname"><a href="ir__Bosch_8h.html#a83d7eb073bb0df2b93c6df8537a0f241">kBosch144Fan100</a></div><div class="ttdeci">const uint16_t kBosch144Fan100</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:64</div></div>
<div class="ttc" id="air__Bosch_8h_html_a441cbba39ea68a84b1c7eb73da6c2042"><div class="ttname"><a href="ir__Bosch_8h.html#a441cbba39ea68a84b1c7eb73da6c2042">kBosch144BytesPerSection</a></div><div class="ttdeci">const uint16_t kBosch144BytesPerSection</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:39</div></div>
<div class="ttc" id="air__Bosch_8h_html_aadc63aebf2d5196fb04c738e7f55b962"><div class="ttname"><a href="ir__Bosch_8h.html#aadc63aebf2d5196fb04c738e7f55b962">kBoschHdrMark</a></div><div class="ttdeci">const uint16_t kBoschHdrMark</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:31</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ab2e7548d9bcc134e31810e40036eb199"><div class="ttname"><a href="classIRBosch144AC.html#ab2e7548d9bcc134e31810e40036eb199">IRBosch144AC::begin</a></div><div class="ttdeci">void begin()</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:52</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a927a83361eebb8ce1810e6289662d1e9"><div class="ttname"><a href="classIRBosch144AC.html#a927a83361eebb8ce1810e6289662d1e9">IRBosch144AC::IRBosch144AC</a></div><div class="ttdeci">IRBosch144AC(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:41</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ae07f34367c11488fc4b0f1a31a83766e"><div class="ttname"><a href="classIRBosch144AC.html#ae07f34367c11488fc4b0f1a31a83766e">IRBosch144AC::getQuiet</a></div><div class="ttdeci">bool getQuiet(void) const</div><div class="ttdoc">Get the Quiet mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:155</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html"><div class="ttname"><a href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a></div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a1966ed6666715438fb839bb2dc2f9521"><div class="ttname"><a href="classIRBosch144AC.html#a1966ed6666715438fb839bb2dc2f9521">IRBosch144AC::setRaw</a></div><div class="ttdeci">void setRaw(const uint8_t new_code[], const uint16_t length=kBosch144StateLength)</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:77</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a24a5d88cd6077aa8c281ca095b9be399"><div class="ttname"><a href="unionBosch144Protocol.html#a24a5d88cd6077aa8c281ca095b9be399">Bosch144Protocol::FanS3</a></div><div class="ttdeci">uint8_t FanS3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:125</div></div>
<div class="ttc" id="air__Bosch_8h_html_a96fbac4ef9a0879de1ea5b95af45c4f8"><div class="ttname"><a href="ir__Bosch_8h.html#a96fbac4ef9a0879de1ea5b95af45c4f8">kBosch144Fan80</a></div><div class="ttdeci">const uint16_t kBosch144Fan80</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:63</div></div>
<div class="ttc" id="anamespaceirutils_html_a63e326858d646230b4c286a889e651a7"><div class="ttname"><a href="namespaceirutils.html#a63e326858d646230b4c286a889e651a7">irutils::addTempToString</a></div><div class="ttdeci">String addTempToString(const uint16_t degrees, const bool celsius, const bool precomma, const bool isSensorTemp)</div><div class="ttdoc">Create a String of human output for a given temperature. e.g. "Temp: 25C".</div><div class="ttdef"><b>Definition:</b> IRutils.cpp:733</div></div>
<div class="ttc" id="air__Bosch_8h_html_acae2cc398c13bc4a798cf319267213cc"><div class="ttname"><a href="ir__Bosch_8h.html#acae2cc398c13bc4a798cf319267213cc">kBosch144DefaultState</a></div><div class="ttdeci">const uint8_t kBosch144DefaultState[kBosch144StateLength]</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:95</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a3ff66233faa9b002bb5e82543857e14e"><div class="ttname"><a href="classIRBosch144AC.html#a3ff66233faa9b002bb5e82543857e14e">IRBosch144AC::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:109</div></div>
<div class="ttc" id="air__Bosch_8h_html_a18b51b04770e85adc8f9d0dea16c07a2"><div class="ttname"><a href="ir__Bosch_8h.html#a18b51b04770e85adc8f9d0dea16c07a2">kBoschOneSpace</a></div><div class="ttdeci">const uint16_t kBoschOneSpace</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:34</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_abe02b2a88c8f1edc730d7daa20fc2dff"><div class="ttname"><a href="unionBosch144Protocol.html#abe02b2a88c8f1edc730d7daa20fc2dff">Bosch144Protocol::InnvertS1_2</a></div><div class="ttdeci">uint8_t InnvertS1_2</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:107</div></div>
<div class="ttc" id="air__Bosch_8h_html_ae971649b89317b55905c71b90ac74c23"><div class="ttname"><a href="ir__Bosch_8h.html#ae971649b89317b55905c71b90ac74c23">kBosch144Auto</a></div><div class="ttdeci">const uint8_t kBosch144Auto</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:54</div></div>
<div class="ttc" id="air__Bosch_8h_html_a300684692145a91ded17d87743cb3810"><div class="ttname"><a href="ir__Bosch_8h.html#a300684692145a91ded17d87743cb3810">kBosch144Fan</a></div><div class="ttdeci">const uint8_t kBosch144Fan</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:56</div></div>
<div class="ttc" id="air__Bosch_8h_html_ae231af130976f79d9a96ea6c5733fa87"><div class="ttname"><a href="ir__Bosch_8h.html#ae231af130976f79d9a96ea6c5733fa87">kBoschBitMark</a></div><div class="ttdeci">const uint16_t kBoschBitMark</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:32</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_ac6b0b38ae3bed7841ff92f506946ca8a"><div class="ttname"><a href="unionBosch144Protocol.html#ac6b0b38ae3bed7841ff92f506946ca8a">Bosch144Protocol::ModeS2</a></div><div class="ttdeci">uint8_t ModeS2</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:119</div></div>
<div class="ttc" id="aIRrecv_8h_html"><div class="ttname"><a href="IRrecv_8h.html">IRrecv.h</a></div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a85e4033c3a142be92ccf7b0372f79995"><div class="ttname"><a href="unionBosch144Protocol.html#a85e4033c3a142be92ccf7b0372f79995">Bosch144Protocol::InnvertS1_1</a></div><div class="ttdeci">uint8_t InnvertS1_1</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:104</div></div>
<div class="ttc" id="aIRutils_8h_html"><div class="ttname"><a href="IRutils_8h.html">IRutils.h</a></div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a20e8e79e0fc2334dde077692a5c496b1"><div class="ttname"><a href="unionBosch144Protocol.html#a20e8e79e0fc2334dde077692a5c496b1">Bosch144Protocol::FanS1</a></div><div class="ttdeci">uint8_t FanS1</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:106</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ae1dff3c4142ccdd1ae3c1f78f44fbc31"><div class="ttname"><a href="classIRBosch144AC.html#ae1dff3c4142ccdd1ae3c1f78f44fbc31">IRBosch144AC::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:224</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a379cd5f290b6d1cd9d2c7e1d9cd8b960"><div class="ttname"><a href="classIRBosch144AC.html#a379cd5f290b6d1cd9d2c7e1d9cd8b960">IRBosch144AC::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state to a fixed known good state.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:46</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a315dad009025d7b95b7454f40aa8d2a9"><div class="ttname"><a href="classIRBosch144AC.html#a315dad009025d7b95b7454f40aa8d2a9">IRBosch144AC::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:176</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a97f787485d966e379d989fa90491a2b8"><div class="ttname"><a href="classIRBosch144AC.html#a97f787485d966e379d989fa90491a2b8">IRBosch144AC::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the desired operation mode.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:133</div></div>
<div class="ttc" id="aIRtext_8h_html"><div class="ttname"><a href="IRtext_8h.html">IRtext.h</a></div></div>
<div class="ttc" id="air__Bosch_8h_html_abda383043be34f9e0af15460ee3d4094"><div class="ttname"><a href="ir__Bosch_8h.html#abda383043be34f9e0af15460ee3d4094">kBosch144Fan20</a></div><div class="ttdeci">const uint16_t kBosch144Fan20</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:60</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ad361336dde5ab727b7b2c469c6169f7b"><div class="ttname"><a href="classIRBosch144AC.html#ad361336dde5ab727b7b2c469c6169f7b">IRBosch144AC::setFan</a></div><div class="ttdeci">void setFan(const uint16_t speed)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:122</div></div>
<div class="ttc" id="air__Bosch_8h_html_a290c1d4209617cb3b079107526434eda"><div class="ttname"><a href="ir__Bosch_8h.html#a290c1d4209617cb3b079107526434eda">kBosch144TempMap</a></div><div class="ttdeci">const uint8_t kBosch144TempMap[kBosch144TempRange]</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:72</div></div>
<div class="ttc" id="air__Bosch_8h_html_a6a32c659316f38e3fbaabfbc8d0a0916"><div class="ttname"><a href="ir__Bosch_8h.html#a6a32c659316f38e3fbaabfbc8d0a0916">kBosch144Dry</a></div><div class="ttdeci">const uint8_t kBosch144Dry</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:53</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_aabce2d83667eb2a06a56edc211e29bb1"><div class="ttname"><a href="classIRBosch144AC.html#aabce2d83667eb2a06a56edc211e29bb1">IRBosch144AC::powerFlag</a></div><div class="ttdeci">bool powerFlag</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:185</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a9004617bd0ca8c321a4c41e2acdac641"><div class="ttname"><a href="unionBosch144Protocol.html#a9004617bd0ca8c321a4c41e2acdac641">Bosch144Protocol::InnvertS1_3</a></div><div class="ttdeci">uint8_t InnvertS1_3</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:111</div></div>
<div class="ttc" id="anamespaceirutils_html_a12ba9cf1830a886649a80c3cc5fdce2b"><div class="ttname"><a href="namespaceirutils.html#a12ba9cf1830a886649a80c3cc5fdce2b">irutils::addBoolToString</a></div><div class="ttdeci">String addBoolToString(const bool value, const String label, const bool precomma)</div><div class="ttdoc">Create a String with a colon separated flag suitable for Humans. e.g. "Power: On".</div><div class="ttdef"><b>Definition:</b> IRutils.cpp:553</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ab71895d6c6a3bc93425180ef063e0be2"><div class="ttname"><a href="classIRBosch144AC.html#ab71895d6c6a3bc93425180ef063e0be2">IRBosch144AC::convertFan</a></div><div class="ttdeci">static uint16_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:178</div></div>
<div class="ttc" id="anamespaceirutils_html_a1de74ec4ecc33ce0bac35964ea7ba821"><div class="ttname"><a href="namespaceirutils.html#a1de74ec4ecc33ce0bac35964ea7ba821">irutils::addFanToString</a></div><div class="ttdeci">String addFanToString(const uint8_t speed, const uint8_t high, const uint8_t low, const uint8_t automatic, const uint8_t quiet, const uint8_t medium, const uint8_t maximum, const uint8_t medium_high)</div><div class="ttdoc">Create a String of human output for the given fan speed. e.g. "Fan: 0 (Auto)".</div><div class="ttdef"><b>Definition:</b> IRutils.cpp:837</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_af1e045d15cf1a48ec533ec8b812d7369"><div class="ttname"><a href="classIRBosch144AC.html#af1e045d15cf1a48ec533ec8b812d7369">IRBosch144AC::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:160</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a81777c309d9a56683f4ee153c274c4f2"><div class="ttname"><a href="classIRBosch144AC.html#a81777c309d9a56683f4ee153c274c4f2">IRBosch144AC::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:142</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_af98f90f7a15cdf6558e1877279016c48"><div class="ttname"><a href="unionBosch144Protocol.html#af98f90f7a15cdf6558e1877279016c48">Bosch144Protocol::raw</a></div><div class="ttdeci">uint8_t raw[kBosch144StateLength]</div><div class="ttdoc">The state in IR code form.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:101</div></div>
<div class="ttc" id="air__Bosch_8h_html_a9cfa60260f8c67a06248f3952a34a131"><div class="ttname"><a href="ir__Bosch_8h.html#a9cfa60260f8c67a06248f3952a34a131">kBosch144Fan60</a></div><div class="ttdeci">const uint16_t kBosch144Fan60</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:62</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_acb932cffdc91a8f6289a32ec283e351f"><div class="ttname"><a href="unionBosch144Protocol.html#acb932cffdc91a8f6289a32ec283e351f">Bosch144Protocol::InnvertS2_2</a></div><div class="ttdeci">uint8_t InnvertS2_2</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:117</div></div>
<div class="ttc" id="air__Bosch_8h_html_a7e1b33ab729c54bd23f9c1ca1f6a2ed3"><div class="ttname"><a href="ir__Bosch_8h.html#a7e1b33ab729c54bd23f9c1ca1f6a2ed3">kBosch144TempRange</a></div><div class="ttdeci">const uint8_t kBosch144TempRange</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:71</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ad979fe20db3afc576dadab4df36f0209"><div class="ttname"><a href="classIRBosch144AC.html#ad979fe20db3afc576dadab4df36f0209">IRBosch144AC::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:250</div></div>
<div class="ttc" id="air__Bosch_8h_html_ae1b65b7d5d2a21fa03c4466233a78dc9"><div class="ttname"><a href="ir__Bosch_8h.html#ae1b65b7d5d2a21fa03c4466233a78dc9">kBosch144Cool</a></div><div class="ttdeci">const uint8_t kBosch144Cool</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:52</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a590735ec72c5656c9088415307ca783c"><div class="ttname"><a href="classIRBosch144AC.html#a590735ec72c5656c9088415307ca783c">IRBosch144AC::setInvertBytes</a></div><div class="ttdeci">void setInvertBytes()</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:268</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_ab775eb7268299e4ad57750b2bb943643"><div class="ttname"><a href="unionBosch144Protocol.html#ab775eb7268299e4ad57750b2bb943643">Bosch144Protocol::TempS1</a></div><div class="ttdeci">uint8_t TempS1</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:110</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_a4d0bc1837f548015e6a2d9067316b3c7"><div class="ttname"><a href="classIRBosch144AC.html#a4d0bc1837f548015e6a2d9067316b3c7">IRBosch144AC::setTempRaw</a></div><div class="ttdeci">void setTempRaw(const uint8_t code)</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:96</div></div>
<div class="ttc" id="air__Bosch_8h_html_a3cfa01af62a0e1c3d507488dd5e1f05c"><div class="ttname"><a href="ir__Bosch_8h.html#a3cfa01af62a0e1c3d507488dd5e1f05c">kBoschZeroSpace</a></div><div class="ttdeci">const uint16_t kBoschZeroSpace</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:35</div></div>
<div class="ttc" id="air__Bosch_8h_html_a4b96eb4a16f1711be9e836ba593fcbb3"><div class="ttname"><a href="ir__Bosch_8h.html#a4b96eb4a16f1711be9e836ba593fcbb3">kBoschFreq</a></div><div class="ttdeci">const uint16_t kBoschFreq</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:37</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a89a4ec658b88c62b3132c47985655549"><div class="ttname"><a href="unionBosch144Protocol.html#a89a4ec658b88c62b3132c47985655549">Bosch144Protocol::FanS2</a></div><div class="ttdeci">uint8_t FanS2</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:116</div></div>
<div class="ttc" id="aunionBosch144Protocol_html_a812fee7cbc06c63239fbf97355901f4e"><div class="ttname"><a href="unionBosch144Protocol.html#a812fee7cbc06c63239fbf97355901f4e">Bosch144Protocol::InnvertS2_1</a></div><div class="ttdeci">uint8_t InnvertS2_1</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:114</div></div>
<div class="ttc" id="astructstdAc_1_1state__t_html"><div class="ttname"><a href="structstdAc_1_1state__t.html">stdAc::state_t</a></div><div class="ttdoc">Structure to hold a common A/C state.</div><div class="ttdef"><b>Definition:</b> IRsend.h:114</div></div>
<div class="ttc" id="aunionBosch144Protocol_html"><div class="ttname"><a href="unionBosch144Protocol.html">Bosch144Protocol</a></div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:100</div></div>
<div class="ttc" id="air__Bosch_8h_html_aa41021bc17297e00f3c565dc1f81c994"><div class="ttname"><a href="ir__Bosch_8h.html#aa41021bc17297e00f3c565dc1f81c994">kBosch144Heat</a></div><div class="ttdeci">const uint8_t kBosch144Heat</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:55</div></div>
<div class="ttc" id="aclassIRBosch144AC_html_ae4ad87991dd0c63aa132fd72c410a387"><div class="ttname"><a href="classIRBosch144AC.html#ae4ad87991dd0c63aa132fd72c410a387">IRBosch144AC::setPower</a></div><div class="ttdeci">void setPower(const bool state)</div><div class="ttdef"><b>Definition:</b> ir_Bosch.cpp:88</div></div>
<div class="ttc" id="aclassIRBosch144AC_html"><div class="ttname"><a href="classIRBosch144AC.html">IRBosch144AC</a></div><div class="ttdoc">Class for handling detailed Bosch144 A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Bosch.h:140</div></div>
<div class="ttc" id="anamespacestdAc_html_a99ad268c783486f9b3207cb78f48444f"><div class="ttname"><a href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a></div><div class="ttdeci">opmode_t</div><div class="ttdoc">Common A/C settings for A/C operating modes.</div><div class="ttdef"><b>Definition:</b> IRsend.h:49</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>