I have a similar for my Neuron L303. I didn't check via Mervis, but I just noticed that the indicator LEDs on the unipi itself was not reacting in any way anymore for some specific DI (others still working).
Do you think this is due to the same firmware issue or a more fundamental hardware issue? And why would I only have this issue now? I have only been running my unipi for some debugging purposes up until now (it's just when experimenting with my actual full set of push buttons that I started to notice this).
I'm thinking about using an L403 for controlling a large number of blinds (apart from other building automation duties) with 2 relays per blind motor.
Why not go for TCP-IP solution, i use a Kincony kc868-h32, a 32 relay solution, that you can steer the relays true a url link command, works fine for me.
There are similar solutions more hobby orientated, and more pro, over Modbus, serial and TCP-IP, there are also 2/4/8/16 solutions out there, so that you can have your relays close by what you wane control, and only have to run a network or serial cable to the relay unit.
the name "holding register" doesn't mean the value is stored in the non-volatile memory. This is just a type of the data store which comes from the Modbus naming convention, which means it can be read and written into, as oppose to the Input register, which can be only read.
You can save the current value of the counter register with the saving of the current values to internal flash. This save can be initiated by e.g. setting the coil named "Save current configuration and use on startup" which has to be called on the appropriate group.
We do not recommend to do it very often as this will corrupt the internal memory. Try solving the problem in the program instead.
Hi @knebb, there are two approaches and you figured out both of them:
Do the calculation and write to register 2
Write a value to the register 3000. The value has to be 32bit signed integer.
I checked the documentation and I think there is a mistake with the registers 3000, 3001 and 3002. Those should be 3000, 3002 and 3004 since the 32bit values need two consecutive registers. I will check what is in the firmware and let you know!
I am also trying to read analog and digital ports on unipi to collect sensor data from few sensors. I was also just wondering if we can do it in the same way like we do it on raspberry pi using a python script. I can see that even you wanted to do something like that. I have also gone through evok api but they seem to be specific models. I dont think using that we can directly read analog and digital I/Os on unipi. Can you please suggest any ideas if you were successful doing that?