negative temperatures not showing in TemperatureSensor

is there a way to set the range of temperatures in a temperature sensor? right now on my HomeKit app it clamps between 32 and 212 when I see the temperature sensor in the iOS app, even though I'm sending back negative floating point values for "CurrentTemperature" requests.
I'm actually using the temperature sensor for another purpose, it's a power meter for my electric vehicle charger.  it seems to be the best sensor for the purpose (just to report a floating point value so I can see how much power the EV is pulling when it is plugged in)

I was finally able to fix this by editing the Characteristic.CurrentTemperature function in HomeKitTypes.js from at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/gen
Characteristic.CurrentTemperature
...
by setting minValue = -18 and maxValue = 3483, I am able to get a reading of 0º-6300º Fahrenheit on my HomeKit device, which is my way of reporting 0-6300 watts in use by the car charger. Perfect for my range need.
I suppose this issue would need to be taken with the authors of hap-nodejs for not exposing temperature range to homebridge?

Hi,
I am glad you got it working.  The HAP Spec is Apple's HomeKit
Application Specifications.  You would have to take it up with them ;-)
TTFN,
John Talbot
On Wed, Sep 11, 2019 at 1:58 AM itsermo<EMAIL_ADDRESS>wrote:

I was finally able to fix this by editing the
Characteristic.CurrentTemperature function in HomeKitTypes.js from at
/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/gen
Characteristic.CurrentTemperature
...
by setting minValue = -18 and maxValue = 3483, I am able to get a reading
of 0º-6300º Fahrenheit on my HomeKit device, which is my way of reporting
0-6300 watts in use by the car charger. Perfect for my range need.
I suppose this issue would need to be taken with the authors of hap-nodejs
for not exposing temperature range to homebridge?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32?email_source=notifications&email_token=ABSBCX27FVRJCDSAPOIRNWTQJCCHLA5CNFSM4ITELZ22YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6NLIYY#issuecomment-530232419,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABSBCX3C4RNGRLPKHF7ADTTQJCCHLANCNFSM4ITELZ2Q
.

wait, but... the HAP spec doesn't really seem to be the issue here.  the issue is that it appears that there is no way to set the min and max range via cmd4 or homebridge for temperature sensors. is that not a flaw in the design of the hap-nodejs/homebridge rather than the spec itself?
i'm still wrapping my head around how this all works, so forgive me if i'm missing something. but it seems like with a properly-architected homebridge, a plugin should be able to just set minRange and maxRange for a given sensor in a config.json of homebridge, which would pass it on to hap-js and then to homekit.
so, if that's the case, then it follows that i should take this issue up with either homebridge or hap-nodejs peeps, right?

The min and max values are read only.  While I can't publish the Spec for
fear of reprisal.  You may be able to find it online somewhere. I did write
it out in the Cmd4States.js file.
I hope this helps,
John Talbot
On Wed, Sep 11, 2019 at 4:05 PM itsermo<EMAIL_ADDRESS>wrote:

wait, but... the HAP spec doesn't really seem to be the issue here. the
issue is that it appears that there is no way to set the min and max range
via cmd4 or homebridge for temperature sensors. is that not a flaw in the
design of the hap-nodejs/homebridge rather than the spec itself?
i'm still wrapping my head around how this all works, so forgive me if i'm
missing something. but it seems like with a properly-architected
homebridge, a plugin should be able to just set minRange and maxRange for a
given sensor in a config.json of homebridge, which would pass it on to
hap-js and then to homekit.
so, if that's the case, then it follows that i should take this issue up
with either homebridge or hap-nodejs peeps, right?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32?email_source=notifications&email_token=ABSBCX7Y6LIRMN6XCBGLGX3QJFFSBA5CNFSM4ITELZ22YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6PXKOQ#issuecomment-530543930,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABSBCX2EDM6LB63VF446AKDQJFFSBANCNFSM4ITELZ2Q
.

closed as per previous comments.  Will gladly help if still seeing the issue.

Sorry to write in an already closed item. But I have a question related to that. Would be great if someone could give me the needed hint.
I have also updated the hap characteristic in \usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js

Do I also need to update it in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
38:  { type: "CurrentTemperature",
                characteristic: Characteristic.CurrentTemperature,
                props: {format: Characteristic.Formats.FLOAT,
                        unit: Characteristic.Units.CELSIUS,
                        maxValue: 100,
                        minValue: -100,
                        minStep: 0.1,
                        perms: [Characteristic.Perms.READ,
                                Characteristic.Perms.NOTIFY
                               ]
                       },
                validValues: {}
              }

Now I can see negative values in Eve App but in the fakegato-history "null" is reported.

Therefore I wanted to check the debug output (DEBUG for homebridge is activated) of the cmd4 plugin but I cannot see the log (journalctl -f -u homebridge). Thanks for your help.
case FAKEGATO_TYPE_ROOM:
            {
               firstParm       = this.fakegatoConfig['temp']       || '0';
               secondParm      = this.fakegatoConfig['humidity']   || '0';
               thirdParm       = this.fakegatoConfig['ppm']        || '0';
               ucFirstParm     = ucFirst(firstParm)       || '0';
               ucSecondParm    = ucFirst(secondParm)      || '0';
               ucThirdParm     = ucFirst(thirdParm)       || '0';

               firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
               secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
               thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

               firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
                  firstParmValue : this.getStoredValueForIndex(firstParmIndex);
               secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
                  secondParmValue : this.getStoredValueForIndex(secondParmIndex);
               thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
                  thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

               **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
               // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
               this.loggingService.addEntry({time: moment().unix(),
                  temp:firstParmValue,
                  humidity:secondParmValue,
                  ppm:thirdParmValue});
               break;
            }

Hmmm, interesting.  I'm looking ....
On Sun, Nov 22, 2020 at 9:53 AM Johannes<EMAIL_ADDRESS>wrote:

Sorry to write in an already closed item. But I have a question related to
that. Would be great if someone could give me the needed hint.
I have also updated the hap characteristic in
\usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js
[image: image]
https://user-images.githubusercontent.com/7255837/99906896-eebfba80-2cd9-11eb-95d1-aeb454276a6e.png
Do I also need to update it in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
38:  { type: "CurrentTemperature",
characteristic: Characteristic.CurrentTemperature,
props: {format: Characteristic.Formats.FLOAT,
unit: Characteristic.Units.CELSIUS,
maxValue: 100,
minValue: -100,
minStep: 0.1,
perms: [Characteristic.Perms.READ,
Characteristic.Perms.NOTIFY
]
},
validValues: {}
}
Now I can see negative values in Eve App but in the fakegato-history
"null" is reported.
[image: image]
https://user-images.githubusercontent.com/7255837/99906975-6aba0280-2cda-11eb-838e-01bdef6a2fda.png
Therefore I wanted to check the debug output (DEBUG for homebridge is
activated) of the cmd4 plugin but I cannot see the log (journalctl -f -u
homebridge). Thanks for your help.
case FAKEGATO_TYPE_ROOM:
{
firstParm       = this.fakegatoConfig['temp']       || '0';
secondParm      = this.fakegatoConfig['humidity']   || '0';
thirdParm       = this.fakegatoConfig['ppm']        || '0';
ucFirstParm     = ucFirst(firstParm)       || '0';
ucSecondParm    = ucFirst(secondParm)      || '0';
ucThirdParm     = ucFirst(thirdParm)       || '0';
           firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
           secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
           thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

           firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
              firstParmValue : this.getStoredValueForIndex(firstParmIndex);
           secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
              secondParmValue : this.getStoredValueForIndex(secondParmIndex);
           thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
              thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

           **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
           // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
           this.loggingService.addEntry({time: moment().unix(),
              temp:firstParmValue,
              humidity:secondParmValue,
              ppm:thirdParmValue});
           break;
        }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731759850,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3Z2SCQTZSDVNBK553SREQU3ANCNFSM4ITELZ2Q
.

Hi,
So I checked the Apple online characteristic documentation.  They have it
as a string representing a float value of degrees in Celsius. Their full
HomeKit document still has the min value as zero.  So all the defines are
correct.
Onto the point of why you are not seeing it in FakeGato history. I'm not
sure because you are seeing it in Eve as a live temperature. You can check
if the FakeGato History file has the event stored with the negative number.
At which point then Eve is not displaying it correctly in the graph and you
would have to talk to the Eve people and convince them too.  I will update
my spec as I think it should allow negative as well. Not that it matters
much as Hap and HomeKit would have to change too.  I don't believe I check
the min value at all during runtime. Maybe at init.
My thought though is that it is not correct in the FakeGato event data
file.  In which case, I know you probably restarted Homebridge, but I also
heard that you might have to go further and kill all node.js processes as
one might hold a reference to the old library.
You probably also need to change TargetTemperature as well.
ps -aux | grep node
Careful doing the kill -9 if the processes later.
Let me know what your FakeGato event files contain for CurrentTemperature.
TTFN,
John
On Sun, Nov 22, 2020 at 10:28 AM John Talbot<EMAIL_ADDRESS>wrote:

