on website, the quiz didn;t work
Open Tasks You Can Do.
quiz didn't work
Abrasive is not getting used
The abrasive does not come out it seems
Reinstall CutStudio
Roland CutStudio misbehaving (files that opened in the past won't open/translate now; software crashes) - reinstall?
Missing piece
Small piece of black plastic missing from hat hoop attachment, makes a noticeable difference in quality of embroidery
One is not available
Hi,
There are two incubator 7511, the above one doesn't work, is that possible to fix it as below one?
There are two incubator 7511, the above one doesn't work, is that possible to fix it as below one?
Need more mild steel filler wire
Get Octopi Logging User Names via Custom Plugin.
We would like to get octopi to ask a username when print is clicked. This name should be logged. This can be used for follow-up, and checking if people are paying for prints. Eventually this might be updated to send a PayPal link, but for now just logging name is a start.
The task is to develop a custom plugin we can use to log names of users of the 3d printers when they go to print.
I was able to get part way but got stuck not being able to to get the JS file loading. Maybe a second set of eyes can figure it out.
I was able to install a local development version following this process:
Setting Up OctoPrint Development Environment
1. Clone OctoPrint Repository:
cd ~/devel
git clone https://github.com/OctoPrint/OctoPrint
2. Navigate to OctoPrint Folder:
cd OctoPrint
3. Create a Virtual Environment:
python3 -m venv venv
4. Activate the Virtual Environment:
source venv/bin/activate
5. Install OctoPrint and Dependencies:
pip install -e '.[develop,plugins]'
6. Check Installation:
octoprint --help
7. Start OctoPrint Server:
octoprint serve
8. Locate Plugin Directory:
Typically ~/.octoprint/plugins.
9. Place Your Plugin:
Put your plugin Python file and any assets (JS, CSS) in the plugin directory.
10. Restart OctoPrint Server:
Stop the running OctoPrint server with Ctrl+C and start it again with octoprint serve.
I was able to get a plugin to show up by adding a file called "user_name_popup.py"
import octoprint.plugin
import os
import datetime
import logging
class UserNamePopupPlugin(octoprint.plugin.AssetPlugin,
octoprint.plugin.TemplatePlugin,
octoprint.plugin.EventHandlerPlugin):
def __init__(self):
self._logger = logging.getLogger("octoprint.plugins.user_name_popup")
def get_assets(self):
return {
"js": ["user_name_popup.js"]
}
def get_template_configs(self):
return [
{
"type": "generic",
"name": "User Name Popup",
"custom_bindings": True
}
]
def on_event(self, event, payload):
if event == "PrintStarted":
user_name = payload.get("user_name", "Unknown")
file_name = os.path.basename(payload["file"])
self._logger.info(f"{datetime.datetime.now()}, {user_name}, {file_name}")
__plugin_name__ = "User Name Popup Plugin"
__plugin_pythoncompat__ = ">=2.7,<4,>=3.10,<3.11"
__plugin_implementation__ = UserNamePopupPlugin()
------ This now shows in the plugin manager.
and I added a js file (user_name_popup.js) that is aimed at doing the popup when the button is printed, but it does not seem to get loaded and I can figure out why. The file:
$(function() {
console.log("Name Popup Script loaded"); // Debug statement
if ($("#job_print").length === 0) {
console.log("#job_print element not found"); // Debug statement
}
$("#job_print").click(function() {
console.log("Button clicked"); // Debug statement
var user_name = prompt("Please enter your name:", "");
if (user_name) {
OctoPrint.simpleApiCommand("user_name_popup", "set_user_name", {user_name: user_name})
.done(function(response) {
console.log(response);
});
}
});
});
The task is to develop a custom plugin we can use to log names of users of the 3d printers when they go to print.
I was able to get part way but got stuck not being able to to get the JS file loading. Maybe a second set of eyes can figure it out.
I was able to install a local development version following this process:
Setting Up OctoPrint Development Environment
1. Clone OctoPrint Repository:
cd ~/devel
git clone https://github.com/OctoPrint/OctoPrint
2. Navigate to OctoPrint Folder:
cd OctoPrint
3. Create a Virtual Environment:
python3 -m venv venv
4. Activate the Virtual Environment:
source venv/bin/activate
5. Install OctoPrint and Dependencies:
pip install -e '.[develop,plugins]'
6. Check Installation:
octoprint --help
7. Start OctoPrint Server:
octoprint serve
8. Locate Plugin Directory:
Typically ~/.octoprint/plugins.
9. Place Your Plugin:
Put your plugin Python file and any assets (JS, CSS) in the plugin directory.
10. Restart OctoPrint Server:
Stop the running OctoPrint server with Ctrl+C and start it again with octoprint serve.
I was able to get a plugin to show up by adding a file called "user_name_popup.py"
import octoprint.plugin
import os
import datetime
import logging
class UserNamePopupPlugin(octoprint.plugin.AssetPlugin,
octoprint.plugin.TemplatePlugin,
octoprint.plugin.EventHandlerPlugin):
def __init__(self):
self._logger = logging.getLogger("octoprint.plugins.user_name_popup")
def get_assets(self):
return {
"js": ["user_name_popup.js"]
}
def get_template_configs(self):
return [
{
"type": "generic",
"name": "User Name Popup",
"custom_bindings": True
}
]
def on_event(self, event, payload):
if event == "PrintStarted":
user_name = payload.get("user_name", "Unknown")
file_name = os.path.basename(payload["file"])
self._logger.info(f"{datetime.datetime.now()}, {user_name}, {file_name}")
__plugin_name__ = "User Name Popup Plugin"
__plugin_pythoncompat__ = ">=2.7,<4,>=3.10,<3.11"
__plugin_implementation__ = UserNamePopupPlugin()
------ This now shows in the plugin manager.
and I added a js file (user_name_popup.js) that is aimed at doing the popup when the button is printed, but it does not seem to get loaded and I can figure out why. The file:
$(function() {
console.log("Name Popup Script loaded"); // Debug statement
if ($("#job_print").length === 0) {
console.log("#job_print element not found"); // Debug statement
}
$("#job_print").click(function() {
console.log("Button clicked"); // Debug statement
var user_name = prompt("Please enter your name:", "");
if (user_name) {
OctoPrint.simpleApiCommand("user_name_popup", "set_user_name", {user_name: user_name})
.done(function(response) {
console.log(response);
});
}
});
});
Tool Descriptions
It would be helpful to have descriptions on each tool. What it is, what it does, what it is used for. You might use chatGPT to generate theses quickly and then edit and add them to to tool description pages. This should help new users understand more about the tools and their uses. You can see current descriptions (many can be improved) at https://www.makehaven.org/equipment
Adding Tool Plate Images and Serial Numbers
We want to have the tool plates of all of our tools that have them on file. We can upload the images to the website, we have done many but not all. The job requires taking pictures of tool plates, and/or typing the serial number of tools. This is helpful so people can see details of tools on the tool page, and if we ever have tools stolen the serial numbers will be helpful. Ask JR for access to add serials/images.
Update / Add Tool Values
For insurance we should have all the values of the tools in the space added up. We have a field where we can add this in the tool page (with proper permissions). We could use someone who is willing to look up each tool and put the retail value on the field so we can add it up and get the proper replacement value of all of our tools insured.
Vacuum filter on woodshop AC
The woodshop gets hot, and the filter in front of the AC gets clogged. This then causes the AC to draw too much electricity and pop the breaker. So vacuuming the filter would be great!
Better labels for scrap metal
If someone wanted to put nicer labels on the shelves of the scrap metal shelves that would be great! Also a sign explaining how to identify different metals would be great.
Sharpen and sort drill bits
It would be great if someone could sharpen the drill bits (using the drill doctor) in the bins of random bits in the woodshop (labeled small bits and large bits), and then sort them into the fractional/lettered/numbered indexes in the metal shop. Then in the woodshop we will just have the 1/16-1/2" index box.
Configure and Optimize Google Analytics Account for MakeHaven.org
We moved to the new G4 setup for Google Analytics. We could use some help from someone experienced with Google Analytics to be sure we are configuring the account in the best way. We want to capture goals (member signup, email signup, event registration...). We also want to remove some page that are autoloading such as waiver and displays so data is real people.
It would also be help to look through it and help staff understand what insights we can gather. This could also be shared with the board, outreach committee and membership for insight/feedback.
It would also be help to look through it and help staff understand what insights we can gather. This could also be shared with the board, outreach committee and membership for insight/feedback.
Diagnose and repair or replace media computer
The computer in the media room seems to have issues with connecting to USB consistently. The requires understanding computers, looking at software and possibly figuring out if there is something loose like a PCI card. If it can not be made useful we should identify what specs we need for the media room as a minimum and then we will go about finding the appropriate computer.
Ensure computer / and VR system working
Reorganize red and blue bins
Our red and blue bins by the textiles area is a bit of a mess! It would be great if someone could put things back in the bins where they belong <3
Review domain setup for email and help improve
We got feedback that our lack of DMARC records on the domain means our email can be spoofed. We could use help figuring out how to setup the DMARC records and connecting to our system.
We use Cloudflair for DNS and send email from our:CMS and CRM both through Mailgun.
We use Cloudflair for DNS and send email from our:CMS and CRM both through Mailgun.