Control a Heat & Glo fireplace via RF remote

But I need something for that [transmitter] to plug into. Could I use this, and plug this into the USB port of my HAOS machine?

You linked a ESP01 programmer, rather than an ESP01 board. You want to connect the transmitter into the ESP01 board itself. You can then program the ESP01 with the ESP01 programmer you linked. See the writeup here for ESP01 programming.

You could instead use a slightly more expensive ESP32 that you can plug directly into your computer to program or into a power brick once it’s all working. This is significantly easier to deal with.

(Note my links aren’t recommendations, just the first refs I saw on Amazon. Lots of options.)

Ok, I edited this post because I figured out the config stuff I needed to put before your code. It’s compiling and I now have the device in Home Assistant. I can click the buttons in the HA dashboard and my receive is seeing the codes but fireplace isn’t doing anything. Troubleshooting still on going…

edit: Looks like a few people have figured out there is some differences in the commands even in the same model. (GitHub discussion). I’m guessing that’s why my codes aren’t functioning. I can see the codes transmitting from ESPHome, and they are slightly different from the codes I see when using the remote. Maybe the reason the β€œprogram” function worked for some other above was that it changed the headers/messages until it matched up with your code

Some of the comments in that GitHub discussion you linked are mine and link to my fork of this code. I figured out most of the protocol and what all the bits do. I then made an esp8266 board similar to the poster on this forum thread did.

Here is my repo. I just added my esphome yaml and some other details to my repo. As I look at this now I kinda don’t like how it’s setup but I probably won’t change it anytime soon. It’s been stable for 5 years now as it is so I don’t wanna play with fire… metaphorically.

I’ll be giving this a try if I can get my Arduino working again. I think I bricked it, and it was acting as my 433 mhz receiver since it had a 5v pin. Thanks for linking

So I got my ESP32 recording some raw data on the 433 mhz receiver. The signals I captured are below after pressing the β€œPower On” button.

20:11:32.819 β†’ *** RAW SIGNAL CAPTURED ***
20:11:32.819 β†’ Pulse count: 200
20:11:32.819 β†’ Timings (microseconds):
20:11:32.819 β†’ 988, 1011, 978, 1004, 1020, 995, 995, 1011, 980, 1010,
20:11:32.819 β†’ 1015, 984, 1011, 989, 1006, 982, 1019, 990, 1017, 974,
20:11:32.819 β†’ 1013, 989, 1021, 981, 1013, 988, 1022, 978, 1012, 995,
20:11:32.819 β†’ 1013, 982, 1018, 984, 1012, 979, 1019, 977, 1025, 979,
20:11:32.819 β†’ 1022, 991, 1015, 976, 1017, 984, 1017, 983, 1011, 990,
20:11:32.851 β†’ 1014, 982, 1022, 985, 1021, 975, 1022, 977, 1016, 990,
20:11:32.851 β†’ 1015, 986, 1017, 984, 1006, 989, 1012, 982, 1025, 980,
20:11:32.851 β†’ 1014, 990, 1005, 991, 1013, 984, 1014, 992, 1014, 977,
20:11:32.851 β†’ 1021, 983, 1018, 977, 1020, 978, 1024, 982, 1020, 984,
20:11:32.851 β†’ 1014, 977, 1019, 984, 1016, 980, 1030, 972, 1018, 994,
20:11:32.851 β†’ 1022, 963, 1025, 980, 1023, 986, 1017, 982, 1008, 989,
20:11:32.851 β†’ 1022, 976, 1020, 982, 1020, 982, 1013, 989, 1015, 977,
20:11:32.883 β†’ 1026, 973, 1024, 983, 1009, 987, 1016, 979, 1037, 969,
20:11:32.883 β†’ 1014, 989, 1017, 979, 1027, 969, 1029, 977, 1011, 986,
20:11:32.883 β†’ 1029, 966, 1034, 976, 1020, 973, 1021, 987, 1009, 995,
20:11:32.883 β†’ 1010, 981, 1020, 980, 1043, 951, 1024, 983, 1021, 986,
20:11:32.883 β†’ 1009, 984, 1033, 967, 1019, 983, 1021, 974, 1024, 986,
20:11:32.883 β†’ 1013, 980, 1021, 973, 1027, 975, 1020, 979, 1030, 971,
20:11:32.883 β†’ 1026, 977, 1019, 976, 1030, 975, 1018, 985, 1035, 965,
20:11:32.916 β†’ 1008, 989, 1016, 984, 1029, 964, 1033, 974, 1020, 984
20:11:32.916 β†’
20:11:32.916 β†’
20:11:32.916 β†’ Signal Analysis:
20:11:32.916 β†’ Shortest pulse: 951 ΞΌs
20:11:32.916 β†’ Longest pulse: 1043 ΞΌs
20:11:32.916 β†’ Ratio: 1.10