Hmmm, interesting.  I'm looking ....
On Sun, Nov 22, 2020 at 9:53 AM Johannes<EMAIL_ADDRESS>wrote:

Sorry to write in an already closed item. But I have a question related
to that. Would be great if someone could give me the needed hint.
I have also updated the hap characteristic in
\usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js
[image: image]
https://user-images.githubusercontent.com/7255837/99906896-eebfba80-2cd9-11eb-95d1-aeb454276a6e.png
Do I also need to update it in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
38:  { type: "CurrentTemperature",
characteristic: Characteristic.CurrentTemperature,
props: {format: Characteristic.Formats.FLOAT,
unit: Characteristic.Units.CELSIUS,
maxValue: 100,
minValue: -100,
minStep: 0.1,
perms: [Characteristic.Perms.READ,
Characteristic.Perms.NOTIFY
]
},
validValues: {}
}
Now I can see negative values in Eve App but in the fakegato-history
"null" is reported.
[image: image]
https://user-images.githubusercontent.com/7255837/99906975-6aba0280-2cda-11eb-838e-01bdef6a2fda.png
Therefore I wanted to check the debug output (DEBUG for homebridge is
activated) of the cmd4 plugin but I cannot see the log (journalctl -f -u
homebridge). Thanks for your help.
case FAKEGATO_TYPE_ROOM:
{
firstParm       = this.fakegatoConfig['temp']       || '0';
secondParm      = this.fakegatoConfig['humidity']   || '0';
thirdParm       = this.fakegatoConfig['ppm']        || '0';
ucFirstParm     = ucFirst(firstParm)       || '0';
ucSecondParm    = ucFirst(secondParm)      || '0';
ucThirdParm     = ucFirst(thirdParm)       || '0';
           firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
           secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
           thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

           firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
              firstParmValue : this.getStoredValueForIndex(firstParmIndex);
           secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
              secondParmValue : this.getStoredValueForIndex(secondParmIndex);
           thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
              thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

           **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
           // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
           this.loggingService.addEntry({time: moment().unix(),
              temp:firstParmValue,
              humidity:secondParmValue,
              ppm:thirdParmValue});
           break;
        }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731759850,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3Z2SCQTZSDVNBK553SREQU3ANCNFSM4ITELZ2Q
.

Hi John,
thanks for your response. Did you mean the fakegato history (persist) file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}

I've rebooted my Raspberry. But still "null" values. Can you modify the min/max values of the Characteristic in your code? Was it enough to set it in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in homebridge). For example this one - This should be the place where the values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
            {
               firstParm       = this.fakegatoConfig['temp']       || '0';
               secondParm      = this.fakegatoConfig['humidity']   || '0';
               thirdParm       = this.fakegatoConfig['ppm']        || '0';
               ucFirstParm     = ucFirst(firstParm)       || '0';
               ucSecondParm    = ucFirst(secondParm)      || '0';
               ucThirdParm     = ucFirst(thirdParm)       || '0';

               firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
               secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
               thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

               firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
                  firstParmValue : this.getStoredValueForIndex(firstParmIndex);
               secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
                  secondParmValue : this.getStoredValueForIndex(secondParmIndex);
               thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
                  thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

               **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
               // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
               this.loggingService.addEntry({time: moment().unix(),
                  temp:firstParmValue,
                  humidity:secondParmValue,
                  ppm:thirdParmValue});
               break;
            }

Hi,
Yes those are the logs.  Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve.  If the debug logs say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:

Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
        {

           firstParm       = this.fakegatoConfig['temp']       || '0';

           secondParm      = this.fakegatoConfig['humidity']   || '0';

           thirdParm       = this.fakegatoConfig['ppm']        || '0';

           ucFirstParm     = ucFirst(firstParm)       || '0';

           ucSecondParm    = ucFirst(secondParm)      || '0';

           ucThirdParm     = ucFirst(thirdParm)       || '0';

           firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

           secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

           thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

           firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

              firstParmValue : this.getStoredValueForIndex(firstParmIndex);

           secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

              secondParmValue : this.getStoredValueForIndex(secondParmIndex);

           thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

              thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

           **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

           // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

           this.loggingService.addEntry({time: moment().unix(),

              temp:firstParmValue,

              humidity:secondParmValue,

              ppm:thirdParmValue});

           break;

        }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.

Hi,
Yes those are the logs.  Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve.  If the debug logs say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:

Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
        {

           firstParm       = this.fakegatoConfig['temp']       || '0';

           secondParm      = this.fakegatoConfig['humidity']   || '0';

           thirdParm       = this.fakegatoConfig['ppm']        || '0';

           ucFirstParm     = ucFirst(firstParm)       || '0';

           ucSecondParm    = ucFirst(secondParm)      || '0';

           ucThirdParm     = ucFirst(thirdParm)       || '0';

           firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

           secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

           thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

           firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

              firstParmValue : this.getStoredValueForIndex(firstParmIndex);

           secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

              secondParmValue : this.getStoredValueForIndex(secondParmIndex);

           thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

              thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

           **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

           // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

           this.loggingService.addEntry({time: moment().unix(),

              temp:firstParmValue,

              humidity:secondParmValue,

              ppm:thirdParmValue});

           break;

        }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.

Hello,
that's what I did already. Debugging was activated already.  Am I doing something wrong?
I have checked for example for this debug output but couldn't find it:
this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);
Thanks. Cheers,
Johannes

I have yet to look into this further, but it is possible that FakeGato
already has this fixed. I have an older dependency. I know I could update
mine, but without doing a push which I'm not ready for, I do not know how
you can update yours or if yours I using the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 6:00 AM Johannes<EMAIL_ADDRESS>wrote:

Hi,
Yes those are the logs. Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve. If the debug logs say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:
Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
    {

       firstParm       = this.fakegatoConfig['temp']       || '0';

       secondParm      = this.fakegatoConfig['humidity']   || '0';

       thirdParm       = this.fakegatoConfig['ppm']        || '0';

       ucFirstParm     = ucFirst(firstParm)       || '0';

       ucSecondParm    = ucFirst(secondParm)      || '0';

       ucThirdParm     = ucFirst(thirdParm)       || '0';

       firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

       secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

       thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

       firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

          firstParmValue : this.getStoredValueForIndex(firstParmIndex);

       secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

          secondParmValue : this.getStoredValueForIndex(secondParmIndex);

       thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

          thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

       **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

       // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

       this.loggingService.addEntry({time: moment().unix(),

          temp:firstParmValue,

          humidity:secondParmValue,

          ppm:thirdParmValue});

       break;

    }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
#32 (comment)
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.
Hello,
that's what I did already. Debugging was activated already.  Am I doing something wrong?
I have checked for example for this debug output but couldn't find it:
this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue,
secondParmValue, thirdParmValue);
Thanks. Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-732087764,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCXZIWQ3UWNQ3SKTKIZDSRI6GJANCNFSM4ITELZ2Q
.

In regards to my last message, check out what version FakeGato is by going
to homebridg-cmd4/node_modules/fakegato-history and look at the
package.json file. The _id should say 6.1 for the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 10:29 AM John Talbot<EMAIL_ADDRESS>wrote:

I have yet to look into this further, but it is possible that FakeGato
already has this fixed. I have an older dependency. I know I could update
mine, but without doing a push which I'm not ready for, I do not know how
you can update yours or if yours I using the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 6:00 AM Johannes<EMAIL_ADDRESS>wrote:

Hi,
Yes those are the logs. Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve. If the debug logs say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:
Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
    {

       firstParm       = this.fakegatoConfig['temp']       || '0';

       secondParm      = this.fakegatoConfig['humidity']   || '0';

       thirdParm       = this.fakegatoConfig['ppm']        || '0';

       ucFirstParm     = ucFirst(firstParm)       || '0';

       ucSecondParm    = ucFirst(secondParm)      || '0';

       ucThirdParm     = ucFirst(thirdParm)       || '0';

       firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

       secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

       thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

       firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

          firstParmValue : this.getStoredValueForIndex(firstParmIndex);

       secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

          secondParmValue : this.getStoredValueForIndex(secondParmIndex);

       thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

          thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

       **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

       // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

       this.loggingService.addEntry({time: moment().unix(),

          temp:firstParmValue,

          humidity:secondParmValue,

          ppm:thirdParmValue});

       break;

    }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
#32 (comment)
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.
Hello,
that's what I did already. Debugging was activated already.  Am I doing something wrong?
I have checked for example for this debug output but couldn't find it:
this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue,
secondParmValue, thirdParmValue);
Thanks. Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-732087764,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCXZIWQ3UWNQ3SKTKIZDSRI6GJANCNFSM4ITELZ2Q
.

