HackerShackOfficial / Smart-Bartender

🍻
MIT License
147 stars 96 forks source link

Prevent drinks pouring a second time #6

Open Danzibob opened 6 years ago

Danzibob commented 6 years ago

Fixes #1 In our (slightly modified) version of this code, we found that disabling interrupts as soon as the button was pressed would prevent the bartender pouring 2 drinks consecutively without being prompted. Tested fairly thoroughly with both physical and remote (SSH) triggers.

bjensen commented 6 years ago

@Danzibob This PR (if its the same found in your DoubleDrinkFix branch), prevents the user from pouring three drinks in a row.

atainter commented 6 years ago

You've verified that this works? I had a weird issue where the program would crash when I retried to re-enable interrupts. I didn't get around to debugging it.

syntos commented 4 years ago

Hello,

I've modified my code: def right_btn(self, ctx): if not self.running: self.stopInterrupts() self.menuContext.select() self.startInterrupts()

Now, drinks are not made twice and selecting drinks is working fine. However, when I enter the configuration and select a pump with the select button the script crashes and I get this message returned:

Backend terminated or disconnected. Fatal Python error: Segmantation fault

Any idea what's happening here? If I comment the stop and start interrupts I do not get these error but then my selected drink is made twice.

Thank you.