20:11:33.113 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.113 β†’ Pulse count: 117
20:11:33.113 β†’ Timings (microseconds):
20:11:33.145 β†’ 1101, 949, 1033, 969, 1041, 966, 1035, 957, 1042, 957,
20:11:33.145 β†’ 1038, 963, 1032, 967, 1102, 380, 423, 378, 922, 384,
20:11:33.145 β†’ 419, 1201, 426, 638, 924, 657, 424, 640, 923, 659,
20:11:33.145 β†’ 421, 648, 421, 646, 422, 642, 922, 1466, 424, 645,
20:11:33.145 β†’ 423, 641, 923, 655, 920, 656, 919, 660, 915, 662,
20:11:33.145 β†’ 913, 668, 413, 1462, 416, 651, 418, 646, 918, 659,
20:11:33.145 β†’ 916, 665, 415, 655, 415, 648, 915, 663, 912, 1475,
20:11:33.177 β†’ 416, 653, 415, 652, 417, 652, 416, 652, 418, 650,
20:11:33.177 β†’ 418, 649, 420, 644, 920, 1469, 421, 647, 421, 648,
20:11:33.177 β†’ 421, 641, 923, 655, 920, 662, 417, 651, 419, 649,
20:11:33.177 β†’ 419, 1451, 922, 655, 922, 655, 920, 662, 418, 651,
20:11:33.177 β†’ 419, 645, 917, 660, 915, 662, 914
20:11:33.177 β†’
20:11:33.177 β†’ Signal Analysis:
20:11:33.177 β†’ Shortest pulse: 378 ΞΌs
20:11:33.177 β†’ Longest pulse: 1475 ΞΌs
20:11:33.177 β†’ Ratio: 3.90

20:11:33.275 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.275 β†’ Pulse count: 24
20:11:33.308 β†’ Timings (microseconds):
20:11:33.308 β†’ 664, 911, 671, 409, 660, 409, 659, 409, 1460, 913,
20:11:33.308 β†’ 665, 912, 665, 910, 672, 409, 658, 409, 655, 910,
20:11:33.308 β†’ 667, 908, 670, 906
20:11:33.308 β†’
20:11:33.308 β†’ Signal Analysis:
20:11:33.308 β†’ Shortest pulse: 409 ΞΌs
20:11:33.308 β†’ Longest pulse: 1460 ΞΌs
20:11:33.308 β†’ Ratio: 3.57

20:11:33.406 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.406 β†’ Pulse count: 84
20:11:33.406 β†’ Timings (microseconds):
20:11:33.406 β†’ 640, 428, 636, 929, 1460, 430, 638, 429, 635, 930,
20:11:33.406 β†’ 647, 928, 651, 922, 655, 922, 655, 920, 663, 416,
20:11:33.438 β†’ 1459, 419, 648, 421, 644, 920, 656, 919, 663, 416,
20:11:33.438 β†’ 653, 417, 646, 919, 660, 913, 1474, 417, 651, 417,
20:11:33.438 β†’ 651, 418, 651, 417, 650, 419, 650, 418, 650, 419,
20:11:33.438 β†’ 644, 919, 1470, 420, 648, 421, 647, 421, 643, 920,
20:11:33.438 β†’ 659, 916, 665, 416, 652, 416, 651, 418, 1454, 919,
20:11:33.438 β†’ 658, 916, 662, 914, 669, 410, 657, 412, 652, 911,
20:11:33.438 β†’ 667, 909, 669, 905
20:11:33.438 β†’
20:11:33.438 β†’ Signal Analysis:
20:11:33.438 β†’ Shortest pulse: 410 ΞΌs
20:11:33.471 β†’ Longest pulse: 1474 ΞΌs
20:11:33.471 β†’ Ratio: 3.60

