02-19-2017, 04:53 AM
(This post was last modified: 02-19-2017, 08:30 AM by admin.
Edit Reason: add info about rescan sensors
)
Hi Guys,
Looks like i am slowly going out of the firefighting mode i was in since an year, so there was finally some time for doing some cleanup and finishing some things that i started long ago. The most notable improvements i added in the last month are listed below.
Device Configuration Saving
Up to now with each start, the firmware tried to find out what sensors there are. This is useless, so now once the device discovers all sensors it stores them, and the next time it simply reuses it. Sometimes due to the nature of I2C communication some sensor is not discovered immediately - so it is possible that after the discovery some sensor is not found. In the "Settings" menu, there is a button "Rescan Sensors", which will redo the process - so you can try it
Built-In Light Sensor
All CO2/Dust monitors, shipped after July 2016 include a Built-In Light Sensor. It's idea was to cooperate with the RGB Led and control it's brightness. Yet due to the fact that while the RGB Led is on, it affects the light sensor, using it required some tricks. Also the light sensor requires 100 ms to capture the ambient light. So now you will notice how the RGB Led will blink for ~150 ms, when the device detects that the ambient light changed. To enable it, in the Settings menu press the "Rescan Sensors" button. It will clean up the internal sensor configuration and restart the device to start clean. Then also check the checkbox there "BuiltIn Light Sensor" - Enable. This is needed, since it cannot be autodetected, and some devices do not have it.
Then there will be one additional placeholder that can be used "LDR". Values are from 0-1000, and due to the different nature of the boxes i've done in the last year, they are differently transparent. So in "vEsprino" tab there is a new config setting "BrightnessOverride", which in case of built-in sensor takes values -10:10, to make it brighter or dimmer. In case of no built in sensor, the values are 0:30 and control thre brightness
Note: Sadly some time ago i noticed that during assembly one of the 2 resistors required for the LDR to work correctly is sometimes not soldered. In December i showed this to the assebly guys and we did so changes to have it more consistent. But it is possible that on some devices the LDR will not work It is also not easy to fix it as the corresponding part is a 0402 resistor, that gets soldered vertically. Now i use 0603 and it is all fine.
RGB Led for CO2 or Dust levels
I've also finally integrated the RGB Led with Dust/CO2 values. In "Generic Services / RGB Led" you can select which value to display ranges are 400-3000ppm for CO2 and 0-250 ug/m3.
Currently i sweep through Green, Yellow, Red, Lila. You can press the Color Sweep button, it will simulate a sweep through the whole range and dump the value, so that you can get an impression.
Note: the LED consumes 1-40 mA (e.g. yellow and lila are two colors, so twice more than green and red), so this may have some impact on the temperature measurements. Currently devices with CDM7160 consume ~20 mA, CM1106 ~100 ma (for them there is already some temperature correction, for those sold after Dec 2016 by default), and a Dust sensor adds 30mA. For those of you with the larger boxes, the impact should be in the range of 0.2-0.4 degrees, mostly if the ambient light is bright and the color is yellow
Disabling WebSocketServer and WiFiHotspot
It is now possible from the Connection tab to disable the autostarting of the WebSocketServer (so configuration over WiFi will not be possible) and the WiFiHotspot in case of no WiFi Connection
Removed Automatic Firmware update
The automatic firmware update was needed in the first months, where i was discovering showstoppers quite often, and it was a handy feature to easily update all devices. Now that everything is stable i've removed it, and now the Config tool checks if there is a newer version and let's you know you can update
Support for the vThing CO2 Monitor (r2)
The firmware can now be finally flashed also the the previous revision of the vThing - CO2 Monitor, that i was selling from Dec 2015 until June 2016. To flash it - update using this command
otau http://anker-bg.com/vlast3k/vesprino/latest.bin
And then install the newer version of the configuration utility from here
https://chrome.google.com/webstore/detai...kkpogepgjj
Support for the vAir CO2 Monitor (r1)
I had to stop producing the original version of the vAir-CO2 Monitor, that had a 6 RGB Led color bar and display as printing the boxes was a big PITA. So i spent some time to design a new enclosure (w/o the gray outline, which made the problem), and prepared the firmware for them. I will share more details in a dedicated post.
Regards, Vladimir
Looks like i am slowly going out of the firefighting mode i was in since an year, so there was finally some time for doing some cleanup and finishing some things that i started long ago. The most notable improvements i added in the last month are listed below.
Device Configuration Saving
Up to now with each start, the firmware tried to find out what sensors there are. This is useless, so now once the device discovers all sensors it stores them, and the next time it simply reuses it. Sometimes due to the nature of I2C communication some sensor is not discovered immediately - so it is possible that after the discovery some sensor is not found. In the "Settings" menu, there is a button "Rescan Sensors", which will redo the process - so you can try it
Built-In Light Sensor
All CO2/Dust monitors, shipped after July 2016 include a Built-In Light Sensor. It's idea was to cooperate with the RGB Led and control it's brightness. Yet due to the fact that while the RGB Led is on, it affects the light sensor, using it required some tricks. Also the light sensor requires 100 ms to capture the ambient light. So now you will notice how the RGB Led will blink for ~150 ms, when the device detects that the ambient light changed. To enable it, in the Settings menu press the "Rescan Sensors" button. It will clean up the internal sensor configuration and restart the device to start clean. Then also check the checkbox there "BuiltIn Light Sensor" - Enable. This is needed, since it cannot be autodetected, and some devices do not have it.
Then there will be one additional placeholder that can be used "LDR". Values are from 0-1000, and due to the different nature of the boxes i've done in the last year, they are differently transparent. So in "vEsprino" tab there is a new config setting "BrightnessOverride", which in case of built-in sensor takes values -10:10, to make it brighter or dimmer. In case of no built in sensor, the values are 0:30 and control thre brightness
Note: Sadly some time ago i noticed that during assembly one of the 2 resistors required for the LDR to work correctly is sometimes not soldered. In December i showed this to the assebly guys and we did so changes to have it more consistent. But it is possible that on some devices the LDR will not work It is also not easy to fix it as the corresponding part is a 0402 resistor, that gets soldered vertically. Now i use 0603 and it is all fine.
RGB Led for CO2 or Dust levels
I've also finally integrated the RGB Led with Dust/CO2 values. In "Generic Services / RGB Led" you can select which value to display ranges are 400-3000ppm for CO2 and 0-250 ug/m3.
Currently i sweep through Green, Yellow, Red, Lila. You can press the Color Sweep button, it will simulate a sweep through the whole range and dump the value, so that you can get an impression.
Note: the LED consumes 1-40 mA (e.g. yellow and lila are two colors, so twice more than green and red), so this may have some impact on the temperature measurements. Currently devices with CDM7160 consume ~20 mA, CM1106 ~100 ma (for them there is already some temperature correction, for those sold after Dec 2016 by default), and a Dust sensor adds 30mA. For those of you with the larger boxes, the impact should be in the range of 0.2-0.4 degrees, mostly if the ambient light is bright and the color is yellow
Disabling WebSocketServer and WiFiHotspot
It is now possible from the Connection tab to disable the autostarting of the WebSocketServer (so configuration over WiFi will not be possible) and the WiFiHotspot in case of no WiFi Connection
Removed Automatic Firmware update
The automatic firmware update was needed in the first months, where i was discovering showstoppers quite often, and it was a handy feature to easily update all devices. Now that everything is stable i've removed it, and now the Config tool checks if there is a newer version and let's you know you can update
Support for the vThing CO2 Monitor (r2)
The firmware can now be finally flashed also the the previous revision of the vThing - CO2 Monitor, that i was selling from Dec 2015 until June 2016. To flash it - update using this command
otau http://anker-bg.com/vlast3k/vesprino/latest.bin
And then install the newer version of the configuration utility from here
https://chrome.google.com/webstore/detai...kkpogepgjj
Support for the vAir CO2 Monitor (r1)
I had to stop producing the original version of the vAir-CO2 Monitor, that had a 6 RGB Led color bar and display as printing the boxes was a big PITA. So i spent some time to design a new enclosure (w/o the gray outline, which made the problem), and prepared the firmware for them. I will share more details in a dedicated post.
Regards, Vladimir