Gecko in.touch2 integration (Spa wireless remote control module)

Hello,
It would be awesome if we get in.touch2 integration into Home Assistant. It’s the wifi module for remote controlling a SPA (Jacuzzy). With it I can control the pumps, blower, light system, filter timing, etc…

Link to the manufacturer:

Relevant GitHub repository related to the device or service:

Thanks

Hey I have a gecko spa unit, but not the in.touch unit. Frankly I would be more interested in trying to connect to the spa electronics directly via a raspberry pi or an esp device.

Does the in.touch unit at the spa plug in via usb? It is difficult to tell via the advertising. If not - can you give us some physical details on how it connects?

I’m fairly sure the comm ports of the gecko spapacks are USB as they sell an in.stik to program them with preloaded settings.

Also, this worked once in a while. I’d have to speak to google and had a limited number of commands.
https://geckointouch.com/vocal-assistant

I’m pretty sure it’s USB right. The in.touch2 has two separate modules, one outside in the spa and the other connected to the wired network via rj-45.

I just tested the repo mentioned and I’m able to get the setpoint and temperature. Integrating it would be something feasible, but I’m not Python inclined enough for a real integration.

I’m still gonna do something to get the temperature at intervals and publish it to MQTT to have a sensor in HA.

hummm. 8 wire. many device on same cable. i think is a network similar to rj-45 and probably special protocol… or network same to I2C.

if someone can check different chip on module can help to identify communication type…

after compare with new device pack. i see rs-485 is use. 2wire_rs485_fig1
for communication with the board but im not sure is the same for comm port and i not have pinout shema…

1 Like

I’m interested in interfacing directly to the controller as well (not so keen on dropping hundreds of dollars to get a wifi interface that’s still proprietary).

They specifically mention RS485 in their patent docs https://www.freepatentsonline.com/7489986.html where it talks of using RS485 to communicate with external computer and I2C for internal comms. There’s a techdoc on another (older?) unit that has an internal RS485 connection as well. I think it’s probably a fairly safe bet to start tinkering with.

Note that the in.stik is called “usb key like” not “is a usb key”, and their docs says the stik is programmed at Gecko Alliance factories, so I suspect it’s not a user/dealer-programmable anything, let alone a usb device.

The low-voltage stuff all uses an 8-pin connector, but each type is keyed differently - I don’t know how much the pinouts differ or if the keying is mainly for feature restriction. Our xm2 has connectors for light, “comms”, 2 x keypad, IO and heater comms.

The techbook for the in.xm2 module notes that the IR receiver pins are present on all but the heater and light connectors, so there’s at least some variation in the wiring, I guess.

I’ve ordered some RS485 modules, so when that slow boat arrives I guess it’ll be time to sit down outside with the hot tub, a multimeter and some probes!

2 Likes

Good work on the patent docs!

Very Interested to see how you get on - I have an intouch 2 so off to look at that git hub as well - cheers all :slight_smile:

Yes agitting, really good doc to found clue. Sorry i speak english little bit and not have time to analyse this doc. But i think the most easy solution is

-Found pinout shema for COMM port and not really RS485 internal port. is possible to control spa with this but COMM port have advantage to communicate with all devices in the “gecko network” maybe is RS485 too. i dont know.

-Use same communication on the network to capture all data.

-Plug existing module and capture GET/POST for all function. more easy to understand each data.

If someone can do this he will able to simulate in.touch / in.mix / all device on the “gecko network”. Menu fonction will switch on Keyboard like in.k1000 :wink:

Each “fake” fonction will can be use on HASSIO. Exemple my gecko spa have WLED firmware on esp82266 and all led is programmable. I can use normal light button on my spa pluged on relay. The relays can drive my WLED button (short press, long press) i use this for control color and animation on my WLED. But sadly i cant use in.mix menu to chose my color :wink:

Fake module on “gecko network” can have many avantage to make some DIY component :slight_smile:

