I think I have pretty much figured out the schematic:
neta12.pdf
- Harrison Neta12 controller schematic
- (16.43 KiB) Downloaded 142 times
It all makes more sense now. There are two voltage regulators. One for 12V and one for 5V. So the power supply of 12V is a bit misleading. The device will need 16V for the regulator to be able to do its job.
Then there are two relays that switch the polarity of the power to the motor (connected to T2). The current to the motor passes through a 0.5 Ohm resistor (R1). The voltage across that resistor goes to one side of a comparator in the PIC12F675. The output of the potentiometer goes to the other side of the comparator. So, the potentiometer doesn't directly control the travel distance of the curtains. It just sets a threshold for the motor current. When the curtains are nearly closed, they encounter increasing resistance, resulting in increased current drawn by the motor.
Next I checked the signal coming from the RF receiver. I could not detect any pattern in the signal coming from the RF receiver (RF2). It was definitely not steady when the remote was not activated. So, it does look like it is almost constantly picking up RF noise.
Finally I tried reading the contents of the PIC. But as you may have expected, memory protection had been switched on by Harrison. So the only thing I could read was the configuration word. It was set to 0x3044, meaning:
- Code: Select all
Field Option Category Setting
FOSC INTRCIO Oscillator Selection bits INTOSC oscillator: I/O function on GP4/OSC2/CLKOUT pin, I/O function on GP5/OSC1/CLKIN
WDTE OFF Watchdog Timer Enable bit WDT disabled
PWRTE ON Power-Up Timer Enable bit PWRT enabled
MCLRE OFF GP3/MCLR pin function select GP3/MCLR pin function is digital I/O, MCLR internally tied to VDD
BOREN ON Brown-out Detect Enable bit BOD enabled
CP ON Code Protection bit Program Memory code protection is enabled
CPD ON Data Code Protection bit Data memory code protection is enabled
This shows that the watchdog timer is
disabled. So, if the RF noise ever causes the program to go down a bad path, it won't recover automatically.
Having been able to read the configuration word, I am convinced I can load my own program into the PIC12F675. The part for driving the motor should be straight forward. But finding the remote control signal in all the RF noise is much harder. Converting to an ESP8266 requires more hardware changes, but has the advantage that the device can report back whether the curtains are open or closed. So, I'm not yet sure which option to choose.