@@ -12,6 +12,7 @@ QSPIFBlockDevice root(QSPI_SO0, QSPI_SO1, QSPI_SO2, QSPI_SO3, QSPI_SCK, QSPI_CS
1212mbed::MBRBlockDevicewifi_data (&root,1 );
1313mbed::MBRBlockDeviceota_data (&root,2 );
1414mbed::MBRBlockDeviceuser_data (&root,3 );
15+ mbed::MBRBlockDevicekvstore_data (&root,4 );
1516mbed::FATFileSystemwifi_data_fs (" wlan" );
1617mbed::FATFileSystemota_data_fs (" fs" );
1718mbed::FileSystem * user_data_fs;
@@ -47,11 +48,13 @@ void setup() {
4748 Serial.println (" Available partition schemes:" );
4849 Serial.println (" \n Partition scheme 1" );
4950 Serial.println (" Partition 1: WiFi firmware and certificates 1MB" );
50- Serial.println (" Partition 2: OTA and user data 13MB" );
51+ Serial.println (" Partition 2: OTA and user data 12MB" );
52+ Serial.println (" Partition 4: Provisioning KVStore 1MB" );
5153 Serial.println (" \n Partition scheme 2" );
5254 Serial.println (" Partition 1: WiFi firmware and certificates 1MB" );
5355 Serial.println (" Partition 2: OTA 5MB" );
54- Serial.println (" Partition 3: User data 8MB" ),
56+ Serial.println (" Partition 3: User data 7MB" ),
57+ Serial.println (" Partition 4: Provisioning KVStore 1MB" );
5558 Serial.println (" \n Do you want to use partition scheme 1? Y/[n]" );
5659 Serial.println (" If No, partition scheme 2 will be used." );
5760bool default_scheme =waitResponse ();
@@ -89,12 +92,14 @@ void setup() {
8992
9093mbed::MBRBlockDevice::partition (&root,1 ,0x0B ,0 ,1024 *1024 );
9194if (default_scheme) {
92- mbed::MBRBlockDevice::partition (&root,3 ,0x0B ,14 *1024 *1024 ,14 *1024 *1024 );
93- mbed::MBRBlockDevice::partition (&root,2 ,0x0B ,1024 *1024 ,14 *1024 *1024 );
95+ mbed::MBRBlockDevice::partition (&root,4 ,0x0B ,13 *1024 *1024 ,14 *1024 *1024 );
96+ mbed::MBRBlockDevice::partition (&root,3 ,0x0B ,13 *1024 *1024 ,13 *1024 *1024 );
97+ mbed::MBRBlockDevice::partition (&root,2 ,0x0B ,1024 *1024 ,13 *1024 *1024 );
9498// use space from 15.5MB to 16 MB for another fw, memory mapped
9599 }else {
96- mbed::MBRBlockDevice::partition (&root,2 ,0x0B ,1024 *1024 ,6 *1024 *1024 );
97- mbed::MBRBlockDevice::partition (&root,3 ,0x0B ,6 *1024 *1024 ,14 *1024 *1024 );
100+ mbed::MBRBlockDevice::partition (&root,4 ,0x0B ,1024 *1024 ,6 *1024 *1024 );
101+ mbed::MBRBlockDevice::partition (&root,3 ,0x0B ,6 *1024 *1024 ,13 *1024 *1024 );
102+ mbed::MBRBlockDevice::partition (&root,2 ,0x0B ,13 *1024 *1024 ,14 *1024 *1024 );
98103// use space from 15.5MB to 16 MB for another fw, memory mapped
99104 }
100105
@@ -103,7 +108,7 @@ void setup() {
103108 Serial.println (" Error formatting WiFi partition" );
104109return ;
105110 }
106-
111+
107112 err = ota_data_fs.reformat (&ota_data);
108113if (err) {
109114 Serial.println (" Error formatting OTA partition" );