Hi,
If Apple say they convert a string into a float, it is really just a
matter of how they do that implementation.  There is nothing to say except
the library that does the conversion of how big it can be.
Apple will never say what that is, but hap-nodejs, FakeGato and Eve are
all open source so you can figure out if they do or not and if it can be
changed.  I did not mention cmd4 because I just read in the value and
present it to hap-nodejs and fakegato.
Sorry, I have yet to do any actual debugging on your side.  I'm working
on another issue.
TTFN,
John
On Mon, Nov 23, 2020 at 10:36 AM John Talbot<EMAIL_ADDRESS>wrote:

In regards to my last message, check out what version FakeGato is by going
to homebridg-cmd4/node_modules/fakegato-history and look at the
package.json file. The _id should say 6.1 for the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 10:29 AM John Talbot<EMAIL_ADDRESS>wrote:

I have yet to look into this further, but it is possible that FakeGato
already has this fixed. I have an older dependency. I know I could update
mine, but without doing a push which I'm not ready for, I do not know how
you can update yours or if yours I using the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 6:00 AM Johannes<EMAIL_ADDRESS>wrote:

Hi,
Yes those are the logs. Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve. If the debug logs
say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:
Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set
it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
    {

       firstParm       = this.fakegatoConfig['temp']       || '0';

       secondParm      = this.fakegatoConfig['humidity']   || '0';

       thirdParm       = this.fakegatoConfig['ppm']        || '0';

       ucFirstParm     = ucFirst(firstParm)       || '0';

       ucSecondParm    = ucFirst(secondParm)      || '0';

       ucThirdParm     = ucFirst(thirdParm)       || '0';

       firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

       secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

       thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

       firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

          firstParmValue : this.getStoredValueForIndex(firstParmIndex);

       secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

          secondParmValue : this.getStoredValueForIndex(secondParmIndex);

       thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

          thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

       **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

       // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

       this.loggingService.addEntry({time: moment().unix(),

          temp:firstParmValue,

          humidity:secondParmValue,

          ppm:thirdParmValue});

       break;

    }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
#32 (comment)
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.
Hello,
that's what I did already. Debugging was activated already.  Am I doing something wrong?
I have checked for example for this debug output but couldn't find it:
this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue,
secondParmValue, thirdParmValue);
Thanks. Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-732087764,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCXZIWQ3UWNQ3SKTKIZDSRI6GJANCNFSM4ITELZ2Q
.

Sorry, I have thoughts swirling all over the place sometimes.  There is
nothing to say that CMD4 or any plugin could allow to change the property
minValue through
setProps({format ..., minValue -100, ... perms ....
Again I don't know what Eve or FakeGato would behave in this environment.
TTFN,
John
On Mon, Nov 23, 2020 at 11:16 AM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
If Apple say they convert a string into a float, it is really just a
matter of how they do that implementation.  There is nothing to say except
the library that does the conversion of how big it can be.
Apple will never say what that is, but hap-nodejs, FakeGato and Eve are
all open source so you can figure out if they do or not and if it can be
changed.  I did not mention cmd4 because I just read in the value and
present it to hap-nodejs and fakegato.
Sorry, I have yet to do any actual debugging on your side.  I'm working
on another issue.
TTFN,
John
On Mon, Nov 23, 2020 at 10:36 AM John Talbot<EMAIL_ADDRESS>wrote:

In regards to my last message, check out what version FakeGato is by
going to homebridg-cmd4/node_modules/fakegato-history and look at the
package.json file. The _id should say 6.1 for the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 10:29 AM John Talbot<EMAIL_ADDRESS>wrote:

I have yet to look into this further, but it is possible that FakeGato
already has this fixed. I have an older dependency. I know I could update
mine, but without doing a push which I'm not ready for, I do not know how
you can update yours or if yours I using the latest.
TTFN,
John
On Mon, Nov 23, 2020 at 6:00 AM Johannes<EMAIL_ADDRESS>wrote:

Hi,
Yes those are the logs. Clearly no negative values, so no history.
DEBUG=* homebridge -D
Will capture everything. Including FakeGato logs.
You said you were seeing the negative values in Eve. If the debug logs
say
that negative numbers are passed to FakeGato, but it records zero, then
FakeGato has a problem.
I guess your next step is looking at the debug logs.
TTFN,
John
On Sun, Nov 22, 2020 at 11:34 AM Johannes<EMAIL_ADDRESS>wrote:
Hi John,
thanks for your response. Did you mean the fakegato history (persist)
file? I hope yes 😀 . Here a small extract:
{"temp":0.06,"humidity":90,"ppm":0,"time":1605986283},
{"temp":null,"humidity":90.29,"ppm":0,"time":1605986883},
{"temp":null,"humidity":90.3,"ppm":0,"time":1605987483},
{"temp":0,"humidity":90,"ppm":0,"time":1605988083},
{"temp":null,"humidity":90.26,"ppm":0,"time":1605988683}
I've rebooted my Raspberry. But still "null" values. Can you modify the
min/max values of the Characteristic in your code? Was it enough to set
it
in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
How can I see the debug logs from your code? (DEBUG was activated in
homebridge). For example this one - This should be the place where the
values are written to the fakegato-history:
case FAKEGATO_TYPE_ROOM:
    {

       firstParm       = this.fakegatoConfig['temp']       || '0';

       secondParm      = this.fakegatoConfig['humidity']   || '0';

       thirdParm       = this.fakegatoConfig['ppm']        || '0';

       ucFirstParm     = ucFirst(firstParm)       || '0';

       ucSecondParm    = ucFirst(secondParm)      || '0';

       ucThirdParm     = ucFirst(thirdParm)       || '0';

       firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);

       secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);

       thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

       firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?

          firstParmValue : this.getStoredValueForIndex(firstParmIndex);

       secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?

          secondParmValue : this.getStoredValueForIndex(secondParmIndex);

       thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?

          thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

       **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**

       // Eve Room (TempSensor, HumiditySensor and AirQuality Services)

       this.loggingService.addEntry({time: moment().unix(),

          temp:firstParmValue,

          humidity:secondParmValue,

          ppm:thirdParmValue});

       break;

    }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
#32 (comment)
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731773865
,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX65SNRPFMY47GIJ4U3SRE4SFANCNFSM4ITELZ2Q
.
Hello,
that's what I did already. Debugging was activated already.  Am I doing something wrong?
I have checked for example for this debug output but couldn't find it:
this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue,
secondParmValue, thirdParmValue);
Thanks. Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-732087764,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCXZIWQ3UWNQ3SKTKIZDSRI6GJANCNFSM4ITELZ2Q
.

Hello John,
no problem. First of all sorry for my late response and thanks for the thoughts you spend on my issue. Really appreciated.

In regards to my last message, check out what version FakeGato is by going to homebridg-cmd4/node_modules/fakegato-history and look at the package.json file. The _id should say 6.1 for the latest. TTFN, John

The id says 0.6.0. But npm-upgrade says 0.5.6. I will do an upgrade but if I check the changelog and comparison to 0.5.6 there should be no difference regarding negative values.
Checking for outdated dependencies for "/usr/local/lib/node_modules/homebridge-cmd4/package.json"...
[====================] 11/11 100%

New versions of active modules available:

  fakegato-history    >=0.5.6   →    >=0.6.1
  system-sleep         ^1.3.6   →     ^1.3.7
  hap-nodejs           ^0.7.7   →     ^0.8.2
  homebridge          >=1.1.1   →    >=1.1.6
  mocha                ^8.0.1   →     ^8.2.1
  semistandard       >=14.2.2   →   >=16.0.0

How can I find debugging output from fakegato and the ones from cmd4? I was expecting to see for example the output of your code from here :
case FAKEGATO_TYPE_ROOM:
            {
               firstParm       = this.fakegatoConfig['temp']       || '0';
               secondParm      = this.fakegatoConfig['humidity']   || '0';
               thirdParm       = this.fakegatoConfig['ppm']        || '0';
               ucFirstParm     = ucFirst(firstParm)       || '0';
               ucSecondParm    = ucFirst(secondParm)      || '0';
               ucThirdParm     = ucFirst(thirdParm)       || '0';

               firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
               secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
               thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

               firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
                  firstParmValue : this.getStoredValueForIndex(firstParmIndex);
               secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
                  secondParmValue : this.getStoredValueForIndex(secondParmIndex);
               thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
                  thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

               **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
               // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
               this.loggingService.addEntry({time: moment().unix(),
                  temp:firstParmValue,
                  humidity:secondParmValue,
                  ppm:thirdParmValue});
               break;
            }

Here some screenshots from the terminal. I've displayed the log and searched for the outputs of fakegato and the negative values.

Most probably I'm doing here something wrong with the debugging. This is my /etc/default/homebridge:
# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /var/homebridge -I

# If you uncomment the following line, homebridge will log more
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*
DEBUG=* homebridge -D

