Double calls to setter function when using checkbox in AWS


I am using NET+OS 7.4 on a ConnectCore 9P 9215. The target device is built around the NS9215 module.

I am adding a web interface to the control application that will allow field testing of the device.

I am using checkboxes for the digital outputs. They are working, but the setter function is being called twice for each checkbox that is checked.

Here is what I have in the html:

Digital outputs:

Each setter function (setDigitalOutput1(), setDigitalOutput2(), setDigitalOutput3()) is called first with a value of false, then each setter is called again for the checkboxes that are ticked, with a value of true.

Am I doing something wrong?

I should be able to filter this in my application, but I’d rather not have to. :slight_smile:


I am curious why you are using the value for the RpSetType and RpGetType attributes of complex instead of function. I believe complex is generally used with repeat groups and (I believe) generates different c code (through the PBuilder utility) then does function. Try changing complex to function and let the forum know if the problem is addressed.

Thank you for your response.

I was using type complex instead of function because I initially copied the checkbox code from network_config.htm in the web/html directory. Thank you for pointing that out to me, because type function is simpler.

Changing to type function does not change the behaviour, but I have found the following text in the AWS documentation:

“Because HTML forms submit only the check box items that are checked on a form, the RomPager engine turns off all check boxes on a form at the beginning of form processing. As the form is processed, the checked individual check box items are set to on.”

So I am dealing with it by storing the values in static variables in the _v.c file and committing the values to the hardware in the digitalIOSubmit() function.