Compare commits
	
		
			15 Commits
		
	
	
		
			v1.3.41
			...
			adb354ddcd
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| adb354ddcd | |||
| 15d5e5edce | |||
| c6edf30245 | |||
| 65ac207f36 | |||
| 698abbd669 | |||
| 04a7c2cce3 | |||
| 78f54b72fd | |||
| f4eee9af91 | |||
| cad14b3bc2 | |||
| 312f75fc5f | |||
| b8714e93e2 | |||
| cd9da0fe4f | |||
| 2b620ef5ed | |||
| 3f63a01b8b | |||
| 22bb16b6a4 | 
							
								
								
									
										4
									
								
								.github/workflows/gitea-release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/gitea-release.yml
									
									
									
									
										vendored
									
									
								
							| @@ -40,8 +40,8 @@ jobs: | |||||||
|         # Copy firmware binary |         # Copy firmware binary | ||||||
|         cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin |         cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin | ||||||
|          |          | ||||||
|         # Create SPIFFS binary (without header) |         # Create SPIFFS binary with minimal header | ||||||
|         cp .pio/build/esp32dev/spiffs.bin .pio.build/esp32dev/upgrade_filaman_website_v${VERSION}.bin |         ( printf '\xe9\x01\x00\x00' && cat .pio/build/esp32dev/spiffs.bin ) > .pio/build/esp32dev/upgrade_filaman_website_v${VERSION}.bin | ||||||
|          |          | ||||||
|         # Create full binary |         # Create full binary | ||||||
|         (cd .pio/build/esp32dev &&  |         (cd .pio/build/esp32dev &&  | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								.github/workflows/github-release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/workflows/github-release.yml
									
									
									
									
										vendored
									
									
								
							| @@ -47,8 +47,8 @@ jobs: | |||||||
|         # Copy firmware binary |         # Copy firmware binary | ||||||
|         cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin |         cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin | ||||||
|          |          | ||||||
|         # Create SPIFFS binary (without header) |         # Create SPIFFS binary with minimal header | ||||||
|         cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/upgrade_filaman_website_v${VERSION}.bin |         ( printf '\xe9\x01\x00\x00' && cat .pio/build/esp32dev/spiffs.bin ) > .pio/build/esp32dev/upgrade_filaman_website_v${VERSION}.bin | ||||||
|          |          | ||||||
|         # Create full binary (always) |         # Create full binary (always) | ||||||
|         (cd .pio/build/esp32dev &&  |         (cd .pio/build/esp32dev &&  | ||||||
|   | |||||||
							
								
								
									
										32
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								CHANGELOG.md
									
									
									
									
									
								
							| @@ -1,5 +1,37 @@ | |||||||
| # Changelog | # Changelog | ||||||
|  |  | ||||||
|  | ## [1.3.46] - 2025-02-22 | ||||||
|  | ### Changed | ||||||
|  | - update webpages for version v1.3.46 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ## [1.3.45] - 2025-02-22 | ||||||
|  | ### Changed | ||||||
|  | - update webpages for version v1.3.45 | ||||||
|  | - workflow: update SPIFFS binary creation to include minimal header and adjust update validation logic | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ## [1.3.44] - 2025-02-22 | ||||||
|  | ### Changed | ||||||
|  | - update webpages for version v1.3.44 | ||||||
|  | - update header title to 'Hollo Lollo Trollo' | ||||||
|  | - update header title to 'Filament Management Tool' and improve update response messages | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ## [1.3.43] - 2025-02-22 | ||||||
|  | ### Changed | ||||||
|  | - update webpages for version v1.3.43 | ||||||
|  | - update header title to 'Hollo Lollo Trollo' | ||||||
|  |  | ||||||
|  |  | ||||||
|  | ## [1.3.42] - 2025-02-22 | ||||||
|  | ### Changed | ||||||
|  | - update webpages for version v1.3.42 | ||||||
|  |  | ||||||
|  | ### Fixed | ||||||
|  | - correct path for SPIFFS binary creation in Gitea release workflow | ||||||
|  |  | ||||||
|  |  | ||||||
| ## [1.3.41] - 2025-02-22 | ## [1.3.41] - 2025-02-22 | ||||||
| ### Changed | ### Changed | ||||||
| - update webpages for version v1.3.41 | - update webpages for version v1.3.41 | ||||||
|   | |||||||
| @@ -24,7 +24,7 @@ | |||||||
|             <img src="/logo.png" alt="FilaMan Logo" class="logo"> |             <img src="/logo.png" alt="FilaMan Logo" class="logo"> | ||||||
|             <div class="logo-text"> |             <div class="logo-text"> | ||||||
|                 <h1>FilaMan<span class="version"></span></h1> |                 <h1>FilaMan<span class="version"></span></h1> | ||||||
|                 <h4>Filament Management Tool</h4> |                 <h4>Hollo Lollo Trollo</h4> | ||||||
|             </div> |             </div> | ||||||
|         </div> |         </div> | ||||||
|         <nav style="display: flex; gap: 1rem;"> |         <nav style="display: flex; gap: 1rem;"> | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ | |||||||
| ; https://docs.platformio.org/page/projectconf.html | ; https://docs.platformio.org/page/projectconf.html | ||||||
|  |  | ||||||
| [common] | [common] | ||||||
| version = "1.3.41" | version = "1.3.46" | ||||||
|  |  | ||||||
| #test | #test | ||||||
|  |  | ||||||
|   | |||||||
| @@ -368,11 +368,11 @@ void setupWebserver(AsyncWebServer &server) { | |||||||
|         [](AsyncWebServerRequest *request) { |         [](AsyncWebServerRequest *request) { | ||||||
|             // Nach Update-Abschluss |             // Nach Update-Abschluss | ||||||
|             bool success = !Update.hasError(); |             bool success = !Update.hasError(); | ||||||
|  |             String message = success ? "Update successful" : String("Update failed: ") + Update.errorString(); | ||||||
|             AsyncWebServerResponse *response = request->beginResponse( |             AsyncWebServerResponse *response = request->beginResponse( | ||||||
|                 success ? 200 : 400, |                 success ? 200 : 400, | ||||||
|                 "application/json", |                 "application/json", | ||||||
|                 success ? "{\"success\":true,\"message\":\"Update successful\"}"  |                 "{\"success\":" + String(success ? "true" : "false") + ",\"message\":\"" + message + "\"}" | ||||||
|                        : "{\"success\":false,\"message\":\"Update failed\"}" |  | ||||||
|             ); |             ); | ||||||
|             response->addHeader("Connection", "close"); |             response->addHeader("Connection", "close"); | ||||||
|             request->send(response); |             request->send(response); | ||||||
| @@ -392,33 +392,38 @@ void setupWebserver(AsyncWebServer &server) { | |||||||
|  |  | ||||||
|             oledShowMessage("Upgrade please wait"); |             oledShowMessage("Upgrade please wait"); | ||||||
|  |  | ||||||
|             // TODO: Backup |  | ||||||
|  |  | ||||||
|             if (!index) { |             if (!index) { | ||||||
|                 updateSize = request->contentLength(); |                 updateSize = request->contentLength(); | ||||||
|                 command = (filename.indexOf("spiffs") > -1) ? U_SPIFFS : U_FLASH; |                 command = (filename.indexOf("spiffs") > -1) ? U_SPIFFS : U_FLASH; | ||||||
|  |                 Serial.printf("Update Start: %s\nSize: %u\nCommand: %d\n", filename.c_str(), updateSize, command); | ||||||
|                  |                  | ||||||
|                 if (command == U_SPIFFS) { |                 if (command == U_SPIFFS) { | ||||||
|                     // Backup JSON config files before SPIFFS update |                     Serial.println("Backup JSON configs..."); | ||||||
|                     backupJsonConfigs(); |                     backupJsonConfigs(); | ||||||
|                 } |  | ||||||
|                      |                      | ||||||
|                 // Setze spezifische Update-Flags für SPIFFS-Updates |                     // Deaktiviere alle Validierungen für SPIFFS-Updates | ||||||
|                 if (!Update.begin(updateSize, command, command == U_SPIFFS ? true : false, command == U_SPIFFS ? 0 : -1)) { |                     if (!Update.begin(UPDATE_SIZE_UNKNOWN, command)) { | ||||||
|                     if (command == U_SPIFFS) { |                         Serial.printf("Update Begin Error: %s\n", Update.errorString()); | ||||||
|                         // Restore JSON config files if update fails at start |  | ||||||
|                         restoreJsonConfigs(); |                         restoreJsonConfigs(); | ||||||
|  |                         String errorMsg = String("Update begin failed: ") + Update.errorString(); | ||||||
|  |                         request->send(400, "application/json", "{\"success\":false,\"message\":\"" + errorMsg + "\"}"); | ||||||
|  |                         return; | ||||||
|                     } |                     } | ||||||
|  |                 } else { | ||||||
|  |                     // Normale Validierung für Firmware-Updates | ||||||
|  |                     if (!Update.begin(updateSize, command)) { | ||||||
|  |                         Serial.printf("Update Begin Error: %s\n", Update.errorString()); | ||||||
|                         String errorMsg = String("Update begin failed: ") + Update.errorString(); |                         String errorMsg = String("Update begin failed: ") + Update.errorString(); | ||||||
|                         request->send(400, "application/json", "{\"success\":false,\"message\":\"" + errorMsg + "\"}"); |                         request->send(400, "application/json", "{\"success\":false,\"message\":\"" + errorMsg + "\"}"); | ||||||
|                         return; |                         return; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|  |             } | ||||||
|  |  | ||||||
|             if (len) { |             if (len) { | ||||||
|                 if (Update.write(data, len) != len) { |                 if (Update.write(data, len) != len) { | ||||||
|  |                     Serial.printf("Update Write Error: %s\n", Update.errorString()); | ||||||
|                     if (command == U_SPIFFS) { |                     if (command == U_SPIFFS) { | ||||||
|                         // Restore JSON config files if update fails during write |  | ||||||
|                         restoreJsonConfigs(); |                         restoreJsonConfigs(); | ||||||
|                     } |                     } | ||||||
|                     String errorMsg = String("Write failed: ") + Update.errorString(); |                     String errorMsg = String("Write failed: ") + Update.errorString(); | ||||||
| @@ -426,21 +431,23 @@ void setupWebserver(AsyncWebServer &server) { | |||||||
|                     return; |                     return; | ||||||
|                 } |                 } | ||||||
|                  |                  | ||||||
|                 // Sende den Fortschritt als JSON, um unerwünschte Zeilenumbrüche zu vermeiden |                 // Sende den Fortschritt als JSON | ||||||
|                 String progress = "{\"progress\":" + String((index + len) * 100 / updateSize) + "}"; |                 String progress = "{\"progress\":" + String((index + len) * 100 / updateSize) + "}"; | ||||||
|                 request->send(200, "application/json", progress); |                 request->send(200, "application/json", progress); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             if (final) { |             if (final) { | ||||||
|                 if (!Update.end(true)) { |                 if (!Update.end(true)) { | ||||||
|  |                     Serial.printf("Update End Error: %s\n", Update.errorString()); | ||||||
|                     if (command == U_SPIFFS) { |                     if (command == U_SPIFFS) { | ||||||
|                         // Restore JSON config files if update fails at end |                         Serial.println("Restoring JSON configs..."); | ||||||
|                         restoreJsonConfigs(); |                         restoreJsonConfigs(); | ||||||
|                     } |                     } | ||||||
|                     String errorMsg = String("Update end failed: ") + Update.errorString(); |                     String errorMsg = String("Update end failed: ") + Update.errorString(); | ||||||
|                     request->send(400, "application/json", "{\"success\":false,\"message\":\"" + errorMsg + "\"}"); |                     request->send(400, "application/json", "{\"success\":false,\"message\":\"" + errorMsg + "\"}"); | ||||||
|                     return; |                     return; | ||||||
|                 } |                 } | ||||||
|  |                 Serial.println("Update Success!"); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     ); |     ); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user