Toggle Button w/toggle2nist not Toggling
07 Feb 2019 13:54 - 07 Feb 2019 13:57 #125923
by thadwald
Toggle Button w/toggle2nist not Toggling was created by thadwald
I want a physical on/off button on my control panel. The behavior I am getting is push-on, release-off. Can someone tell me what I am doing wrong?
I have checked the signals using the HAL scope and it appears to be sending a single pulse. I can get it to "catch" in the toggled state by hitting the button quickly, but it will usually quite reliably turn on for the duration of the button press, then turn off as soon as I release it.
# ##################################################
# matrix keypad
# ##################################################
loadrt matrix_kb config=8x8
loadrt debounce cfg=17,6
loadrt toggle2nist count=1
addf matrix_kb.0 servo-thread
addf debounce.0 servo-thread
addf debounce.1 servo-thread
addf toggle2nist.0 servo-thread
net keypad hm2_7i96.0.7i73.0.0.keycode => matrix_kb.0.keycode
setp debounce.0.delay 10
setp debounce.1.delay 5
net key23todebounce matrix_kb.0.key.r5c0 => debounce.0.16.in
net enablebutton debounce.0.16.out => toggle2nist.0.in
net is-enabled halui.machine.is-on => toggle2nist.0.is-on
net enableon halui.machine.on <= toggle2nist.0.on
net enableoff halui.machine.off <= toggle2nist.0.off
I have checked the signals using the HAL scope and it appears to be sending a single pulse. I can get it to "catch" in the toggled state by hitting the button quickly, but it will usually quite reliably turn on for the duration of the button press, then turn off as soon as I release it.
Last edit: 07 Feb 2019 13:57 by thadwald.
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Away
- Platinum Member
Less
More
- Posts: 5007
- Thank you received: 1441
07 Feb 2019 14:57 #125928
by Todd Zuercher
Replied by Todd Zuercher on topic Toggle Button w/toggle2nist not Toggling
You need to use the toggle2nist component with an ordinary toggle component like this
It does seem rather confusing but basically what it does is invert the result of the 1st regular toggle if the "is-on" is true.
# ##################################################
# matrix keypad
# ##################################################
loadrt matrix_kb config=8x8
loadrt debounce cfg=17,6
loadrt toggle2nist count=1
loadrt toggle count=1
addf matrix_kb.0 servo-thread
addf debounce.0 servo-thread
addf debounce.1 servo-thread
addf toggle2nist.0 servo-thread
addf toggle.0 servo-thread
net keypad hm2_7i96.0.7i73.0.0.keycode => matrix_kb.0.keycode
setp debounce.0.delay 10
setp debounce.1.delay 5
net key23todebounce matrix_kb.0.key.r5c0 => debounce.0.16.in
net enablebutton debounce.0.16.out => toggle.0.in
net toggle-on <= toggle.0.out => toggle2nist.0.in
net is-enabled halui.machine.is-on => toggle2nist.0.is-on
net enableon halui.machine.on <= toggle2nist.0.on
net enableoff halui.machine.off <= toggle2nist.0.off
It does seem rather confusing but basically what it does is invert the result of the 1st regular toggle if the "is-on" is true.
The following user(s) said Thank You: thadwald
Please Log in or Create an account to join the conversation.
07 Feb 2019 15:03 #125929
by thadwald
Replied by thadwald on topic Toggle Button w/toggle2nist not Toggling
Thanks!
Please Log in or Create an account to join the conversation.
Time to create page: 0.061 seconds