Sorry, I have thoughts swirling all over the place sometimes. There is nothing to say that CMD4 or any plugin could allow to change the property minValue through setProps({format ..., minValue -100, ... perms .... Again I don't know what Eve or FakeGato would behave in this environment. TTFN, John

But in the fakegato-history repo, they said these charecteristics can be overwritten by according plugin. Refer to https://github.com/simont77/fakegato-history/issues/85#issuecomment-731729215

Hello John,
This is what I get in the debug log:
[11/29/2020, 5:40:55 PM] [Cmd4] getValue CurrentTemperature function for:Aussenluft returned:-0.8
[11/29/2020, 5:40:55 PM] [Cmd4] Logging temp:undefined humidity:85 ppm:0
[11/29/2020, 5:40:55 PM] [Cmd4] **Fakegato-timer: addData  Aussenluft { time:<PHONE_NUMBER>, temp: undefined, humidity: 85, ppm: 0 }  immediate:  false
  HAP-NodeJS:Accessory [Homebridge CAD8] Got Characteristic "Current Temperature" value: -0.8 +10ms

So I guess the value is not sent to fakegato as negative value. Cmd4 already sends undefined, or? Thanks for your help.
Cheers,
Johannes

Hello John,
checked your code (index.js - Line 1229 because I used the FAKEGATO_TYPE_ROOM). As soon as the value gets negative, firstParmValue gets Undefined.
 firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
                  firstParmValue : this.getStoredValueForIndex(firstParmIndex);

I have just added for the moment this line below to make it work. But I guess you will find a smarter solution.
firstParmValue = this.getStoredValueForIndex(firstParmIndex);

Thanks for your assistance.
Cheers,
Johannes

Hi,
I do not understand why you are not seeing the debug logs.  You could
always just change "this.log.debug" to "this.log.info"    That would
guarantee you see the logs.
I have not forgotten about you.  I'm working on an update to fix the TV
issue.  It has consumed all my time for homebridge.  I can tell you that I
had a breakthrough there and now know how to fix it. As we speak though, I
was working on an addition that may help you if it works.
What I am doing is allowing you to put in your config.json file something
like:
props: {CurrentTemperature: { minValue: -100, maxValue: +100, minStep: 1}}
This way when the characteristic gets added, homebridge knows about that
the property value can be negative.  I'm hoping that if homebridge knows,
then fakeGato knows.  I'm not sure if Apple's Home would understand it. I
think Eve will. We will see.
Hopefully I should be able to test this in the next 24 hours and give you
an update on my findings.
ttfn,
John
On Sun, Nov 29, 2020 at 3:25 PM Johannes<EMAIL_ADDRESS>wrote:

Hello John,
checked your code (index.js - Line 1229 because I used the
FAKEGATO_TYPE_ROOM). As soon as the value gets negative, firstParmValue
gets Undefined.
firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
firstParmValue : this.getStoredValueForIndex(firstParmIndex);
I have just added for the moment this line below to make it work. But I
guess you will find a smarter solution.
firstParmValue = this.getStoredValueForIndex(firstParmIndex);
[image: image]
https://user-images.githubusercontent.com/7255837/100552725-28b83000-3289-11eb-967a-e03726eabb5b.png
Thanks for your assistance.
Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-735448725,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX4HVEXFTAM2W2SFFATSSKU25ANCNFSM4ITELZ2Q
.

I found a bug in Homebridge-cmd4 with regards to logging.
Wherever you see:
( this.testStoredValueForIndex( xxxxx ) < 0 ) ?
change to
( this.testStoredValueForIndex( xxxxx ) == undefined ) ?
and then in testStoredValueForIndex where it says
return -1;
change this to
return undefined;
your config.json file should have for fakegato
"fakegato": {
"eve": "thermo",
"currentTemp": "CurrentTemperature",
...
}
Your value of negative screws up this test.  The config.json changes mean
that it will use the value of CurrentTemperature for fakegato logs of
currentTemp.
I also have in my changes for negative minValue, but that may not be
required.
I'll try to push this out soon.  I'm still working on the harder TV issue.
TTFN,
John
On Mon, Nov 30, 2020 at 7:30 AM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
I do not understand why you are not seeing the debug logs.  You could
always just change "this.log.debug" to "this.log.info"    That would
guarantee you see the logs.
I have not forgotten about you.  I'm working on an update to fix the TV
issue.  It has consumed all my time for homebridge.  I can tell you that I
had a breakthrough there and now know how to fix it. As we speak though, I
was working on an addition that may help you if it works.
What I am doing is allowing you to put in your config.json file something
like:
props: {CurrentTemperature: { minValue: -100, maxValue: +100, minStep: 1}}
This way when the characteristic gets added, homebridge knows about that
the property value can be negative.  I'm hoping that if homebridge knows,
then fakeGato knows.  I'm not sure if Apple's Home would understand it. I
think Eve will. We will see.
Hopefully I should be able to test this in the next 24 hours and give you
an update on my findings.
ttfn,
John
On Sun, Nov 29, 2020 at 3:25 PM Johannes<EMAIL_ADDRESS>wrote:

Hello John,
checked your code (index.js - Line 1229 because I used the
FAKEGATO_TYPE_ROOM). As soon as the value gets negative, firstParmValue
gets Undefined.
firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
firstParmValue : this.getStoredValueForIndex(firstParmIndex);
I have just added for the moment this line below to make it work. But I
guess you will find a smarter solution.
firstParmValue = this.getStoredValueForIndex(firstParmIndex);
[image: image]
https://user-images.githubusercontent.com/7255837/100552725-28b83000-3289-11eb-967a-e03726eabb5b.png
Thanks for your assistance.
Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-735448725,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX4HVEXFTAM2W2SFFATSSKU25ANCNFSM4ITELZ2Q
.

I just publish homebridge-cmd4 version 2.4.2 that addresses your issue
only.  I added in the stuff that you can change the minValue as previously
described.  If you do try it though, please let me know if it addresses any
of your issues, otherwise it is an undocumented feature ;-)
On Mon, Nov 30, 2020 at 6:27 PM John Talbot<EMAIL_ADDRESS>wrote:

I found a bug in Homebridge-cmd4 with regards to logging.
Wherever you see:
( this.testStoredValueForIndex( xxxxx ) < 0 ) ?
change to
( this.testStoredValueForIndex( xxxxx ) == undefined ) ?
and then in testStoredValueForIndex where it says
return -1;
change this to
return undefined;
your config.json file should have for fakegato
"fakegato": {
"eve": "thermo",
"currentTemp": "CurrentTemperature",
...
}
Your value of negative screws up this test.  The config.json changes mean
that it will use the value of CurrentTemperature for fakegato logs of
currentTemp.
I also have in my changes for negative minValue, but that may not be
required.
I'll try to push this out soon.  I'm still working on the harder TV issue.
TTFN,
John
On Mon, Nov 30, 2020 at 7:30 AM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
I do not understand why you are not seeing the debug logs.  You could
always just change "this.log.debug" to "this.log.info"    That would
guarantee you see the logs.
I have not forgotten about you.  I'm working on an update to fix the TV
issue.  It has consumed all my time for homebridge.  I can tell you that I
had a breakthrough there and now know how to fix it. As we speak though, I
was working on an addition that may help you if it works.
What I am doing is allowing you to put in your config.json file something
like:
props: {CurrentTemperature: { minValue: -100, maxValue: +100, minStep: 1}}
This way when the characteristic gets added, homebridge knows about that
the property value can be negative.  I'm hoping that if homebridge knows,
then fakeGato knows.  I'm not sure if Apple's Home would understand it. I
think Eve will. We will see.
Hopefully I should be able to test this in the next 24 hours and give you
an update on my findings.
ttfn,
John
On Sun, Nov 29, 2020 at 3:25 PM Johannes<EMAIL_ADDRESS>wrote:

Hello John,
checked your code (index.js - Line 1229 because I used the
FAKEGATO_TYPE_ROOM). As soon as the value gets negative, firstParmValue
gets Undefined.
firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
firstParmValue : this.getStoredValueForIndex(firstParmIndex);
I have just added for the moment this line below to make it work. But I
guess you will find a smarter solution.
firstParmValue = this.getStoredValueForIndex(firstParmIndex);
[image: image]
https://user-images.githubusercontent.com/7255837/100552725-28b83000-3289-11eb-967a-e03726eabb5b.png
Thanks for your assistance.
Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-735448725,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX4HVEXFTAM2W2SFFATSSKU25ANCNFSM4ITELZ2Q
.

Hello John,
great. Thank you. I will most probably have time tomorrow to check it. With this update is there still the need to have minValue and maxValue set in

homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js
\usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js

Thanks.
Cheers,
Johannes

Hi,
I don't think you will need to change anything at all, though I am
curious what happens if you add to your config.json
"props" : { "CurrentTemperature": { "maxValue":100, "minValue": -100,
"minStep": 0.1}}
If you could try with & without and see if there is any difference, that
would be nice.
TTFN,
John
On Tue, Dec 1, 2020 at 4:56 PM Johannes<EMAIL_ADDRESS>wrote:

Hello John,
great. Thank you. I will most probably have time tomorrow to check it.
With this update is there still the need to have minValue and maxValue set
in

homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js

\usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js
Thanks.
Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-736845384,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3RYOQCEPEG63QGQTTSSVRBLANCNFSM4ITELZ2Q
.

Hi John,
thanks a lot. I have  I get this in the logs:
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined

This is how my config looks like. Did I put the props at the good place and applied correct formatting? Are you sure that thermo is correct? I thought it should be room as listed in your config.json, or? When I set it to thermo then in the fakegato history file I only can see valveposition.
"accessories": [
                {
                    "type": "TemperatureSensor",
                    "displayName": "Abluft",
                    "currentTemperature": 23,
                    "currentRelativeHumidity": 53,
                    "name": "Abluft",
                    "Manufacturer": "Zehnder",
                    "Model": "ComfoAir Q350",
                    "SerialNumber": "4715020101",
                    "props": {
                        "CurrentTemperature": {
                            "maxValue": 100,
                            "minValue": -100,
                            "minStep": 0.1
                        }
                    },
                    "polling": [
                        {
                            "currentTemperature": 23,
                            "interval": 50,
                            "timeout": 10000
                        },
                        {
                            "currentRelativeHumidity": 53,
                            "interval": 40,
                            "timeout": 10000
                        }
                    ],
                    "fakegato": {
                        "eve": "thermo",
                        "temp": "currentTemperature",
                        "humidity": "currentRelativeHumidity",
                        "storage": "fs",
                        "storagePath": "/home/pi/.homebridge/FakegatoStorage/",
                        "folder": "folderName1",
                        "keyPath": "/home/pi/.homebridge/FakegatoStorage/"
                    },
                    "stateChangeResponseTime": 3,
                    "state_cmd": "bash /home/pi/.homebridge/Cmd4Scripts/comfoconnect.sh"
                }
]

I also had to change again the \usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js to get values smaller than 0 degrees displayed in Eve.

Cheers,
Johannes

Hi,
If you use thermo then fakegato uses the keys of currentTemp, setTemp and
valvePosition. Yours has temp and humidity so that is why currentTemp is
undefined.
Here would be your two possibilities for temperature:
"eve": "thermo",
"currentTemp": "CurrentTemperature",
"setTemp": "TargetTemperature",
"valvePosition":  0
or
"eve":  "room",
"temp": "CurrentTemperature",
"humidity": 0,
"ppm": 0
It took me a while to understand what FakeGato was doing as Homebridge has
no characteristic called "currentTemp" or "temp".  What it is saying is
that whatever characteristic you use for setTemp or temp use the
characteristic CurrentTemperature and the value CurrentTemperature
represents.
I hope this makes sense.
TTFN,
John
On Wed, Dec 2, 2020 at 5:38 PM Johannes<EMAIL_ADDRESS>wrote:

Hi John,
thanks a lot. I have I get this in the logs:
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined
currentTemp:  undefined
This is how my config looks like. Did I put the props at the good place
and applied correct formatting? Are you sure that thermo is correct? I
thought it should be room as listed in your config.json, or? When I set it
to thermo then in the fakegato history file I only can see valveposition.
"accessories": [
{
"type": "TemperatureSensor",
"displayName": "Abluft",
"currentTemperature": 23,
"currentRelativeHumidity": 53,
"name": "Abluft",
"Manufacturer": "Zehnder",
"Model": "ComfoAir Q350",
"SerialNumber": "4715020101",
"props": {
"CurrentTemperature": {
"maxValue": 100,
"minValue": -100,
"minStep": 0.1
}
},
"polling": [
{
"currentTemperature": 23,
"interval": 50,
"timeout": 10000
},
{
"currentRelativeHumidity": 53,
"interval": 40,
"timeout": 10000
}
],
"fakegato": {
"eve": "thermo",
"temp": "currentTemperature",
"humidity": "currentRelativeHumidity",
"storage": "fs",
"storagePath": "/home/pi/.homebridge/FakegatoStorage/",
"folder": "folderName1",
"keyPath": "/home/pi/.homebridge/FakegatoStorage/"
},
"stateChangeResponseTime": 3,
"state_cmd": "bash /home/pi/.homebridge/Cmd4Scripts/comfoconnect.sh"
}
]
I also had to change again the \usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js to get values smaller than 0 degrees displayed in Eve.
Cheers,
Johannes
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-737538673,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX4S43CXV2EHCS5S6HLSS26WZANCNFSM4ITELZ2Q
.

Hi from a long time ago.
I just noticed and made the change that Homebridge now accepts temperatures
from -273.15 to +100.  I'm assuming HomeKit accepts these, but at least
Homebridge does and now Cmd4.
Take care,
John Talbot
On Sun, Nov 22, 2020 at 9:53 AM Johannes<EMAIL_ADDRESS>wrote:

Sorry to write in an already closed item. But I have a question related to
that. Would be great if someone could give me the needed hint.
I have also updated the hap characteristic in
\usr\local\lib\node_modules\homebridge\node_modules\hap-nodejs\dist\lib\gen\HomeKit.js
[image: image]
https://user-images.githubusercontent.com/7255837/99906896-eebfba80-2cd9-11eb-95d1-aeb454276a6e.png
Do I also need to update it in homebridge-cmd4\lib\CMD4_ACC_TYPE_ENUM.js?
38:  { type: "CurrentTemperature",
characteristic: Characteristic.CurrentTemperature,
props: {format: Characteristic.Formats.FLOAT,
unit: Characteristic.Units.CELSIUS,
maxValue: 100,
minValue: -100,
minStep: 0.1,
perms: [Characteristic.Perms.READ,
Characteristic.Perms.NOTIFY
]
},
validValues: {}
}
Now I can see negative values in Eve App but in the fakegato-history
"null" is reported.
[image: image]
https://user-images.githubusercontent.com/7255837/99906975-6aba0280-2cda-11eb-838e-01bdef6a2fda.png
Therefore I wanted to check the debug output (DEBUG for homebridge is
activated) of the cmd4 plugin but I cannot see the log (journalctl -f -u
homebridge). Thanks for your help.
case FAKEGATO_TYPE_ROOM:
{
firstParm       = this.fakegatoConfig['temp']       || '0';
secondParm      = this.fakegatoConfig['humidity']   || '0';
thirdParm       = this.fakegatoConfig['ppm']        || '0';
ucFirstParm     = ucFirst(firstParm)       || '0';
ucSecondParm    = ucFirst(secondParm)      || '0';
ucThirdParm     = ucFirst(thirdParm)       || '0';
           firstParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucFirstParm);
           secondParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucSecondParm);
           thirdParmIndex = CMD4_ACC_TYPE_ENUM.properties.indexOfEnum(i => i.type === ucThirdParm);

           firstParmValue = (this.testStoredValueForIndex(firstParmIndex) < 0) ?
              firstParmValue : this.getStoredValueForIndex(firstParmIndex);
           secondParmValue = (this.testStoredValueForIndex(secondParmIndex) < 0) ?
              secondParmValue : this.getStoredValueForIndex(secondParmIndex);
           thirdParmValue = (this.testStoredValueForIndex(thirdParmIndex) < 0) ?
              thirdParmValue : this.getStoredValueForIndex(thirdParmIndex);

           **this.log.debug("Logging temp:%s humidity:%s ppm:%s", firstParmValue, secondParmValue, thirdParmValue);**
           // Eve Room (TempSensor, HumiditySensor and AirQuality Services)
           this.loggingService.addEntry({time: moment().unix(),
              temp:firstParmValue,
              humidity:secondParmValue,
              ppm:thirdParmValue});
           break;
        }

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/32#issuecomment-731759850,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX3Z2SCQTZSDVNBK553SREQU3ANCNFSM4ITELZ2Q
.


