eddieparker27 / EndlessPoolController

0 stars 1 forks source link

Help! #1

Open nickels opened 4 years ago

nickels commented 4 years ago

Ha Eddie,

See you've been diging into the same as I'm looking into. So far I've been able to use and ADC (ADS1115) to tap into the swimdisplay and take a voltage reading on which the logic is based. I see you are using Modbus? Is that correct? Would you mind sharing on how you connected things up?

Thanks a lot!

eddieparker27 commented 4 years ago

Hi,

Crikey it's been a while since I played with this! I can check more details tomorrow by opening up the box I made but as I recall one of the pins on the connector to the official display has a voltage on it that is proportional to the current speed of the swim lane. I think you already found this right? It was quite a high voltage I think - perhaps around 40 volts? I also recall it was very noisy but usable if smoothed?

The bit I remember better is that you will need a 433 MHz transmitter as this is what the remote control uses to change the speed. These transmitters are cheap from Amazon and can be connected to the digital outputs of the Arduino though they should have a higher voltage than the Arduino needs in order to get decent RF range.

The Modbus part and the Webserver as quite secondary to being able to control the pool but happy to explain those if you already have all the rest working.

Happy to help with any questions you have

Ed

nickels commented 4 years ago

Hi Ed,

I've been working on it today. I ended up discarding the hacking of the display, instead I went back to the control board and found the 4-20mA Current Control Loop functionality. I've connected the current control loop using a 270 Ohm resistor yielding an input for the ADS differential reading between 1.04V and 5.4V. Working like a charm. Next step would be redesign my PCB MicroController (powered by a ESP32 running FreeRTOS) to power it from the 24VDC supply which is also available on the EP1 controller board.

The 433 MHz is a bit of a hit and miss, I've recorded the signals using a SDR in combination with Universal Radio Hacker. The board is powered by 5V - maybe the signal is too strong and bounces around. I don't know.

I'm now transmitting the recorded millivolts and corresponding pace over MQTT to my Symcon MQTT server along with a provision to use AWS IoT in future. I ended up using MQTT as the next step would be to build a website/control panel which pushes the workouts (json as MQTT message) over MQTT to the PCB MicroController. Pushing the workouts working already, but it's a manual job.. for now. Not sure I would be better off using ModBus?

Not sure where to take it from here, I'm familiar with PHP (Laravel) and a bit of JS.

Thanks for your response, it helped me to look 'the other way'.

Cheers. N.