Browse Source

fix imports

use FSInfo struct for esp8266
master
Rick Watson 4 years ago
parent
commit
aa04cfd80c
  1. 9
      interface/src/system/SystemStatusForm.tsx
  2. 4
      interface/src/system/types.ts
  3. 16
      lib/framework/SystemStatus.cpp
  4. 2
      lib/framework/SystemStatus.h

9
interface/src/system/SystemStatusForm.tsx

@ -27,7 +27,7 @@ interface SystemStatusFormState {
type SystemStatusFormProps = AuthenticatedContextProps & RestFormProps<SystemStatus>;
function formatNumber(num: number){
function formatNumber(num: number) {
return new Intl.NumberFormat().format(num);
}
@ -93,18 +93,19 @@ class SystemStatusForm extends Component<SystemStatusFormProps, SystemStatusForm
</ListItemAvatar>
<ListItemText primary="Flash Chip (Size / Speed)" secondary={formatNumber(data.flash_chip_size) + ' bytes / ' + (data.flash_chip_speed / 1000000).toFixed(0) + ' MHz'} />
</ListItem>
<Divider variant="inset" component="li" />
<ListItem >
<ListItemAvatar>
<Avatar>
<StorageIcon />
</Avatar>
</ListItemAvatar>
<ListItemText primary="SPIFFS (Used / Total | Free)" secondary={formatNumber(data.spiffs_used) + ' / ' + formatNumber(data.spiffs_size) + ' bytes | '+ formatNumber(data.spiffs_size-data.spiffs_used) + ' bytes free'} />
</ListItem>
<ListItemText primary="SPIFFS (Used / Total)" secondary={formatNumber(data.spiffs_used) + ' / ' + formatNumber(data.spiffs_total) + ' bytes (' + formatNumber(data.spiffs_total - data.spiffs_used) + ' bytes free)'} />
</ListItem>
<Divider variant="inset" component="li" />
</Fragment>
);
}
}
renderRestartDialog() {
return (

4
interface/src/system/types.ts

@ -8,8 +8,8 @@ export interface SystemStatus {
sdk_version: string;
flash_chip_size: number;
flash_chip_speed: number;
spiffs_size:number;
spiffs_used:number;
spiffs_used: number;
spiffs_total: number;
}
export interface OTASettings {

16
lib/framework/SystemStatus.cpp

@ -1,9 +1,4 @@
#include <SystemStatus.h>
#ifdef ESP32
#include <SPIFFS.h>
#elif defined(ESP8266)
#include <FS.h>
#endif
SystemStatus::SystemStatus(AsyncWebServer* server, SecurityManager* securityManager) {
server->on(SYSTEM_STATUS_SERVICE_PATH,
@ -29,8 +24,17 @@ void SystemStatus::systemStatus(AsyncWebServerRequest* request) {
root["sdk_version"] = ESP.getSdkVersion();
root["flash_chip_size"] = ESP.getFlashChipSize();
root["flash_chip_speed"] = ESP.getFlashChipSpeed();
#ifdef ESP32
root["spiffs_total"] = SPIFFS.totalBytes();
root["spiffs_used"] = SPIFFS.usedBytes();
root["spiffs_size"] = SPIFFS.totalBytes();
#elif defined(ESP8266)
FSInfo fs_info;
SPIFFS.info(fs_info);
root["spiffs_total"] = fs_info.totalBytes;
root["spiffs_used"] = fs_info.usedBytes;
#endif
response->setLength();
request->send(response);
}

2
lib/framework/SystemStatus.h

@ -4,9 +4,11 @@
#ifdef ESP32
#include <WiFi.h>
#include <AsyncTCP.h>
#include <SPIFFS.h>
#elif defined(ESP8266)
#include <ESP8266WiFi.h>
#include <ESPAsyncTCP.h>
#include <FS.h>
#endif
#include <ArduinoJson.h>

Loading…
Cancel
Save