dburnsii / bartender Goto Github PK
View Code? Open in Web Editor NEWThe intelligent, robotic, drink making machine of the future!
License: GNU General Public License v2.0
The intelligent, robotic, drink making machine of the future!
License: GNU General Public License v2.0
And pull settings on startup
An important piece of this will be to connect The Bartender to WiFi for updates, including pulling down the latest recipes. Add a modal to the settings page to allow the user to connect to WiFi using the wpa_supplicant DBus API.
Add a feature for a 4-digit pin to unlock the interface
System functions like screen brightness handling and automatic updates should be handled by a new service, potentially run as root.
This issue is just for record keeping purposes.
The motivation for choosing Firefox over Chromium for this project is that Chromium supports a minimum browser height of 500 pixels, where the screen in use is only 480. The html element could be modified to account for this, but leads to a bunch of exceptions in the case to make it work, which will make it harder to get this working on external devices (phone browsers for instance)
Material-UI provides dark mode as a theme, this should be added as an option
User should be able to do a measured pour of any given bottle, rather than having to hold down the pour button
With looking at multiple boards, and considering some of the issues seen with custom protocols regarding timing, all devices that communicate with the main board should be communicating with I2C.
The scale will just need a 24-bit ADC to replace the Hx711. This will likely provide more accuracy anyway.
Services sometimes start before the central server is ready to accept connections. Services should be smart enough to reconnect, but also shouldn't start before the socket is ready. Set the systemd service to a notify type, and declare it ready when it can accept connections.
The motors for the bartender can be driven by an SMD transistor. Rework the PCB to integrate the motor driver to use SMD components, and also include a port for the LED strip in the rework.
By default, Raspberry Pi OS does lots of reads and writes to the SD card. Since the lifespan of these cards is relatively short, add settings to reduce the number of reads and writes as much as possible.
This would be beneficial IMHO
One of the menus available should be a cleaning mode. The pumps should add in "last loaded" and "last cleaned" columns to the database, for letting users know in the future when they should clean a pump. The cleaning mode should be simple: activate it for a given pump with the water loaded, run some amount of water through (maybe a couple cleaning mode levels), and do some pulses to free anything that may be stuck.
Now that the database is transferred to sqlalchemy and migrations are possible, create an upgrade.sh
script to check for system upgrades (currently via the git repo), to be launched by the system service. Subsequently rebuild the frontend and run any migrations, then reboot.
With looking at multiple boards, and considering some of the issues seen with custom protocols regarding timing, all devices that communicate with the main board should be communicating with I2C.
For the LEDs, this will likely mean creating a custom firmware on an MCU, likely an Arduino. This will differ from the old design in that it will use protocol closer to how the pixels actually work, and it will be over I2C instead of UART over USB.
LED strip should be driven directly by RPi
Any major open-source project needs a logo, especially when that logo can go on hardware. Create a logo to be placed on the pcbs and within the bartender interface.
Shutting down should happen gracefully, and the led strip should be shut off upon shutdown
With looking at multiple boards, and considering some of the issues seen with custom protocols regarding timing, all devices that communicate with the main board should be communicating with I2C.
The problem with the motor board is that it requires 10 discreet GPIO outputs, rework the board to use the MCP23017
Django unfortunately is simply too slow to run this application on a Raspberry Pi Zero, which is the ideal hardware due to it's availability of GPIOs, form factor, and price. A switch to Drogon would enable this project to be much more performant if done correctly.
Should include current software version, ip address, etc
Create a Bokeh animation effect that appears onscreen after idle for a set amount of time, and dismiss when the screen is pressed or a cup is placed on the scale
HX711 modules tend to be subject to some temperature drift as well as some sensitivity drift. Add a page to the interface to calibrate with a known amount of liquid or weight.
Instead of cramming all of the bottle actions into a small space, perhaps make the manual pour screen more of a menu, where the user selects the desired bottle, and then a modal pops up with more options. This modal could have more than just a pour button, it could also have options for measured pours.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.