20:11:33.603 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.603 β†’ Pulse count: 103
20:11:33.603 β†’ Timings (microseconds):
20:11:33.635 β†’ 957, 387, 418, 383, 915, 391, 414, 1204, 422, 642,
20:11:33.635 β†’ 922, 660, 421, 643, 920, 661, 419, 650, 418, 649,
20:11:33.635 β†’ 421, 643, 921, 1466, 425, 642, 426, 639, 924, 654,
20:11:33.635 β†’ 921, 657, 919, 659, 916, 661, 915, 666, 414, 1460,
20:11:33.635 β†’ 419, 649, 420, 645, 919, 657, 918, 664, 417, 651,
20:11:33.635 β†’ 417, 648, 916, 661, 914, 1475, 416, 651, 416, 651,
20:11:33.635 β†’ 419, 650, 418, 650, 419, 649, 420, 648, 420, 645,
20:11:33.635 β†’ 918, 1470, 421, 646, 422, 648, 421, 642, 922, 656,
20:11:33.668 β†’ 919, 663, 416, 651, 422, 647, 417, 1454, 920, 658,
20:11:33.668 β†’ 916, 661, 914, 668, 413, 655, 413, 651, 913, 665,
20:11:33.668 β†’ 910, 668, 907
20:11:33.668 β†’
20:11:33.668 β†’ Signal Analysis:
20:11:33.668 β†’ Shortest pulse: 383 ΞΌs
20:11:33.668 β†’ Longest pulse: 1475 ΞΌs
20:11:33.668 β†’ Ratio: 3.85

20:11:33.766 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.766 β†’ Pulse count: 35
20:11:33.766 β†’ Timings (microseconds):
20:11:33.799 β†’ 405, 662, 902, 1480, 409, 661, 408, 659, 409, 656,
20:11:33.799 β†’ 910, 666, 908, 676, 404, 663, 407, 660, 408, 1463,
20:11:33.799 β†’ 910, 667, 908, 670, 905, 678, 403, 664, 404, 660,
20:11:33.799 β†’ 906, 671, 904, 673, 902
20:11:33.799 β†’
20:11:33.799 β†’ Signal Analysis:
20:11:33.799 β†’ Shortest pulse: 403 ΞΌs
20:11:33.799 β†’ Longest pulse: 1480 ΞΌs
20:11:33.799 β†’ Ratio: 3.67

20:11:33.930 β†’ *** RAW SIGNAL CAPTURED ***
20:11:33.930 β†’ Pulse count: 79
20:11:33.930 β†’ Timings (microseconds):
20:11:33.930 β†’ 402, 666, 404, 659, 904, 675, 900, 677, 898, 680,
20:11:33.930 β†’ 896, 681, 894, 688, 391, 1483, 397, 670, 400, 664,
20:11:33.930 β†’ 899, 679, 896, 684, 397, 672, 397, 666, 898, 681,
20:11:33.930 β†’ 894, 1492, 399, 670, 399, 668, 401, 668, 400, 666,
20:11:33.930 β†’ 403, 664, 406, 663, 405, 658, 907, 1481, 409, 658,
20:11:33.963 β†’ 410, 659, 411, 652, 912, 665, 910, 672, 409, 658,
20:11:33.963 β†’ 410, 657, 412, 1459, 915, 662, 914, 662, 913, 670,
20:11:33.963 β†’ 411, 657, 412, 650, 915, 664, 911, 668, 908
20:11:33.963 β†’
20:11:33.963 β†’ Signal Analysis:
20:11:33.963 β†’ Shortest pulse: 391 ΞΌs
20:11:33.963 β†’ Longest pulse: 1492 ΞΌs
20:11:33.963 β†’ Ratio: 3.82

