I was trying to do he same thing with the reconnect command, but I found it to be incredibly unreliable in our case.
(Sorry for slow reply, just noticed this)
Sooooo I broke down and actually bought ANOTHER in.touch2, and of course – that one works just fine, right out of the box. So as I suspected, there was something wrong with the first one I got years ago. I’m going to call gecko and see if they’ll send me a replacement or something, but I did install the gazoodle integration and it Just Works, which is pretty awesome! (Except for the ‘sensors’, but I think maybe my unit doesn’t have those / report them; I’ll look into it more eventually, as it’d be nice to know if the ozone generator is on, etc.).
Anyhow, here’s some decent (not perfectly sharp but hopefully helpful) photos of the transmitter and receiver cracked open (this is my older one that doesn’t fully work – but I doubt there’s anything visibly wrong/different): https://photos.app.goo.gl/YsqsdVKBqKjf2Lc19
Those UART pins on both look tempting!
Can anyone confirm what their adapter negotiates to on their network? Mine does 10/Half and it’s really become an issue since multigig switches don’t want to negotiate that low. Hoping someone is seeing better negotiations than that.
That’s awesome, thanks for taking the time to do that!
That blue crud on the plug and socket in the spa-side unit looks a bit sus - do you think it’s a sort of loktite applied deliberately? If not it could be corrosion from water ingress. It looks like there’s a bit on the second pin, plugging/unplugging that connector a few times might solve the issue if that’s the case.
The area I’d really like a good look at is on the spa-side unit, around the corner where the plug goes - it’s a bit blurry to make out the traces and component values, and the angle means the socket on the board obscures some of the traces. If you have time/motivation to take some more shots I’d really appreciate it, but totally understand if you need to move on with your life!
Would also be good to get a peek under that sticker to know exactly which mcu they’re using.
From what you’ve given I think it’s likely we’re talking I2C for the comms - rs485 is possible (actually so is canbus but I think it’s unlikely) - if we get the partnumber of the mcu (U2) I can check the specs to see what peripherals it has on-board, and with a good look at the PCB make some guesses at what the pinout is, which will help narrow down options given the peripherals on the mcu may (or may not) be limited to specific pins.
Given there don’t appear to be any comms chips there for talking to the spa, it will be a protocol that the particular mcu there can talk natively.
From the connector we can see that pin8 (black?) is ground.
The “6R8” inductor L1 implies that the chip next to it is a switching regulator that probably creates the 3.3v supply - but there’s another chip that looks very similar but doesn’t have an inductor next to it so I might be off the mark there.
If you have time to grab some more photos around that area I might be able to glean a bit more, also the part number of the main chip would be awesome - but if you are looking at getting a warranty claim sorted maybe don’t go pulling stickers off
(oh and for anyone interested, the red Microchip module is a low-power 915MHz transceiver module for the actual radio link between the units).
Yes, and the programming port might support debugging depending on the chip. It looks like the mcu has an eeprom next to it so it might be possible to extract the firmware if it’s not stored on the mcu.
Re ethernet, it looks like the MAC is integrated in the mcu, and they’re using a Microchip chip, going by the logo peeking out under the sticker. Using their parametric search there don’t seem to be any of their products that have 64-pin packages and only support 10-base ethernet, so it looks like it probably should be 10/100 at least - but that’s a shaky tower of assumptions I’m working with there
The fact that pins 3&4 are wired on the RJ45 connector implies that it supports gigabit, which is a bit surprising. Have you tried using a crossover cable? Maybe the firmware doesn’t handle autonegotiation very well, so a crossover cable might give different results.
Just joined the community, In my case i want to increase the spa temperature when the Amber pricing is low and then bring it down when the price is high so it does not keep heating it or should i look at something that will switch off the SPA completely and switch it on when the price is relatively low for me to heat the spa … Thoughts on how everyone is achieving this. Thanks.
Welcome.
This would be pretty easy to achieve just by changing the spa setpoint. I have mine change according to an automation that uses time and temperature helpers that define a daily profile. No reason why this wouldn’t work according to status changes, e.g. setpoint to 40C when pricing is low and to 36C when it’s high. In the summer, our tub only drops 2 or 2.5 degrees between 4:30 am and 0:30 am which is the period outside our low tariff.
Great and how do you manage Winter months when we shutdown the spa completely
That’s probably when we use it most. Ours is always on year round. No action needed on HA, although I’d probably disable the component and associated automations to avoid filling up the error log.
Would you mind sharing those three dashboards? They look really good! My inexperienced self can’t get it to look anything like that. In particular I’m wondering about the graph, what you used to make it?
Blockquote[quote=“RhinoRich, post:148, topic:150764, full:true”]
Welcome.
This would be pretty easy to achieve just by changing the spa setpoint. I have mine change according to an automation that uses time and temperature helpers that define a daily profile. No reason why this wouldn’t work according to status changes, e.g. setpoint to 40C when pricing is low and to 36C when it’s high. In the summer, our tub only drops 2 or 2.5 degrees between 4:30 am and 0:30 am which is the period outside our low tariff.
[/quote]
Would you mind sharing those three dashboards? They look really good! My inexperienced self can’t get it to look anything like that. In particular I’m wondering about the graph, what you used to make it?
It’s a custom card called mini-graph-card.
- title: TUB XTRAS
path: ''
icon: mdi:hot-tub
badges: []
cards:
- type: picture-elements
elements:
- type: state-label
entity: sensor.spa_temperature
style:
top: 50%
left: 48%
transform: translate(-50%,-50%) scale(2,2)
opacity: 65%
color: cyan
prefix: Temperature
- type: custom:button-card
entity: fan.ducky_tub_pump_1
style:
transform: translate(-50%, -50%) scale(.8,.8)
left: 9%
top: 63%
opacity: 70%
size: 60px
show_name: false
action: toggle
tap_action:
action: call-service
service: fan.set_preset_mode
service_data:
entity_id: fan.ducky_tub_pump_1
preset_mode: |
[[[
if (entity.state == 'off')
return 'HI';
else
return 'OFF';
]]]
- type: custom:button-card
entity: fan.ducky_tub_pump_2
style:
transform: translate(-50%, -50%) scale(.8,.8)
left: 25%
top: 36%
opacity: 70%
size: 60px
show_name: false
action: toggle
tap_action:
action: call-service
service: fan.set_preset_mode
service_data:
entity_id: fan.ducky_tub_pump_2
preset_mode: |
[[[
if (entity.state == 'off')
return 'HI';
else
return 'OFF';
]]]
- type: custom:button-card
entity: fan.ducky_tub_pump_3
style:
transform: translate(-50%, -50%) scale(.8,.8)
left: 85%
top: 44%
opacity: 70%
size: 60px
show_name: false
action: toggle
tap_action:
action: call-service
service: fan.set_preset_mode
service_data:
entity_id: fan.ducky_tub_pump_3
preset_mode: |
[[[
if (entity.state == 'off')
return 'HI';
else
return 'OFF';
]]]
- type: state-label
entity: climate.ducky_tub_heater
attribute: temperature
name: Heater
style:
top: 58%
left: 48%
prefix: 'Setpoint '
image: /local/tub.jpg
style: |
ha-card {
background-color: var(--primary-background-color);
border-radius: 25px;
margin: 15px;
box-shadow:
-4px -4px 8px rgba(255, 255, 255, .5), 5px 5px 8px rgba(0, 0, 0, .03);
}
- type: thermostat
entity: climate.ducky_tub_heater
name: Heater
- type: custom:mini-graph-card
icon: mdi:hot-tub
name: Hot Tub Temperature
entities:
- entity: sensor.spa_temperature
name: Temperature
- entity: sensor.spa_setpoint
name: Setpoint
hours_to_show: 36
points_per_hour: 6
- type: entities
entities:
- entity: button.ducky_tub_reconnect
name: Reconnect
- entity: sensor.ducky_tub_error_s
name: Error(s)
- entity: sensor.ducky_tub_rf_channel
name: "RF\_Channel"
- entity: sensor.ducky_tub_radio
name: RF Signal
- entity: sensor.ducky_tub_status
name: Status
title: InTouch 2 Module
- type: entities
entities:
- entity: input_datetime.pm_on_time
name: Boost On Time
- entity: input_number.pm_on_temp
name: Evening Temperature
- entity: input_datetime.pm_off_time
name: Boost Off Time
- entity: automation.pm_setpoint_change_1
name: Enable Evening Boost On
- entity: automation.pm_setpoint_2
name: Enable Evening Boost Off
- entity: automation.heat_boost_on
name: Enable Octopus Overnight Heat On
- entity: automation.heat_boost_off
name: Enable Octopus Overnight Heat Off
- entity: input_datetime.octopus_on_time
name: Time to Start Octopus Heating
- entity: input_number.octopus_on_temp
name: Target temperature
I should also say I run a daily automation to Reconnect and I have to manually reload the component every 2-3 weeks or it will freeze.
Hi @RhinoRich,
Thanks for sharing this, I was wondering whether you had created custom sensors for the spa_setpoint and spa_temperature?
Thanks.
Yes was the answer to my own question. For anyone else that might wonder here’s the templates I’ve added.
- platform: template
sensors:
spa_temperature:
friendly_name: "Spa Temperature"
value_template: "{{ state_attr('climate.my_spa_heater', 'current_temperature') }}"
unit_of_measurement: "°C"
- platform: template
sensors:
spa_setpoint:
friendly_name: "Spa Setpoint"
value_template: "{{ state_attr('climate.my_spa_heater', 'temperature') }}"
unit_of_measurement: "°C"
HI Rich
how are you getting the octopus heat on/off are you using a sensor to turn on when the octopus agile unit rate is low, that is if your using octopus agile tarrif
thanks nigel
Hi Nigel,
We’re on Octopus Go, so the times are fixed.
I guess you already found this thread? Octopus Agile Tariff -Turn device ON and OFF - #15 by GeoffUK
I guess it would be easy enough to adjust the spa setpoint according to the price.
Hi, found my way here looking for a way to directly interface with the intouch2 unit. Mine came “BU Touch” branded from Bain Ultra. I can connect to it and control it with their app, and just signed up for a Gecko account and installed the in.touch2 app and I can connect with it, but not control anything. (It seems like perhaps the main app is more geared toward controlling full temperature-controlled spa tubs, whereas the BU tubs are focused more on controlling the air jets and such) Seems like it might be an interesting way to further pick apart the device since the number of interactions and options are so much more limited.
I have got the integration working (in.touch 2) but I find the information confusing.
Firstly, we only use the spa in weekends (holiday home), therefore I programmed the weekender preset to start heating from Saturday morning until sunday evening. The android app previously displayed cooling to 19 degrees (the controller automatically set this target when spa is scheduled not to heat). Unfortunately, the android app stopped working. I have to be in the same network to reconfigure - which is not going to happen until next weekend.
I am guessing the below meant that the spa temperature will go down to the target temperature of 19 degrees (the controller automatically set this target when spa is scheduled not to heat) . The below meant that the target temperature is 30 degrees on weekends, weekdays will be 19 degrees?
Is there a sensor to display the target temperature, rather than the setpoint?
Question 2:
Below sensors/switches were generated. I don’t understand some of these
- I will check which one is which (ie: blower, Pump 1, waterfall) next time I’m at the house
- Ozone, this one is always showing “Off”. I don’t think it should be the case as Watercare turns ON everyday for a number of hours
- is there a way to change the presets in the HA integration. The Android app has the function to change the preset (eg: weekender)? Or can it only be done by automation/schedule in HA?