{"id":19055900,"url":"https://github.com/ohand/3dprinterstatus","last_synced_at":"2025-04-24T04:29:30.900Z","repository":{"id":108970109,"uuid":"609364785","full_name":"ohAnd/3DPrinterStatus","owner":"ohAnd","description":"small android app to get the status of a 3D printer for e.g. Bresser Rex or Flashforge Adventurer or similar  - currently in an early stage","archived":false,"fork":false,"pushed_at":"2023-05-01T18:30:22.000Z","size":2370,"stargazers_count":5,"open_issues_count":12,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-18T12:19:17.312Z","etag":null,"topics":["3d-printer","3d-printer-controller","android","app","bresser-rex","cordova-build-environment","flashforge","flashforge-adventurer","remote-state"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ohAnd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-03-04T00:48:35.000Z","updated_at":"2024-03-15T08:14:19.000Z","dependencies_parsed_at":"2024-02-24T12:15:24.014Z","dependency_job_id":null,"html_url":"https://github.com/ohAnd/3DPrinterStatus","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohAnd%2F3DPrinterStatus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohAnd%2F3DPrinterStatus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohAnd%2F3DPrinterStatus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohAnd%2F3DPrinterStatus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ohAnd","download_url":"https://codeload.github.com/ohAnd/3DPrinterStatus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250564165,"owners_count":21450967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-printer","3d-printer-controller","android","app","bresser-rex","cordova-build-environment","flashforge","flashforge-adventurer","remote-state"],"created_at":"2024-11-08T23:47:21.764Z","updated_at":"2025-04-24T04:29:30.890Z","avatar_url":"https://github.com/ohAnd.png","language":"JavaScript","readme":"3DPrinterStatus\n\n- [description](#description)\n  - [pre notice](#pre-notice)\n  - [original purpose for the app](#original-purpose-for-the-app)\n  - [features](#features)\n- [downloads](#downloads)\n  - [get latest release](#get-latest-release)\n  - [get latest debug build](#get-latest-debug-build)\n- [development status](#development-status)\n- [screenshots](#screenshots)\n- [features planned/ done](#features-planned-done)\n- [info](#info)\n- [licenses](#licenses)\n- [creating local build environment](#creating-local-build-environment)\n  - [installing on linux](#installing-on-linux)\n    - [node js](#node-js)\n    - [cordova](#cordova)\n    - [java 11](#java-11)\n    - [android sdk commandline](#android-sdk-commandline)\n    - [gradle](#gradle)\n    - [preparing project](#preparing-project)\n    - [finally check with](#finally-check-with)\n    - [build](#build)\n\n# description\n## pre notice\nproject is based on [cordova build environment](https://cordova.apache.org/) and so written in NodeJS and cordova specific plugins - currently only builds for android available\n\ncontribution to this project is likely welcome\n\n\n## original purpose for the app\n\nGive an alternative way to reach 3D printer e.g. 'Bresser Rex' or 'Flashforge Adventurer III' directly in an app for getting the current state of print job and watching the live video stream from internal webcam.\nFuther there are thougts to use that information to gather some statistics for visualization and use the state changes of printer for further switching of external IFTTT devices.\nIf you have other cool ideas please raise a [feature request](https://github.com/ohAnd/3DPrinterStatus/issues/new?assignees=\u0026labels=content%2C+good+first+issue%2C+UX\u0026template=feature_request.md\u0026title=%5BFEATURE%5D+%3Cshort+summary+of+the+feature+request%3E)\n\n## features\nyou can find already given and described content features here\n\n[![GitHub closed issues by-label](https://img.shields.io/github/issues-closed-raw/ohand/3DPrinterStatus/content)](https://github.com/ohAnd/3DPrinterStatus/issues?q=is%3Aissue+label%3Acontent+is%3Aclosed)\n\nand UX marked features here\n\n[![GitHub closed issues by-label](https://img.shields.io/github/issues-closed-raw/ohand/3DPrinterStatus/ux)](https://github.com/ohAnd/3DPrinterStatus/issues?q=is%3Aissue+is%3Aclosed+label%3AUX)\n\n\n# downloads\n## get latest release\nyou can reach the latest release here \n\n[![GitHub all releases](https://img.shields.io/github/downloads/ohand/3dprinterstatus/total)](https://github.com/ohAnd/3DPrinterStatus/releases)\n\n\n## get latest debug build\ngoto the last (green) workflow run and find the .apk file in the artifact section below\n\n[![develop - Build Android debug app](https://github.com/ohAnd/3DPrinterStatus/actions/workflows/cordovaBuildAndroid.yml/badge.svg)](https://github.com/ohAnd/3DPrinterStatus/actions/workflows/cordovaBuildAndroid.yml)\n\n\n\n# development status\nyou can raise a feture or bug reqest here and also use this information\n\n[![GitHub issues by-label](https://img.shields.io/github/issues-raw/ohand/3dprinterstatus/bugs)](https://github.com/ohAnd/3DPrinterStatus/labels/bug) [![GitHub issues](https://img.shields.io/github/issues/ohand/3dprinterstatus)](https://github.com/ohAnd/3DPrinterStatus/issues) [![GitHub closed issues](https://img.shields.io/github/issues-closed-raw/ohand/3DPrinterStatus)](https://github.com/ohAnd/3DPrinterStatus/issues?q=is%3Aissue+is%3Aclosed)\n\n\n# screenshots\n\u003cimg src=\"doc/Screenshot_home1.jpg\" width=\"300px\"\u003e\u003cimg src=\"doc/Screenshot_home2.jpg\" width=\"300px\"\u003e\u003cimg src=\"doc/Screenshot_infos.jpg\" width=\"300px\"\u003e\u003cimg src=\"doc/Screenshot_settings.jpg\" width=\"300px\"\u003e\u003cimg src=\"doc/notification_progress.jpg\" width=\"300px\"\u003e\u003cimg src=\"doc/notification_band.jpg\" width=\"300px\"\u003e\n\n# features planned/ done\n- open content the app recognized the finish state of the current job. This state could trigger a smart plug with MQTT or IFTTT. So it is maybe possible to integrate with a specific call on an url or direct MQTT integration.\n- open content prevent connection with default values or inform user about the try to connect with default values\n- done UX animation of changed values from printer, to recognize easily the changed value\n- open UX button connect should be according to the current session state (currently: state info with butto color and button text without a direct understandable connection)\n- done UX IP of printer should be directly take over for the webcam or at least offered\n- open content also offer modeling tools e.g. freeCAD oder tinkerCAD\n- open content offer temperature graph\n- open content idea -\u003e visualize current layer of printing with the XYZ data (why? Don't know! ;-) )\n- open UX darkmode: invert colors to get dark environment\n- open UX darkmode: switch darkmode with systemsettings\n- open UX notification: local push notification, if printer job is done\n- open UX notification: local push notification, if printer stopped before done, e.g. filament error (empty)\n- open UX notification: progess should be optionally shown as an notification\n- open content searching for printer in the local network, present result and give the option to take over to the printer connection\n- open content show the video stream of webcam directly inside the app\n- done UX notification: local push notification with progress as a permanent info during printing\n- open UX notification: should be switchable on/off in settings\n- done content stablize session to the printer - re-connect if connection lost, but the user still required an open connection (connect button -\u003e not manually disconnected)\n- done content notification: local single push notification every 10% during printing\n\n# info\n- current usage (at least until 0.0.1.0172) of connect/ disconnect button colors -\u003e orange = is initialized / green = is connected / red = error occured (check debug log, e.g. BLOCKED means PC has already active connection to printer)/ blue = session releasing or finished\n- \"Bresser REX\" offer itself as a \"Flashforge Adventurer III\"\n\n# licenses\n- logo was taken from here [Image by macrovector](https://www.freepik.com/free-vector/3d-printing-icons-set_4358644.htm#query=3d%20printer\u0026position=1\u0026from_view=keyword\u0026track=ais\") on Freepik\n- ui template/ javascript based on https://github.com/chrisbroski/aerophane\n\n# creating local build environment\n## installing on linux\n(almost same on windows)\n\n### node js\n\n`sudo apt install nodejs npm`\n\n### cordova\n\n`sudo npm install -g cordova`\n\n### java 11\n\n`sudo apt-get install openjdk-11-jdk`\n\n### android sdk commandline\nsee also https://cordova.apache.org/docs/en/11.x/guide/platforms/android/index.html#requirements-and-support\n\n`cd /usr/share`\n\n`sudo mkdir android_sdk`\n\ngoto the download page for cmd line tools https://developer.android.com/studio/index.html#command-line-tools-only\n\nunzip download to /usr/share/android_sdk\n\n`sudo unzip commandlinetools-linux-9477386_latest.zip -d /usr/share/android_sdk`\n\n`cd /usr/share/android_sdk`\n\n`sudo mkdir latest`\n\n`cd /usr/share/android_sdk/cmdline-tools`\n\n`sudo mv * ../latest`\n\n`cd /usr/share/android_sdk/`\n\n`sudo mv latest /usr/share/android_sdk/cmdline-tools`\n\nedit your ~/.bash_profile or ~/.profile\n\n`export ANDROID_SDK_ROOT=/usr/share/android_sdk`\n`export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools/`\n`export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/`\n`export PATH=$PATH:$ANDROID_SDK_ROOT/emulator/`\n\nreload terminal pathes\n\n`source ~/.profile`\n\nnow e.g. for checking\n\n`sdkmanager --list`\n\n`sdkmanager --list_installed`\n\nwalking through the list for all the possible downloads/ installer\n\ninstall needed build-tools\n\n`sudo $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install \"build-tools;30.0.3\"`\n\ninstall platform with api level 30\n\n`sudo $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install \"platforms;android-30\"`\n\n### gradle\n\n`cd ~`\n\n`wget https://services.gradle.org/distributions/gradle-8.0.2-bin.zip`\n\n`sudo unzip gradle-8.0.2-bin.zip -d /usr/share`\n\n`export PATH=$PATH:/usr/share/gradle-8.0.2/bin`\n\n### preparing project\n\ngoto to your project folder (clone of git repo)\n\n`npm install`\n\n`cordova platform add android`\n\n### finally check with\n\ngoto to your cordova project folder\n\n`cordova requirements`\n\n### build\n`cordova build`","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fohand%2F3dprinterstatus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fohand%2F3dprinterstatus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fohand%2F3dprinterstatus/lists"}