From c3a402ec46d39e15277739b1b0bc465a12768a3f Mon Sep 17 00:00:00 2001
From: Thomas Megel <57842400+OpenScanEu@users.noreply.github.com>
Date: Mon, 4 Sep 2023 17:03:17 +0200
Subject: [PATCH 01/38] rotor endstop, diskspace warning
added optional rotor endstop
fixed wrong stacking order and blurry images
added error warning if an image set is about to surpass the available diskspace
---
README.md | 14 +-
docs/Telegram.md | 52 +
docs/changelog.md | 46 +
docs/img/telegram_bot_watch.jpg | Bin 0 -> 79487 bytes
docs/img/telegram_configuration.png | Bin 0 -> 48062 bytes
update/beta/Arducam.py | 202 -
update/beta/OpenScan.py | 119 +-
update/beta/config.txt | 12 +-
update/beta/fla.py | 416 +-
update/beta/{flows.json => flows.json.tmpl} | 9562 +++++++----------
update/beta/settings.js | 63 +-
update/betaArdu/Arducam.py | 202 -
update/main/Arducam.py | 202 -
update/main/config.txt | 85 -
update/main/fla.py | 149 -
update/{betaArdu => meanwhile}/OpenScan.py | 9 +-
update/{betaArdu => meanwhile}/config.txt | 0
update/{betaArdu => meanwhile}/fla.py | 63 +-
.../flows.json => meanwhile/flows.json.tmpl} | 9505 +++++++---------
update/{betaArdu => meanwhile}/settings.js | 1 +
update/meanwhile/start.sh | 11 +
update/mini/Arducam.py | 202 -
update/mini/OpenScan.py | 185 -
update/mini/fla.py | 100 -
update/mini/flows.json | 5500 ----------
update/mini/settings.js | 489 -
update/{main => stable}/OpenScan.py | 125 +-
update/{mini => stable}/config.txt | 11 +-
update/stable/fla.py | 351 +
.../flows.json => stable/flows.json.tmpl} | 1226 ++-
update/{main => stable}/settings.js | 63 +-
update/update.json | 126 +-
32 files changed, 10209 insertions(+), 18882 deletions(-)
create mode 100644 docs/Telegram.md
create mode 100644 docs/changelog.md
create mode 100644 docs/img/telegram_bot_watch.jpg
create mode 100644 docs/img/telegram_configuration.png
delete mode 100644 update/beta/Arducam.py
mode change 100644 => 100755 update/beta/config.txt
rename update/beta/{flows.json => flows.json.tmpl} (59%)
delete mode 100644 update/betaArdu/Arducam.py
delete mode 100644 update/main/Arducam.py
delete mode 100644 update/main/config.txt
delete mode 100644 update/main/fla.py
rename update/{betaArdu => meanwhile}/OpenScan.py (97%)
rename update/{betaArdu => meanwhile}/config.txt (100%)
mode change 100644 => 100755
rename update/{betaArdu => meanwhile}/fla.py (89%)
rename update/{main/flows.json => meanwhile/flows.json.tmpl} (58%)
rename update/{betaArdu => meanwhile}/settings.js (99%)
create mode 100755 update/meanwhile/start.sh
delete mode 100644 update/mini/Arducam.py
delete mode 100644 update/mini/OpenScan.py
delete mode 100644 update/mini/fla.py
delete mode 100644 update/mini/flows.json
delete mode 100644 update/mini/settings.js
rename update/{main => stable}/OpenScan.py (59%)
rename update/{mini => stable}/config.txt (95%)
mode change 100644 => 100755
create mode 100644 update/stable/fla.py
rename update/{betaArdu/flows.json => stable/flows.json.tmpl} (89%)
rename update/{main => stable}/settings.js (92%)
diff --git a/README.md b/README.md
index e9478fc..b08bccd 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,18 @@
# OpenScan2 - 3D Scanner
-## Related and more specific repositories
+
+Please take a look at the current [CHANGELOG](./docs/changelog.md)
+
+This is not the official OpenScan repository. This is a fork of [Thomas Megel](https://github.com/OpenScanEu) work but completly user-centric. Openscan is great in both software and hardware an
+and Thomas has done a great job. But openscan has those things that:
+* Users hate and complain continually and there is no one fixing nor acepting fixes/features
+* The workflow has ups and downs and some interactions feel buggy.
+The aim of this project is to tackle both weaknesses. COnvert this to a pleasant experience fro the burning of the image to the exporting of the model from the scanner.
+
+## Official Openscan repositories:
If you want to take part in the development of a specific part of the OpenScan system, feel free to join:
+* [OpenScan2 - Official Openscan files](https://github.com/OpenScanEu/OpenScan2)
* [OpenScanCloud - Web API for photogrammetry processing of image files](https://github.com/OpenScanEu/OpenScanCloud)
* [OpenScan-Design - 3D printable files and other design approaches](https://github.com/OpenScanEu/OpenScan-Design)
* [OpenScan-PCB - A place to discuss and improve the PCB designs](https://github.com/OpenScanEu/OpenScan-PCB)
@@ -10,6 +20,6 @@ If you want to take part in the development of a specific part of the OpenScan s
## Contribution and contributors
-The project is based on the contribution of many great and open-minded people by doing tutorials on Youtube, comments on Reddit, publications on GitHub and many other places. Without all those voluntary contributors, this project would not be possible at all. Please feel free to join the discussions and development preferably in this repository or on [r/OpenScan](https://www.reddit.com/r/OpenScan/), [Facebook - LowBudget3DScan](https://www.facebook.com/groups/142108429832711) or [OpenScan.eu/forum](https://openscan.eu/forum)
+The official project is based on the contribution of many great and open-minded people by doing tutorials on Youtube, comments on Reddit, publications on GitHub and many other places. Without all those voluntary contributors, this project would not be possible at all. Please feel free to join the discussions and development preferably in this repository or on [r/OpenScan](https://www.reddit.com/r/OpenScan/), [Facebook - LowBudget3DScan](https://www.facebook.com/groups/142108429832711) or [OpenScan.eu/forum](https://openscan.eu/forum)
Thank you!
diff --git a/docs/Telegram.md b/docs/Telegram.md
new file mode 100644
index 0000000..ec8b080
--- /dev/null
+++ b/docs/Telegram.md
@@ -0,0 +1,52 @@
+# Telegram Messaging
+### Why
+Would it be great to be alerted when a long session ends? The aim of this feature is to have a way (in this case, via telegram) to know when a session is started (giving some basic information about what will happen) and another message when the session ends.
+
+### How
+Its only some conditions along the existing flows. If you have activated (and properly configurated) the `Telegram Api Token` and `Telegram Client_id` you will receive the status messages to telegram.
+
+
+
+## Setup
+Everything is managed by [botfather](https://telegram.me/BotFather). Follow the next steps:
+
+Request a new bot: send the command `/newbot`. The response to that command will be:
+```
+Alright, a new bot. How are we going to call it? Please choose a name for your bot.
+```
+Now you name your bot whtever you like. This is how you will identify your bot in your telegram user list from now on.
+After choosing the name you willget that response:
+
+```
+Done! Congratulations on your new bot. You will find it at t.me/openscan_bot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you've finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.
+
+Use this token to access the HTTP API:
+4815162342:N334AA-covfefeskibidi
+Keep your token secure and store it safely, it can be used by anyone to control your bot.
+
+For a description of the Bot API, see this page: https://core.telegram.org/bots/api
+```
+
+This is a really important part: store that token safely as its the way you will securely talk with your bot.
+
+Now you have 2 ways to fint your "client_id":
+
+The first is open a chat with [@userinfo](https://t.me/userinfobot). If you type ```/start```there you will get an ```Id```response and you can complete the process.
+
+Another way is opening an url in your browser to get your id:
+
+```
+https://api.telegram.org/bot/getUpdates
+```
+
+you will revive a response like this:
+
+```
+{"ok":true,"result":[{"update_id":462349,
+"message":{"message_id":123,"from":{"id":1111111,"is_bot":false,"first_name":"Meanwhile","username":"meanwhile","language_code":"ca"},
+```
+
+The Client_id is the "id" field (not the "update_id" or "message_id").
+Upon completing the settings with that information you are ready to go!
+
+
\ No newline at end of file
diff --git a/docs/changelog.md b/docs/changelog.md
new file mode 100644
index 0000000..af4cd9b
--- /dev/null
+++ b/docs/changelog.md
@@ -0,0 +1,46 @@
+# Changelog
+
+### 2024-02-26
+* Fixed: Without telegram configured it was impossible to finish a scan (hanged on finish). But who in their sanity would not use telegram if available right?
+* After a reboot/shutdown, if you forgot to close that tab it will not trigger a disaster when you are scanning in the future
+
+### 2024-02-23 Meanwhile (23F)
+
+This is the beginning of a fork. After several attempts to add a feature and get silence as response I have decided to create my own OpenScan fork.
+* added: When doing a focus stack session you can store the contents inside the zip with all the photos sorted in their own folder. Some focus stacking applications will benefit from this.
+* added: [You can now get alerts on Telegram](Telegram.md) when the session starts and the session ends
+* fixed: The "delete all files" operation no longer prevents the refresh of the file list
+
+### 2022-05-19 documentation
+* changed: overall structure --> the OpenScan2 repository will serve as a central hub for all informations concerning OpenScan (i.e. firmware, hardware, tutorials ...)
+### 2022-05-11 beta
+* added: changelog and version (finally ;)
+* added: create an update using the node-red-backend inject node ("create beta" and "prepare image creation" in "update" tab)
+* fixed: Error handling in flask (when no preview is taken)
+* fixed: Error when upload failed + node red restarted (multiple instances of curl)
+* fixed: When closing the browser session/missing the popup after the routine, the data set got lost (if this happens, just restart the device and it will be moved to the right location)
+### 2022-04-26 beta
+* added: donation button ;)
+* fixed: the wonderful camera position algorithm was faulty and a bit inefficient
+* fixed: downscaling the preview image caused the preview to disappear (when crop value was to high)
+* fixed: delay_before and delay_after are now properly applied, so that you can set a delay before/after taking a photo
+* fixed: updates might crash the selected camera --> it is now necessary to re-select the camera after certain updates
+### 2022-04-21 beta
+* added: timer (ETA) until a routine is done
+* added: showing progress, while files are being split (before uploading to OpenScanCloud)
+* added: infotexts (FINALLY :)
+* added: several stats/device information
+* fixed: combining two sets did not delete the smaller set
+### 2022-04-20 beta & main
+* !fixed: pi cameras (v1.3, v2.1 and HQ) finally work and can be simply selected in the settings menu
+* !fixed: Raspberry Pi 3B+ and 4 work! (the main limiting factor now is the RAM, where at least 1GB RAM is needed)
+* fixed: live preview sometimes did not work. This has been a network speed issue and has been solved by downscaling the image (resolution can be set)
+* fixed: it is now possible to delete individual sets.
+* fixed: it is now possible to use all LEDs.
+* added: Turntable mode (disable the second axis)
+* added: Pause scan. You can pause and un-pause the scan by simply pressing the button
+* added: second scan pass. When one scan is done, you can immediately run a second pass. This is especially useful, if you want to re-orient the object
+* added: auto-timeout. Turn off the ringlight (todo: and motors) after 300 seconds (value can be set)
+* added: diskspace warning. When free diskspace drops below a given threshold (4GB by default), a warning message will appear
+* changed: new background image, minor design changes
+* changed: log file can be easily generated and downloaded by clicking a button (update&info tab)
\ No newline at end of file
diff --git a/docs/img/telegram_bot_watch.jpg b/docs/img/telegram_bot_watch.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..e0728d8cc5b977b1fd5e2c0be10b3e68c39c56d9
GIT binary patch
literal 79487
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 kAye<^r0wX=15rI^ag
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