Why i think is a good way to work on COMM port and not really on RS485 internal port. Sorry i not have time for this except maybe if someone can found pinout shema of COMM port cuz i will not guest on wire and broke my IN.XE controler :wink:

is really more easy to use in.touch2 and just network sniffer to capture packet. but… $$$$$$$ for a in.touch module.

i think i will finish with a simple temp sensor on esp8266 to get temperature and no possibility to control spa… lol

Are you saying that these devices have a RS485 and a COMM port?

I am not sure what you mean here, I think the translation makes it more difficult :slight_smile: Do you mean you HAVE found a pinout schema for a COMM port, or just that it would be easier IF we found a pinout for a COMM port?

I haven’t seen any evidence that these controllers have an RS-232 interface (assuming that this is what you mean by COMM port - a serial connection like you find on a PC) and it wouldn’t make much sense for them to have one since RS-232 is only much good for point-to-point computer comms, not multi-device control networks.

I believe that the connectors on the gecko gear that are labelled “CO” are RS-485 interfaces, based on what I could find in the patent docs. They might also include i2c.

That’s where I’m working from, everything else is just speculation - until we can physically interface with the unit we won’t know what features are available on which busses/connectors, but exporting whatever we can is obviously the next step after that.

What I’m targeting is hopefully getting an ESP8266 to talk to the controller (probably via RS485), and then either HA api or MQTT to (and from) my home network.

The in.touch connects to the purple “CO” port (as you can see in these product images), so that’s where I expect we’ll find an RS485 port. This same connector also appears to be what’s used by the in.stik for loading firmware (based on the in.xm2 techbook), so I wouldn’t be surprised to see i2c on that connector too (or it could be almost anything for all we know). The purple “CO” port is also what’s used to link two spa packs together, and is used by the in.terface AV thingy, so it does look like that port is the way to get access to most of what’s going on in the system. Hopefully.

1 Like

im sorry im too bad to speak english :wink: but no, i not have shema for comm port and i want found… and yes, me too i think is probably mix of rs-485 to support multiple device and is already use on the board (internal port) but is speculation in the fact i dont know. For my model (IN.XE) i think i not have internal rs-485 port. Maybe with some simple device, it’s possible to open and watch chip use on the board can help to found communication type and pinout. but i not have device for gecko comm port.

exemple of chip: https://www.mikroe.com/rs485-5v-click

ADM485

No need to apologise - I only know ONE language, so you are doing much better than me already! :slight_smile:

I had a look at the techbook for your in.xe controller, and I see it has the same CO port that our in.xm2 has (on the right-hand-side, there are three ports, “C” for the control keypad, “CO” for communications, and “L1” for the LED lighting). I think the CO port will have built-in RS-485 on all of the X-series controllers.

Yes, the ADM485 is the sort of chip. I have purchased a cheaper style, this one from Alibaba. It is still coming, they take some weeks to arrive (I got four of them for USD8).

Inspired by the OP mentioned project, I built a Gecko library (https://github.com/gazoodle/geckolib) which I’m planning on consuming in a Home Assistant custom component. It has a command line client test program that I’d appreciate anyone interested taking a look and giving me feedback, especially against different configurations. I’ve got an in.xm2 spa.

2 Likes

@gazoodle this is exactly what I was trying to do with my spa with Gecko spa pack and in.touch 2 wifi.

I’m really at the beginning of my HA journey and was hoping someone could help me out where to find information on how to get the Gecko library testing up and running? So sorry about the noob questions here but I’m really lost what to do next once I have the download folder from Github on my mac :slight_smile:

I’m happy to study and ask these questions somewhere else if you feel this is not the right place.

Hang in there! I plan to build a custom component for HA once I’ve got the library to a stable state. If you’re at the start of your HA journey, now isn’t the time to write your first component! It will be my first HA component from the ground up, but I’ve been using and tinkering with HA for a couple of years now so I think I’ve got a grip on the underlying architecture.

This is the right place to chat about that project, but not about the Gecko library (best do that on GitHub if you need to).