Hey all. I've been fighting with this as well and thanks to a helpful pointer from @chopedogg88, I've got it working. I'm going to walk through the steps I took so that others can benefit from my experience.
First of all, here's what I've got:
Bromic Wireless Dimmer Control:
spec doc: https://pim.bromic.com/wp-content/uploads/2021/06/Smart-Heat-Electric-Dimmer-Control-Product-Brief-US.pdf
user manual: https://pim.bromic.com/wp-content/uploads/2021/06/Dimmer-Controller-Installation-Manual-US.pdf
a 7 button remote: http://teamwpd.com/images/servicemanuals/Bromic Controller Remote Manual.pdf
A Bromic Smart-Heat Link Home Automation device: https://www.bromic.com/product/smart-heat-link-home-automation-plugin/
The manual for the Smart-Heat Link is... not great. I followed their directions and used DockLight to try to program the remote control to memorize channel 500, then tried to transmit on that channel to the Bromic Controller. However, no matter what I did- this always resulted in an "ID > 2000" error when I tried to transmit on that channel. I believe that this is an issue with the firmware in the Smart-Heat Link. I also tried programming ids less than 201 and that resulted in an "ID < 201" error. So I can program 201 and up, but I can't use it. Or I can use IDs 1-200, but I can't program them. Argh.
I'm outlining the sequence of steps I took below. Don't be dismayed by the length- once you understand it, the whole process takes about 2 minutes.
Set up and connect the drivesr
Install the Teleco TVLINK TVTRX232-916 device driver from their website
Install a TVLINK driver. I'm using "TVLINK Generic" because I just want on and off, but you can install whichever one you want.
Plug the Smart-Heat Link into your Control4 Controller. I plugged it Serial port 1 using a DB-9 cable.
In System Design go to the Properties pane on your TVLINK TVTRX232-916 and set the "Number of physical transmitters" to 1 and hit "Set". Setting the number of physical transmitters creates new connections starting at 201. So if you set it to 1, you get "TRANSMITTER ID 201" in your connections list. Somewhere along the line when I was doing this, I created a TRANSMITTER ID 202 in my list and for some reason my system now thinks that my remote is 202, so for the rest of this example I'll use 202. But you should try using 201 first.
Now go to Connections for your TVLINK TVTRX232-916 and
Connect its Serial RS-232 Control Input to the right port. In my case that's "EA5->SERIAL 1 (DB-9)"
Connect "TRANSMITTER ID 202" to your device, in my case that's "Generic TVLINK Device->TRANSMITTER"
Go to the Properties panes of both TVLINK devices and set "Debug Mode" to "Print". This will be helpful for you to see that it's working correctly.
In the "Actions" for the TVLINK TVTRX232-916 try doing "Delete all memory" and you should see it say:
That means that you've got your serial connection set up correctly (good job) and that the device is working nominally. You'll probably have to set the number of physical transmitters back to 1 (or 2, or whatever) after you do this since that'll get wiped out- but it's a good way to verify that you've completed this part of the process.
Configure the Generic TVLINK Device to be able to transmit
Go to your GENERIC TVLINK device Actions panel and click "Memorize channel". Then go back to Properties and click the "OFF CHANNEL" label. It'll get a blue line underneath it letting you know it's ready.
Click the "off" button on your physical remote once. You'll see it say something like "memorized" in the "Last update" field.
Click the "off" button a second time and it should say "Received Channel 8".
Do the same for the On channel. And any other button you want to program.
Then go to the LUA tab and you should see this in the debug output when you hit the various buttons:
That means that your proxy is attuned to your remote (good!). If you click the button in your app, you should see something like this:
That's a good sign too- it means that your button is hooked up correctly.
BUT NOT SO FAST! This is where the Bromic Smart-Heat Link is not working the way I'd expect it to.
If I go to the TVLINK TVTRX232-916 debug Lua panel, when I click the "turn on the heat" button in the app I see this:
This means (a) the proxy button sent a request for signal 1 (that's my "high power" setting). It then sent a message to the Bromic Smart-Heat Link saying "54" (transmit) "00 CA" (on channel 202) "00 01" (high power) and "1F" (checksum to make sure that we didn't f' up the command).
But the system responds with the very frustrating "ID > 2000" error. Which makes no sense to me because... the ID is 201. But, ok.
So alternatively, let's take that data that we just memorized, and tell Control4 to broadcast it on channel 1 instead of channel 202
Go back to your TVLINK TVTRX232-916 Connections tab and switch the connection to "TRANSMITTER ID 001".
Now try tapping the heat button in your app and look at the debug output. You'll see
Alright! Notice that it's sending now on channel "00 01" (and this time I'm sending the power off signal which is "00 08"). The response code is "54" (received transmission) "06" (acknowledged). We are in business! Except that... the heater didn't turn on. Why is that? It's because we need to tell it to listen.
So now we have to program the Controller to listen to channel 1.
This is very straightforward. You're going to follow page 8 of this manual: https://pim.bromic.com/wp-content/uploads/2021/06/Dimmer-Controller-Installation-Manual-US.pdf
Open up your remote control to find the hidden P3 button. Press the button and you'll hear your Controller make a continuous tone.
Press a button on the front of the remote control and your controller will pause, then re-issue the tone.
Press one of the heat buttons on your app (turn it on or off, doesn't matter) and you'll here a beeping tone from the controller.
Now your Bromic Heat Controller is listening to your Control4 app.
Share and enjoy!