Emotes not displaying correctly.

When I type in an emote, it gets changed to a random different one. No matter what emote I put, it gets changed. The emote I actually put isn't getting displayed at all.
It was working fine yesterday, but today it suddenly isn't working.
This is an issue for me since I use emotes a lot in the discord servers I'm in, and I can't use the ones I want to.

Yeah i've been meaning to open an issue myself. The emotes are completely random now.

Apparently it's an april fools thing. You just have to put {april2nd} in your custom CSS.
I guess I can close this issue then.


ComboBox

Description of the Feature
Although there is no formal spec in material.io sometime it is practical to have
a ComboBox which is an edit field with a dropdown list. See Wikipedia for a definition. I have a working prototype
and would be happy about suggestions. When there is approval I can make a PR.
Test it
I have prototyped it in my fork.
It is integrated there in the kitchen_sink under the menu ComboBox.
Code and Logs
from kivymd.app import MDApp
from kivy.factory import Factory
from kivy.lang import Builder

Builder.load_string(
    '''
#:import toast kivymd.toast.toast
#:import MDComboBox kivymd.uix.combobox.MDComboBox

<MyRoot@BoxLayout>
    orientation: 'vertical'

    MDToolbar:
        title: "Test MDDropDownItem"
        md_bg_color: app.theme_cls.primary_color
        elevation: 10
        left_action_items: [['menu', lambda x: x]]

    FloatLayout:

        MDComboBox:
            id: dropdown_item
            pos_hint: {'center_x': 0.5, 'center_y': 0.6}
            size_hint:(.3, None)
            items: app.items
            text:'Item '

        MDComboBox:
            id: dropdown_item_lower
            pos_hint: {'center_x': 0.5, 'center_y': 0.45}
            size_hint:(.3, None)
            items: app.items
            text:'Item '

        MDRaisedButton:
            pos_hint: {'center_x': 0.5, 'center_y': 0.3}
            text: 'Check Item'
            on_release: toast(dropdown_item.text)
''')

