This very simple Network Mains Lamp Dimmer.Motor Speed Controller uses the Annex Toolkit UDP Console as a remote network controller.
An optional LED can be used as a PWM brightness/speed indicator if wished, ledpin can be changed from 15 to your own preferred gpio.
The dimmer can also be controlled by entering a value between 0 and 255 into the 'Message to Send' window and pressing 'Enter'.
A dimmer value could similarly be broadcast from an Annex device, eg:perhaps with onboard LDR to adjust for ambient light levels..
.
Note: Because UDP is broadcast to all devices on the subnet, multiple networked devices could be synced from the same controller.
Basic:
'UDP Mains Dimmer - Electroguard - developed on Annex 1.41 beta 3
value=0 'startup brightness/speed level dimmer.setup 4,5,0,1 'configure dimmer module, 4 and 13 = zero crossing, 5 = pwm dimmer.limits 0, 9500 'configured for 50hz dimmer.brightness value 'set brightness to startup value option.pwmfreq 100 'reduce pwm frequency to reduce cpu load ledpin=15 'optional pwm led indicator pwm(ledpin)=value 'set led brightness to startup value udp.begin(5001) 'change port number if wished, but must match with Toolkit UDP Console port setting onudp udpRX 'incoming UDP interrupt handler wait udpRX: v=val(udp.read$) value=int(v/255*100) pwm(ledpin)=value*10 dimmer.brightness value pause 10 return end '-----------end------------ |