20:11:34.061 β†’ *** RAW SIGNAL CAPTURED ***
20:11:34.061 β†’ Pulse count: 76
20:11:34.061 β†’ Timings (microseconds):
20:11:34.061 β†’ 616, 947, 632, 942, 637, 937, 641, 934, 644, 929,
20:11:34.061 β†’ 654, 426, 1449, 429, 639, 429, 635, 928, 652, 923,
20:11:34.093 β†’ 659, 420, 649, 419, 646, 917, 660, 915, 1473, 415,
20:11:34.093 β†’ 655, 414, 655, 414, 653, 415, 654, 415, 653, 415,
20:11:34.093 β†’ 654, 414, 649, 915, 1474, 415, 655, 414, 653, 414,
20:11:34.093 β†’ 651, 912, 667, 908, 674, 405, 663, 407, 662, 405,
20:11:34.093 β†’ 1465, 910, 668, 905, 673, 902, 681, 399, 670, 398,
20:11:34.093 β†’ 665, 899, 680, 895, 683, 892
20:11:34.093 β†’
20:11:34.093 β†’ Signal Analysis:
20:11:34.093 β†’ Shortest pulse: 398 ΞΌs
20:11:34.093 β†’ Longest pulse: 1474 ΞΌs
20:11:34.093 β†’ Ratio: 3.70

20:11:34.224 β†’ *** RAW SIGNAL CAPTURED ***
20:11:34.224 β†’ Pulse count: 104
20:11:34.224 β†’ Timings (microseconds):
20:11:34.224 β†’ 771, 998, 336, 465, 337, 960, 348, 453, 1168, 456,
20:11:34.224 β†’ 609, 953, 631, 447, 618, 944, 638, 441, 629, 439,
20:11:34.256 β†’ 631, 439, 625, 936, 1454, 435, 634, 432, 634, 929,
20:11:34.256 β†’ 650, 926, 651, 923, 657, 918, 658, 917, 666, 414,
20:11:34.256 β†’ 1460, 420, 647, 419, 645, 920, 657, 919, 661, 420,
20:11:34.256 β†’ 649, 419, 643, 922, 654, 923, 1464, 428, 640, 429,
20:11:34.256 β†’ 636, 434, 632, 438, 631, 437, 630, 440, 627, 442,
20:11:34.256 β†’ 620, 945, 1442, 451, 615, 455, 613, 455, 610, 956,
20:11:34.256 β†’ 621, 955, 625, 455, 611, 458, 609, 459, 1412, 966,
20:11:34.289 β†’ 610, 964, 613, 952, 653, 415, 651, 418, 644, 923,
20:11:34.289 β†’ 654, 922, 653, 926
20:11:34.289 β†’
20:11:34.289 β†’ Signal Analysis:
20:11:34.289 β†’ Shortest pulse: 336 ΞΌs
20:11:34.289 β†’ Longest pulse: 1464 ΞΌs
20:11:34.289 β†’ Ratio: 4.36

20:11:34.453 β†’ *** RAW SIGNAL CAPTURED ***
20:11:34.453 β†’ Pulse count: 86
20:11:34.453 β†’ Timings (microseconds):
20:11:34.453 β†’ 632, 438, 629, 438, 627, 936, 1453, 436, 632, 436,
20:11:34.453 β†’ 629, 935, 644, 931, 646, 929, 651, 923, 654, 919,
20:11:34.453 β†’ 663, 418, 1457, 421, 648, 421, 643, 920, 658, 917,
20:11:34.453 β†’ 665, 416, 653, 415, 649, 914, 663, 912, 1478, 412,
20:11:34.453 β†’ 655, 414, 654, 414, 654, 415, 653, 415, 654, 416,
20:11:34.486 β†’ 651, 417, 647, 917, 1472, 418, 650, 419, 648, 420,
20:11:34.486 β†’ 645, 918, 660, 917, 665, 415, 652, 415, 654, 415,
20:11:34.486 β†’ 1455, 920, 657, 918, 661, 914, 667, 414, 653, 415,
20:11:34.486 β†’ 650, 913, 664, 911, 668, 908
20:11:34.486 β†’
20:11:34.486 β†’ Signal Analysis:
20:11:34.486 β†’ Shortest pulse: 412 ΞΌs
20:11:34.486 β†’ Longest pulse: 1478 ΞΌs
20:11:34.486 β†’ Ratio: 3.59