class Test(MDApp):

    def build(self):
        self.items = [f"Item {i}" for i in range(100)]
        return Factory.MyRoot()

if __name__ == '__main__':
    Test().run()
"""

class MainApp(App):
    def build(self):
        self.root = Builder.load_string(kv)

if __name__ == '__main__':
    MainApp().run()

@zworkb So far this is not working properly ...

why did you close it? Let me know if you would like this feature in KivyMD.
If yes, I fix the problems. If no, I just will use it internally in my projects

@zworkb https://www.youtube.com/watch?v=Q8s3pnPP4oo (52 second) - This is how it should look.

@zworkb Please fix problems and let us know about it.

@zworkb https://www.youtube.com/watch?v=Q8s3pnPP4oo (52 second) - This is how it should look.

ok, thanks for the hint, I assume you refer to time position 0:44 in that video.
from the visual representation it seems clear, but I have some questions there:

especially for long lists, would it not be better to filter instead of just highlight the items?
A good behavior pattern would be the intellitext in Pycharm
shall the menu just grow downwards or should it be flexible in case the combobox is at the lower end of the screen?
shall I display a triangle as it is done in DropdownItem?

@zworkb It is advisable that everything be done according to the official guidelines of material design. We are now paying particular attention to this.

@zworkb It should have two behaviours: filtering (by default) and highlighting. User should also be able to change filter function (that returns list of items to display) and selecting highlighted item function (that returns index of item to highlight).
Triangle in the right should be displayed.
Material Design spec: https://material.io/components/menus/#exposed-dropdown-menu

fine, thanks for the link, i always looked for combobox in the specs and id not find it,
what we need is the Editable dropdown menu, now I know what to do...


Configuring for AWS/Elastic Beanstalk

Elastic Beanstalk instances are configured using Amazon's Linux AMI, which has almost none of the dependencies that node-canvas needs.  I was able to find the instructions for configuring all of them here.

Note that this requires root access to the elastic beanstalk by installing the aws_cli, using sudo su to gain root and then running through all the installations and compilers.

Would definitely be good to work on the docs to add this info seeing as how EB is a kinda popular PaaS for node apps.  (Has anyone had better success with Heroku?)
Next issue after that is properly setting up the ports so Nginx doesn't send back a 502.  Anyone have info on how to change the default ports on this implementation of express so that it connects on the default port?

Added a note about Amazon Linux to the installation instructions.
Re: the port, you can configure it with an extra argument (npm start -- my_special_port_number) or you can manually edit bin/server, where the express app starts.


feature: add linux/s390x platform support to syncer

Feature Description
I would like to run the syncer on s390x architecture.
Proposed Solution
Add linux/s390x as an additional architecture in ARCHS in the following files:

goreleaser.yml
create kubestellar syncer image.yml

Am I missing something?
Want to contribute?

[X] I would like to work on this issue.

Additional Context
No response

@yana1205 can you help @ronenkat with this request?

@yuji-watanabe-jp can you help us prioritize this request with @yana1205 ?

@clubanderson ok, @yana1205 will pick this.

Thank you @yuji-watanabe-jp

I added linux/s390x.
@clubanderson
Although I added the linux/s390, it seems that https://github.com/kubestellar/kubestellar/blob/main/.github/workflows/goreleaser.yml runs only at tagging a version. Could you please manage to tag a version to build and push the image?
@ronenkat
For a confirmation, I created and published linux/s390x image on my ghcr.io.
make build-kubestellar-syncer-image DOCKER_REPO=ghcr.io/yana1205/kubestellar/syncer IMAGE_TAG=dev-2023-06-05 ARCHS=linux/amd64,linux/arm64,linux/s390x

Could you make sure this image (ghcr.io/yana1205/kubestellar/syncer:dev-2023-06-05) works on linux/s390x environment?
docker pull ghcr.io/yana1205/kubestellar/syncer:dev-2023-06-05

Thank you @yana1205. Always appreciated. I Knew you would make quick work of this.
Thank you @yuji-watanabe-jp for helping.
/lgtm
/approve

I will create an image later tonight.

tagged version is now available.  @ronenkat can you test?

We still have not resolved the self-reference issue wrt the syncer image.  Release 0.3.1 (https://github.com/kubestellar/kubestellar/blob/v0.3.1/scripts/kubectl-kubestellar-prep_for_syncer#L37) references the syncer of release 0.3.0.

hi @clubanderson @yana1205 I tried to deploy v0.3.1 image of the syncer, but it fails.
I don't think the image has s390x support. When exploring the image I don't see any reference to s390x tags (see here), you can easily see references to x86 and arm64.
When deploying on k8s I get:
  Normal   Pulling    47s (x3 over 89s)  kubelet            Pulling image "quay.io/kubestellar/syncer:v0.3.1"
  Warning  Failed     46s (x3 over 88s)  kubelet            Failed to pull image "quay.io/kubestellar/syncer:v0.3.1": rpc error: code = NotFound desc = failed to pull and unpack image "quay.io/kubestellar/syncer:v0.3.1": no match for platform in manifest: not found

I'm not sure how v0.3.1 was pushed to quay.
I created and pushed the same image on my quay.io account in addition to ghcr.io I did at https://github.com/kubestellar/kubestellar/issues/732#issuecomment-1620838126.
@ronenkat
Could you try this image to see if it works?
quay.io/yanagawa_takumi1205/kubestellar-syncer:v0.3.1
I can see linux/s390x is marked along with linux/amd64 and linux/arm64.
https://quay.io/repository/yanagawa_takumi1205/kubestellar-syncer?tab=tags

Looking at how ko builds images, I tried to find out if cgr.dev/chainguard/static has an image for s390x, but couldn't find the platforms for which chainguard/static is available.

I also created and published another syncer image by gorelease with linux/s390x arch and explicitly setting base_image: cgr.dev/chainguard/static in .gorelease.yaml (https://goreleaser.com/customization/ko/). The published image is quay.io/yanagawa_takumi1205/kubestellar-syncer:latest.

quay.io/yanagawa_takumi1205/kubestellar-syncer:v0.3.1

Running nicely - quay.io/yanagawa_takumi1205/kubestellar-syncer:v0.3.1
Next I will check it actually does what it needs to do, but not expecting any issues with that....

https://ibm-research.slack.com/archives/C031BHTG2LB/p1688665219922229

@MikeSpreitzer can you figure out what is going on with goreleaser gh action?  https://github.com/kubestellar/kubestellar/actions/runs/5464897374/jobs/9947561409

new tagged release is available with s390 image, and new quay image is available for syncer at quay.io


Blazor.MonoRuntime.targets error code -532462766

This section of Blazor.MonoRuntime.targets is problematic and unstable.
<!-- Run the linker and put the results in /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker -->     <Exec Command="dotnet "$(MonoLinkerPath)" $(_BlazorLinkerAdditionalOptions) @(_BlazorFolderLookupPaths, ' ') -o "$(BlazorIntermediateLinkerOutputPath)" @(_BlazorAssemblyDescriptorFiles, ' ') @(_BlazorAssembliesToLink, ' ')"  />
I'm not sure if it's an issue related to .NET, Blazor, Preview 6/7, or Entity Framework.  It seems to happen after installing EF as in the top side of this article:
https://code.msdn.microsoft.com/Creating-An-SPA-Using-0b76bd13
Sometimes the solution will build and launch fine, sometimes it won't and it produces this error:

MSB3073	The command [the result of everything pasted above] exited with code -532462766.

I'll restart VS and sometimes it builds fine, sometimes it doesn't.

This link is out of date.
You shoud follow this instruction https://docs.microsoft.com/ru-ru/aspnet/core/blazor/get-started?view=aspnetcore-3.0&tabs=visual-studio

Is there anything on there about connecting to SQL?
On Fri, Jul 26, 2019, 3:54 AM kaanlab<EMAIL_ADDRESS>wrote:

This link is out of date.
You shoud follow this instruction
https://docs.microsoft.com/ru-ru/aspnet/core/blazor/get-started?view=aspnetcore-3.0&tabs=visual-studio
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dotnet-presentations/blazor-workshop/issues/126?email_source=notifications&email_token=AA7QD76XVIO44BAHDZEDY73QBLCTPA5CNFSM4IHAHAK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD24DEBA#issuecomment-515387908,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA7QD74X6MKKE4J2VEWQXATQBLCTPANCNFSM4IHAHAKQ
.

To clarify my post, the area in that link I'm referring to is:
[At package manager console]
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
Scaffold-DbContext "Your connection string here" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Tables Employee

I commented out the subject line in Blazor.MonoRuntime.targets and everything builds and runs without issues so far.  Is this line critical?

I was having the same problem when working with Telerik UI component. I got the solution from Telerik docs.
Open the Client .csproj file and ensure that the following switch is present. At the moment the IL Linker needs to be disabled because of an issue in Mono.
<PropertyGroup>     <!-- there may be other elements here -->     <BlazorLinkOnBuild>false</BlazorLinkOnBuild> </PropertyGroup>
This certainly fixed the problem. hope it will help to others as well (even if they're not using Telerik UI)

Install the latest visual studio 2019 preview - then reboot and delete all in bin and obj before rebuilding

that fixed this for me -

Everything should be working now with the latest bits and workshop updates. Let us know though if you're still hitting issues!


Swift 3

Fellow Swifters,
I’ve  moved the project to Swift 3. As you know, this is a particularly insidious task that has affected a lot of my time. I think it’d be worthwhile to pull it into the project repository in order to get it into the next release.
Thanks!

All the effort is much appreciated. The problem is Travis is crashing monumental. I think it's a case if a curly brace missing as it has 100s of error messages.
Can you pls check you can build everything properly?

Thank you! I had to change travis configuration file from Xcode7 to 8 and now it builds fine.

Great job :)
Now we have two options. Either keep this in a Swift3 branch, or merge to master, and do a new Swift3 release.
It's a bit of a dilemma.  What do you guys think is best?

It seems like all the popular projects, like Alamofire, have already switched their main repo to Swift3.
What do you think?

Merge it @Krisiacik already! 💃 :) If people still need the Swift 2.3 version, they can just use an older version. Talking of versions, the Swift 3 version should be ImageViewer 4.0 with an amazing name.

Many thanks for this effort @seifeet !


Walking: tune walk kicks

Is your feature request related to a problem? Please describe.
We cannot kick at the moment.
Describe the solution you'd like
We should use the walk-kick feature instead.
Don't do this by moving the foot further and back again after touching the ball, but rather setting the foot down after accelerated step-movement.
Side-kicks are also possible by rotating the foot. Afterward, we may need to revert the foot rotation.
Look at Hulks or other SPL teams for details.
Describe alternatives you've considered

Meeting with Flo and Jan

lower frequency of step and phase reset would be helpful in keeping balance @Flova
kick_phase parameter should be 0.4/0.5
velocity nice for longer kick
roll for longer kick?
longer foot down length for kick than normal walking? --> balance issue for big step after kick but with small difference nice

TODO

parameter tuning on real roboter
plotyuggler show joint position error

Walk kick should be adapted to the current kick animation


Separate Out Gauge

This resolves #146 by templating the CCZ4RHS (formerly called CCZ4) class over a gauge_t template parameter. Additionally in anticipation of sixth order derivatives, this class is also templated over a deriv_t type defaulted to FourthOrderDerivatives. The MatterCCZ4RHS is templated similarly (in addition to its existing matter_t template).  The existing gauge conditions have been moved to a new MovingPuncturePlusGauge class which is the default for the gauge_t template parameter.
For backwards compatibility, the old CCZ4 and MatterCCZ4 classes are defined using an alias but they are marked as deprecated (so, if used, the compiler will issue a warning but compilation won't break).
In order to make the CCZ4 parameter struct not depend on the deriv_t template, its definition has moved from CCZ4::params_t to CCZ4_params_t struct defined outside of the CCZ4RHS class. This is also templated over a gauge_t template parameter and inherits from gauge_t::params_t and CCZ4_base_params_t (which has the damping parameters). Note that since these gauge parameters are loaded in SimulationParametersBase, if you want to define your own gauge with different parameters, these will need to be loaded elsewhere.
Note that the changes to the evolution equations in this PR are tested by the BSSN Test and the CCZ4 Test (at least for the parameters in the test).

This all looks good to me except I would call it MovingPunctureGauge without the Plus (is there a reason for the plus?).
I would also ask do we really want/need to change the class names to CCZ4RHS etc? Is the purpose of this to force people to update their code with the depreciation warning? Is there any problem with them continuing to use the default?

This all looks good to me except I would call it MovingPunctureGauge without the Plus (is there a reason for the plus?).
I would also ask do we really want/need to change the class names to CCZ4RHS etc? Is the purpose of this to force people to update their code with the depreciation warning? Is there any problem with them continuing to use the default?

This all looks good to me except I would call it MovingPunctureGauge without the Plus (is there a reason for the plus?).

Well the plus was to denote the fact it's actually a bit more general than standard 1+log slicing since you can change the coefficient and power of the lapse with the parameters. I was also considering GeneralizedMovingPunctureGauge. I don't feel too strongly changing it just to MovingPunctureGauge though if you prefer.

I would also ask do we really want/need to change the class names to CCZ4RHS etc? Is the purpose of this to force people to update their code with the depreciation warning? Is there any problem with them continuing to use the default?

I thought you might object to this. So my thinking is that I would prefer users to switch to it so they realise that they can use other gauges/derivative orders without hacking this class (as was done previously). This is just a gentle nudge in that direction. I imagine most users ignore compiler warnings anyway.

This all looks good to me except I would call it MovingPunctureGauge without the Plus (is there a reason for the plus?).

Well the plus was to denote the fact it's actually a bit more general than standard 1+log slicing since you can change the coefficient and power of the lapse with the parameters. I was also considering GeneralizedMovingPunctureGauge. I don't feel too strongly changing it just to MovingPunctureGauge though if you prefer.

I would also ask do we really want/need to change the class names to CCZ4RHS etc? Is the purpose of this to force people to update their code with the depreciation warning? Is there any problem with them continuing to use the default?

I thought you might object to this. So my thinking is that I would prefer users to switch to it so they realise that they can use other gauges/derivative orders without hacking this class (as was done previously). This is just a gentle nudge in that direction. I imagine most users ignore compiler warnings anyway.

Well the plus was to denote the fact it's actually a bit more general than standard 1+log slicing since you can change the coefficient and power of the lapse with the parameters. I was also considering GeneralizedMovingPunctureGauge. I don't feel too strongly changing it just to MovingPunctureGauge though if you prefer.

I think I would prefer just MovingPunctureGauge. This feels like the default to me, so then I would add another word for a modified version, like ConformallyFlatMovingPunctureGauge...

I thought you might object to this. So my thinking is that I would prefer users to switch to it so they realise that they can use other gauges/derivative orders without hacking this class (as was done previously). This is just a gentle nudge in that direction. I imagine most users ignore compiler warnings anyway.

Yeah, I think I am ok with it. I was wondering whether we could have done the same thing for the Constraints class changes.

Well the plus was to denote the fact it's actually a bit more general than standard 1+log slicing since you can change the coefficient and power of the lapse with the parameters. I was also considering GeneralizedMovingPunctureGauge. I don't feel too strongly changing it just to MovingPunctureGauge though if you prefer.

I think I would prefer just MovingPunctureGauge. This feels like the default to me, so then I would add another word for a modified version, like ConformallyFlatMovingPunctureGauge...

I thought you might object to this. So my thinking is that I would prefer users to switch to it so they realise that they can use other gauges/derivative orders without hacking this class (as was done previously). This is just a gentle nudge in that direction. I imagine most users ignore compiler warnings anyway.

Yeah, I think I am ok with it. I was wondering whether we could have done the same thing for the Constraints class changes.

I think I would prefer just MovingPunctureGauge. This feels like the default to me, so then I would add another word for a modified version, like ConformallyFlatMovingPunctureGauge...

Ok I'll change it. Now I'm curious what gauge would ConformallyFlatMovingPunctureGauge be?

Yeah, I think I am ok with it. I was wondering whether we could have done the same thing for the Constraints class changes.

Hmm, we could have done but I think it's less of an issue in this case.

I think I would prefer just MovingPunctureGauge. This feels like the default to me, so then I would add another word for a modified version, like ConformallyFlatMovingPunctureGauge...

Ok I'll change it. Now I'm curious what gauge would ConformallyFlatMovingPunctureGauge be?

Yeah, I think I am ok with it. I was wondering whether we could have done the same thing for the Constraints class changes.

Hmm, we could have done but I think it's less of an issue in this case.

The one where you drive \tilde \Gamma^i to zero, rather than just its initial value :-)

The one where you drive \tilde \Gamma^i to zero, rather than just its initial value :-)

The last commit adds a sample class IntegratedMovingPunctureGauge for an Integrated version of the Gamma-Driver, as a 2nd example of a gauge setup users can now add. In this gauge, the B vector is now used to store the initial conditions of Gamma and shift that match the usual choice of B=0 in standard Gamma driver. This variable is stored to be used in the shift equation and has 0 RHS. In order for it to work, a BoxLoops has to be run in the initial data to fill this variable, and the class IntegratedMovingPunctureGauge has a compute function for that purpose. This can serve as a basis to drive the Gamma's to other values. I tested it as it is and as expected it results in the same evolution as the non-integrated version.
The parameter covariantZ4 was also introduced, as before the parameter existed but the code always hardcoded it to 1. This fixes #161 .

When I compile I get the deprecated warning for the parts of SimulationParametersBase where you use the default template CCZ4RHS<>
Can we specify a template here just to avoid the warnings appearing? Maybe we could make a FixedGauge class where the rhs are just set to zero and you have no params, and use this?

That's strange. It should only apply to the CCZ4 alias. What compiler are you using?

Admittedly an old one, intel 2017

Let me test it again and have a look myself.

This works for me now, no warnings :-)


[Feature Request]: add gemini safety settings and generation config

Is your feature request related to a problem? Please describe.
1 - Cannot control behavior of Gemini with generation params like top_p, top_k etc.
2 - Default safety setting blocks too often, I want to rise threshold to BLOCK_ONLY_HIGH
Describe the solution you'd like
I want to specify those params in llm_config when creating an agent
Additional context
No response

@NikolayTV @sonichi how can we add this issue to the roadmap here?


Support separator in windi.config

What?
It appears windi doesn’t support the separator config option for variant prefixes (see tailwind docs)
Either of these would make sense:

Copy tailwind: Arbitrary string
Sensible restrictions: A union of strings, e.g. ’:’ | ‘::’ | ‘-‘ | ‘--‘ | ‘_’ | ‘__’

Why?
I use Pug, and I suspect many others do given its first class support in Volar
// ‘:’ separator
foo(class=“bar:baz-qux)

// with ‘--‘ separator
foo.bar--baz-qux

An option for the !important prefix would be cool too, e.g. in pug I would be able to do foo._bar--baz-qux


KYLIN-4137 Accelerate metadata reloading

Codecov Report

Merging #802 into master will decrease coverage by 0.01%.
The diff coverage is 30%.

@@             Coverage Diff             @@
##             master    #802      +/-   ##
===========================================
- Coverage     25.72%   25.7%   -0.02%
+ Complexity     6047    6046       -1
===========================================
  Files          1394    1394
  Lines         83110   83136      +26
  Branches      11634   11638       +4
===========================================
- Hits          21382   21373       -9
- Misses        59675   59706      +31
- Partials       2053    2057       +4

Impacted Files
Coverage Δ
Complexity Δ

...apache/kylin/common/persistence/ResourceStore.java
70.53% <0%> (-2.52%)
56 <0> (ø)

...che/kylin/metadata/cachesync/CachedCrudAssist.java
52.77% <47.36%> (-4.22%)
14 <0> (-1)

...n/java/org/apache/kylin/job/dao/ExecutableDao.java
29.3% <0%> (-3.73%)
24% <0%> (ø)

...ream/core/storage/columnar/ColumnarStoreCache.java
48.83% <0%> (-2.33%)
7% <0%> (-1%)

.../apache/kylin/cube/cuboid/TreeCuboidScheduler.java
63.84% <0%> (-2.31%)
0% <0%> (ø)

...rg/apache/kylin/cube/inmemcubing/MemDiskStore.java
69.6% <0%> (-0.61%)
7% <0%> (ø)

...he/kylin/dict/lookup/cache/RocksDBLookupTable.java
78.37% <0%> (+5.4%)
7% <0%> (+1%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 724b36d...ec5f400. Read the comment docs.

Pull Request Test Coverage Report for Build 4902

12 of 30 (40.0%)  changed or added relevant lines in 2 files are covered.
15 unchanged lines in 5 files lost coverage.
Overall coverage remained the same at 28.186%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core-metadata/src/main/java/org/apache/kylin/metadata/cachesync/CachedCrudAssist.java
12
19
63.16%

core-common/src/main/java/org/apache/kylin/common/persistence/ResourceStore.java
0
11
0.0%

Files with Coverage Reduction
New Missed Lines
%

core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/MemDiskStore.java
1
78.12%

core-metadata/src/main/java/org/apache/kylin/metadata/cachesync/CachedCrudAssist.java
1
62.04%

stream-core/src/main/java/org/apache/kylin/stream/core/storage/columnar/ColumnarStoreCache.java
1
55.81%

core-cube/src/main/java/org/apache/kylin/cube/cuboid/TreeCuboidScheduler.java
2
68.46%

core-job/src/main/java/org/apache/kylin/job/dao/ExecutableDao.java
10
30.7%

Totals

Change from base Build 4890:
0.0%

Covered Lines:
23433

Relevant Lines:
83136

💛  - Coveralls


specify go versions to use via travis

Do you know if a failing test with Go tip will cause the badge to show a build failure? It'd be nice to not show that the build is failing if it's only failing on Go tip. I haven't been able to find any info on that.

@mholt since travis doesn't support the new beta versions of go 1.5, there shouldn't be any issues. I used tip on other projects and the builds seemed to pass so issues with the build failing should not occur

I see, so right now we're only testing on the latest stable Go version, but this change will start backversioning which will let us see if we break anything on older versions of Go, and in the latest stable version, in the future (I'm assuming from this). Sounds good. Thanks!


productionMode and devtools.

When leaving electron-devtools-installer on, it will throw errors after production. Using try/except and set a productionMode variable to detect if the application is running in production can automatically start the installer as well as devtools which will ease development :)

Commit 5e5e999 fixes this.
How?
In src/main.js by trying to import electron-devtools-installer and setting productionMode to false, but if it is unable to import it, it will set productionMode to true. If productionMode is true, the devtools won't start and it won't load the devtool installer, if it's false, then it will load devtools as well as the icons.


Renaming the local qasm simulators

Renaming of the local cpp simulator and being a bit smarter for the user. I would like the local_qasm_simulator to default to c++ if the user has it installed and go to python if they have not. The c++ does all the python does and faster. I don't think the user should pick (by default) and they should just get the fastest local simulator on their system. Also i don't want to rewrite all my scripts:-)
Expected Behavior
in --- pprint(Q_program.available_backends())
out ---
['local_qasm_simulator' ,
'local_clifford_simulator',
'local_unitary_simulator',
]
and using the Q_program.get_backend_configuration('local_qasm_simulator') you could find out which version of the simulator you are using and then if you need to we could have a set function to change it to python if you want to force yourself to use the slower one :-). Or we can list both in the backends and then just have some way of showing the local_qasm_simulator is a soft link to the c++. My main point is for most users they just want to use the best simulator that does what they need.
Current Behavior
in --- pprint(Q_program.available_backends())
out ---
['local_qasm_simulator',
'local_clifford_simulator',
'local_qiskit_simulator',
'local_unitary_simulator']
Future contributions
could be then a python version of the Clifford simulator and a c++ version of the local_unitary_simulator (I would argue the c++ version of the unitary is more important so that it is faster).

Closing this. Let's track it in #281 with more concrete proposals.


Unable to get the DS18B20 Temperature Sensor working on hypriot image

Hi, I using your image for a project, but I'm unable to get the 1-wire sensor to work. The same sensor works if I swap to the latest raspian image. Any ideas?
I'm following these instructions -> https://matthewmoisen.com/blog/how-to-use-the-ds18b20-temperature-sensor-with-raspberry-pi/
Using version 1.5.0

I haven‘t used 1-wire yet. So it‘s had to say, but probably some different kernel modules compiled in.
I suggest to stay with Raspbian LITE and run
curl https://get.docker.com | sh

to install Docker 17.05 (17.09 is around the corner with the same command in a few days).
As long as you do not want to run a Docker Swarm mode, then this would be better for such hardware projects.

Thanks for your reply. I'm sad that 1-wire is not working on hypriot image because it's awesome and I really don't want to use anything else :-)
It seems to me that the kernel modules are there as I can run the modprobe commands without an error and lsmod also does list them. I hope someone clever can find time to look into this matter, meanwhile, I will be forced to battle with Raspbian.

Hi all, just wanted to point out another OS for Raspberry whitch supports headless configuration, docker and 1-wire perfectly. https://resinos.io/


Fix: add max_fee too call_or_invoke

This allows to pass max_fee to call_or_invoke, which is needed for calling the starknet cli.

Thanks for doing this <3, but this PR has been superseded by https://github.com/OpenZeppelin/nile/pull/131

Thanks for doing this <3, but this PR has been superseded by https://github.com/OpenZeppelin/nile/pull/131


Error in config/default_template.yaml

There are two erroneous lines in the mqttConfig part of config/default_template.yaml
is:
brokerIP:
brokerHost: 1883
should be:
brokerHost:
brokerPort: 1883

Ohh I think you might be right - copy/paste error it seem. Will verify it and fix if needed.
Thanks!

Fixed in latest commit.