Version 0x30 Firmware and Manual update [completed]

Here are posted all new preliminary firmware and manual updates

Version 0x30 Firmware and Manual update [completed]

Postby Pimaster » Wed Jan 25, 2017 3:36 pm

Hi,

-----
[EDIT]: We released newer version please use this one instead of the 0x30
http://www.forum.pimodules.com/viewtopic.php?f=25&t=5614
-----

This is the 0x30 version of firmware. We tried to check all reported bug, and on our side seems to be OK. We are releasing this version as we are receiving a huge pressure (full understand it) to release it ASAP. There are some parts that we not activated yet, and will be activated within next week.

UPS PIco HV3.0 firmware 0x30 dated 17.03.2017
https://drive.google.com/open?id=0BxyNAWdHZ1PoX2VheUhPOVptTVU

Please find here below related temporary documents (before we release the final manual for this version)

UPS PIco HV3.0 12 bit A/D converters
https://drive.google.com/open?id=0BxyNAWdHZ1PoQ2ItRFMyTW1SOUU

UPS PIco HV3.0 FAN Control (Active Cooling System)

https://drive.google.com/open?id=0BxyNAWdHZ1PoNkV6MThCclRPaVE

UPS PIco HV3.0 HAT Buttons
https://drive.google.com/open?id=0BxyNAWdHZ1PoT0R2YUlqQy05aWc

UPS PIco HV3.0 HAT Sound Generation System
https://drive.google.com/open?id=0BxyNAWdHZ1PoVHktUTFQc1BBNVU

UPS PIco HV3.0 Bi Stable Relay

https://drive.google.com/open?id=0BxyNAWdHZ1PoMG04UHotX0FpZVE

UPS Pico HV3.0 HAT Auxiliary 5V@750 mA interface
https://drive.google.com/open?id=0BxyNAWdHZ1PoOFhVa01JTWc1RzQ

0x69 -> UPS PIco HV3.0 Module Status Registers Specification
https://drive.google.com/open?id=0BxyNAWdHZ1PoQWl0RWlVVFFFdDA

0x6B -> UPS PIco Module Commands
https://drive.google.com/open?id=0BxyNAWdHZ1PoakptNll6VGctSGc

GPIO_USED_BY_PICO
https://drive.google.com/open?id=0BxyNAWdHZ1PoRzFORC12OTFGOE0

UPS PIco 3.0 16 pin header
https://drive.google.com/open?id=0BxyNA ... FRhVUphQzA

UPS PIco Stack/TopEnd
https://drive.google.com/open?id=0BxyNAWdHZ1PoOXV3YWtzNTFZT00

UPS PIco Stack Plus Top
https://drive.google.com/open?id=0BxyNAWdHZ1PoZkgwbDRPaTdJSmc

Unlocked Firmware features

1. Interrupts driven interaction with Raspberry Pi® based on Daemons
2. Simple status email broadcasting system based on Daemons
3. Intelligent Uninterruptible Power Supply (UPS)
4. 3 User defined keys handler
5. 3 User defined LEDs handler
6. LiPO and LiFePO4 chemistry battery support
7. Automatic Battery Charger for LiPO and LiFePO4 batteries
8. Battery Charger Power Tracking (Only Version Plus on External Powering Input)
9. Integrated Hardware RTC with Battery Back-up
10. Automatic Files Safe Shutdown and Wake-up (when Cable Power is back)
11. Single button System Shutdown/Startup and ON/OFF for Battery and Cable (Only Version Plus) Powered Applications
12. PWM FAN Control with automatic ON/OFF (added on 15.03.2017)
13. Zero Power Bi Stable Relay Control
14. Programmable Integrated Sounder
15. System Monitoring: Temperatures, Voltages
16. Programmers I2C PICo Interface
17. Programmers RS232 Interface (Basic Version)
18. Boot loader for on site firmware update
19. 3 x A/D converters (Basic Version, without high voltage interface)
20. 3 x A/D converters Raw Data (without conversion to Voltages)
21. Programmable Auxiliary Battery Backed up 5V@750 mA supply


Firmware Fixes/Add on (compared to the previous version 0x24)

1. Changed low battery thresholds shutdown for LiFePO4 batteries from to 2.95V to 2.9V. Now for battery LiFePO4 BAT LED is now lighting at 2.95 V, and FSSD is at 2.9V. For battery LiPO BAT LED is now lighting at 3.6 V, and FSSD is at 3.4V.
PIco HV3.0 Plus: Corrected bug when executed command in Raspberry Pi “sudo halt” system not goes to the Low Powering Mode when powered from External Powering Input. Now System is going to Low Powering Mode, and cut the cable power when “sudo halt” is executed. If “sudo reboot” is executed system restarts the Raspberry Pi.
When system is in Low Powering Mode, can be wake up if:
- any cable power applied or change their conditions (EXT, micro USB or GPIO 5V)
- F button pressed
Changed waiting time for reboot or shutdown, if console command has been executed “sudo halt” or “sudo reboot” from 300 sec (as it was) to 90 sec now.

2. Improved the Powering Falling Edge Recognition algorithm

3. Improved the A/D converter filtering software by using (adding) the “Olympic Scoring” implementation on each A/D sampling interrupt instead of the former used “windowed mean value” method

4. Added software low pass filter to each of the PIco HV3.0 A/D converters (users and system)

5. Added decimal rounding on second position after comma to each A/D Voltage Translator readings (0x69 Registers Set). Each A/D reading converted to voltage/temperature/current are valid on the first position after comma. Therefore the 4.16V is shown as 4.20V, 4.12V is shown as 4.10V.

6. Improved Keys recognition routine

7. Improved the de-bouncing filter on the ISR of the pulse train input recognition

8. Improved the TO-92 temperature sensor readings and conversion

9. Improved the NTC temperature sensor readings and conversion

10. Corrected (and activated) option for the first A/D converter pre scaled to 5.2V at 0x69 and address 0x16. This option was temporary disabled in order to change firmware from floating point arithmetic to fixed one, to decrease memory footprint and system speed up. Higher Voltage could be supplied to this A/D converter when added an extra resistor and set a proper variable in the PICo interface. Readings are in 10th of mV in BCD format. Usage is described in the manual in a proper section. The High Voltage Conversion interface is not activated yet.

11. Improved LF batteries charging algorithm

12. Improved wake up procedure from sleep mode when Raspberry Pi is starting up

13. Added option for the all 3 A/D converters a Raw Data Readings, with internal Reference to 2.048V (always with Internal Resistors divider presented on a dedicated manual part). Each reading is passed from the “Olympic Score filtering” as also software Low Pass Filter. There are not rounded as also not converted to voltage. Just raw data. In order to set this option the user need to write the 0xFF to the setA_D register.

14. Improved the Dynamic Power Tracking and separated currents for micro USB and External Powering with different current thresholds. The EPR has higher current 800 mAh

15. Activated enable5V. The usage of it is described in detailed in a proper manual section

16. Improved storage/recall of system variables in the internal UPS PIco HV3.0 HAT EEPROM

17. Activated automatic FAN controls, set as default option, temperature threshold are: 35 Celsius for ON and 34 Celsius for OFF (1 Celsius hysteresis). User can change the threshold, however the hysteresis will be always 1 Celsius. Default the FAN speed is set to 50%, user can change it. FAN is NOT working when system is in Low Powering Mode

18. Added LED_OFF, that switch OFF all software controlled LEDs. CHG, FAN, EXT can not be switched off as are connected to the hardware and controlled by it. By writing the 0x00 to LED_OFF disable the LEDs. Default is 0x01 (means LED ON)

19. I2C ISR Improved and tested to be workable with new preliminary kernel 4.9.11

Enjoy it !!

We are only humans, so please report any bugs you will see. Thank you !!
Warmest Regards
PiM
---
Designing with Mentor Graphics PADS - www.pads.com
Please read and follow the PiForum rules
http://www.forum.pimodules.com/viewtopic.php?f=13&t=196
---
Pimaster
Site Admin
 
Posts: 1597
Joined: Fri Sep 14, 2012 7:50 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby Bleky » Sat Mar 18, 2017 9:07 am

Updated on HV3.0A Plus,so far no issues.Working like a charm.
Bleky
 
Posts: 6
Joined: Mon Feb 13, 2017 5:38 pm

Re: Version 0x30 Firmware and Manual update [completed]

Postby fasanzaf » Sat Mar 18, 2017 9:27 am

Impressive (and highly awaited) work pimaster! Congratulations! I suspect that the wait has been very worthwhile, since there is much to test.

As you said, besides a good and bug-free firmware, a complete and detailed manual is essential and valuable.

Btw, the above link to "Auxiliar 5v@750m..." points to "Sound generation system..." document.

Congratulations again!
Fernando,
from Madrid, Spain
fasanzaf
 
Posts: 1
Joined: Sat Mar 18, 2017 9:09 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby Siewert30SW » Sat Mar 18, 2017 10:55 am

Thx for releasing 0x30.
At the moment it's up and running for 11 hours and haven't seen one of my previous reported bugs.
I also enabled the resetpin again and haven't seen a sudden reboot yet, will keep my eye on that one also.
For now it looks stable but time will tell and will keep monitoring.
Haven't tested a simulated power outage but will do tomorrow when i get home.
For now i leave it up to test the long term stability.

Some time ago i also rewritten the install and firmware flash manual to suite the Rasbian Jessie 8.0 with V4 kernel series.
I also will post that so others can use it as the old manual has some guide parts which doesn't suite Rasbian Jessie and v4 kernel series.

Findings so far:
btw: weird spike does show the moment i flashed 0x30.

Looks like the weird battery spikes are fixed.
Don't know what you have done but the LiFepo4 battery stays at stable 3.6v, no trickle charging anymore and no spikes over 4.1volts.
Normally that issue occurs every 8 to 10 hours with the result that the Pi reboots suddenly, but i'm 11hour on the way and haven't seen them yet.

Pico_0x30_battery_voltage.png
Pico_0x30_battery_voltage.png (69.96 KiB) Viewed 3338 times


It also appears you amend the RPi voltage.
As normally it hovers between 5.100 and 5.200 volts.
At the moment it it's stays solid at 5.100 volts.

Pico_0x30_raspberry_voltage.png
Pico_0x30_raspberry_voltage.png (57.3 KiB) Viewed 3338 times


As you mentioned in the OP.
You amended the NTC1 and TO-92 temperature readings.
At the moment both sensors which previously reported temps which differed 2 to 5 degrees are now most of the times the same temperature.
And do report a lower temp then previously.
Previously the fan temp sensor reports approx 40 degrees and now dropped to 25 to 30 degrees, same counts for the board temperature.

Pico_0x30_fan_temp.png
Pico_0x30_fan_temp.png (66.35 KiB) Viewed 3338 times


For now i discovered just one very small bug regarding fan state.
On firmware 0x24 we did the following to set the fan.
i2cset -y 1 0x6b 0x12 25 (Set it to 25%)
i2cset -y 1 0x6b 0x11 1 (Set fan ON)

then the output is:
i2cset -y 1 0x6b 0x11 = 0x01 - Fan enabled
i2cset -y 1 0x6b 0x12 = 0x25 - Fan speed at 25%
i2cset -y 1 0x6b 0x13 = 0x01 - Fan Running

In the new firmware 0x30 manual you say that fan speed is set by i2cset -y 1 0x6b 0x13.
This is false, as you can't set it via 0x13 and when i do i get no fan speed set.
Firmware 0x30 the 0x13 register is doing nothing anymore.
When i set 0x11 and 0x12 to my desired settings then 0x13 stays on 0x00 which previously was going to 0x01 when the fan was running.

So when is set my fan like i mentioned above on 0x30 then the output is as following.

i2cset -y 1 0x6b 0x11 = 0x01 - Fan enabled
i2cset -y 1 0x6b 0x12 = 0x25 - Fan speed at 25%
i2cset -y 1 0x6b 0x13 = 0x00 - Fan Not Running

Although the register says the fan is not running, it is running.

For now i'm happy to see these good results.
And will see/monitor how it does on the long term.
As mentioned earlier, will do some simulated power outages tomorrow.

p.s
Those who use my pico_status script.
It's not fully compatible with 0x30 firmware version.
I hope i have some time the upcoming week to rewrite it for 0x30 firmware version.
Setup:
1x RPi3 - PIco hv3.0A Plus / Domoticz / RFXtrx433E
1x RPi3 - PiHole / logging gas,elec
3x FI9803P Cam
2x Youless Elec/Gas
4x KD101 detectors
a lot of KaKu/CoCo stuff

Domoticz scripts: @ GitHub
pico_installer: @ GitHub
pico_status: @ GitHub
User avatar
Siewert30SW
 
Posts: 191
Joined: Fri Jan 06, 2017 8:06 pm
Location: The Netherlands

Re: Version 0x30 Firmware and Manual update [completed]

Postby Pimaster » Sat Mar 18, 2017 12:30 pm

fasanzaf wrote:Impressive (and highly awaited) work pimaster! Congratulations! I suspect that the wait has been very worthwhile, since there is much to test.

As you said, besides a good and bug-free firmware, a complete and detailed manual is essential and valuable.

Btw, the above link to "Auxiliar 5v@750m..." points to "Sound generation system..." document.

Congratulations again!
Fernando,
from Madrid, Spain


Thank you for mentioning mistake, corrected already
Manual (a complete version) will be release about end of this week, as it is really difficult job. I release most of the important to use parts, just to cover you in the moment.
Warmest Regards
PiM
---
Designing with Mentor Graphics PADS - www.pads.com
Please read and follow the PiForum rules
http://www.forum.pimodules.com/viewtopic.php?f=13&t=196
---
Pimaster
Site Admin
 
Posts: 1597
Joined: Fri Sep 14, 2012 7:50 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby Pimaster » Sat Mar 18, 2017 12:46 pm

Siewert30SW wrote:Thx for releasing 0x30.
.


At the moment it's up and running for 11 hours and haven't seen one of my previous reported bugs.
I also enabled the resetpin again and haven't seen a sudden reboot yet, will keep my eye on that one also.
For now it looks stable but time will tell and will keep monitoring.
Haven't tested a simulated power outage but will do tomorrow when i get home.
For now i leave it up to test the long term stability.



The time to time reset has to do with some spikes that occurs on the pulses train recognition system. We have had a filer for that (as it is external fired ISR) but seems was not enough. It was extremely difficult to fix it, however with improving of the filtering on this ISR seems to be correct not, as far I'm using it here. However, only running it on different sites on various condition will prove us that it is working properly.


Some time ago i also rewritten the install and firmware flash manual to suite the Rasbian Jessie 8.0 with V4 kernel series.
I also will post that so others can use it as the old manual has some guide parts which doesn't suite Rasbian Jessie and v4 kernel series.


Thank you, we are using inputs from you and other good people for our manual, hope you allow us.

Findings so far:
btw: weird spike does show the moment i flashed 0x30.

We spent a very long time for testing, as it is very hard, finally real time working system

Looks like the weird battery spikes are fixed.
Don't know what you have done but the LiFepo4 battery stays at stable 3.6v, no trickle charging anymore and no spikes over 4.1volts.
Normally that issue occurs every 8 to 10 hours with the result that the Pi reboots suddenly, but i'm 11hour on the way and haven't seen them yet.


As I informed you before, it was not dangerous for the battery, but we improved it and works much better.

It also appears you amend the RPi voltage.
As normally it hovers between 5.100 and 5.200 volts.
At the moment it it's stays solid at 5.100 volts.


You are extremely detailed tester, I can not hide anything ;-)

As you mentioned in the OP.
You amended the NTC1 and TO-92 temperature readings.
At the moment both sensors which previously reported temps which differed 2 to 5 degrees are now most of the times the same temperature.
And do report a lower temp then previously.
Previously the fan temp sensor reports approx 40 degrees and now dropped to 25 to 30 degrees, same counts for the board temperature.


The TO-92 has been rewritten, and tested very hard, so working for 99.9999% properly. It is the most important, as automatic FAN is based on it. The NTC need little bit work, will be improved next firmware release.

For now i discovered just one very small bug regarding fan state.
On firmware 0x24 we did the following to set the fan.
i2cset -y 1 0x6b 0x12 25 (Set it to 25%)
i2cset -y 1 0x6b 0x11 1 (Set fan ON)

then the output is:
i2cset -y 1 0x6b 0x11 = 0x01 - Fan enabled
i2cset -y 1 0x6b 0x12 = 0x25 - Fan speed at 25%
i2cset -y 1 0x6b 0x13 = 0x01 - Fan Running

In the new firmware 0x30 manual you say that fan speed is set by i2cset -y 1 0x6b 0x13.
This is false, as you can't set it via 0x13 and when i do i get no fan speed set.
Firmware 0x30 the 0x13 register is doing nothing anymore.
When i set 0x11 and 0x12 to my desired settings then 0x13 stays on 0x00 which previously was going to 0x01 when the fan was running.

So when is set my fan like i mentioned above on 0x30 then the output is as following.

i2cset -y 1 0x6b 0x11 = 0x01 - Fan enabled
i2cset -y 1 0x6b 0x12 = 0x25 - Fan speed at 25%
i2cset -y 1 0x6b 0x13 = 0x00 - Fan Not Running

Although the register says the fan is not running, it is running.


Will check it and correct it today, release new firmware with this correction, RS232 router as also STA timer, I think till Monday (this Monday) ;-)
Warmest Regards
PiM
---
Designing with Mentor Graphics PADS - www.pads.com
Please read and follow the PiForum rules
http://www.forum.pimodules.com/viewtopic.php?f=13&t=196
---
Pimaster
Site Admin
 
Posts: 1597
Joined: Fri Sep 14, 2012 7:50 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby Pimaster » Sat Mar 18, 2017 12:50 pm

Previously the fan temp sensor reports approx 40 degrees and now dropped to 25 to 30 degrees, same counts for the board temperature.
we rewritten completely the A/D, added "Olympic Scoring" filtering and also "low pass" filtering to each A/D converter, as also rounding on second digit. The former firmware was based on "sliding window with mean value", without both of above. Looks that the new approach is much better.
Warmest Regards
PiM
---
Designing with Mentor Graphics PADS - www.pads.com
Please read and follow the PiForum rules
http://www.forum.pimodules.com/viewtopic.php?f=13&t=196
---
Pimaster
Site Admin
 
Posts: 1597
Joined: Fri Sep 14, 2012 7:50 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby cresfang » Sun Mar 19, 2017 4:36 am

I wanna ask you something strange.

For unknown reason, the picofu script unable to connect to UPS even though its already on bootloader mode (orange led lit).

I re-followed every step, including using fresh raspbian installation.... And still unable to communicate to bootloader...

But everything is working normal... I'm in fw 24 now...

Thanks so much....
http://crescendo-fang.cf
User avatar
cresfang
 
Posts: 88
Joined: Mon Aug 29, 2016 9:43 am
Location: Garden of Time

Re: Version 0x30 Firmware and Manual update [completed]

Postby Pimaster » Sun Mar 19, 2017 12:39 pm

cresfang wrote:I wanna ask you something strange.

For unknown reason, the picofu script unable to connect to UPS even though its already on bootloader mode (orange led lit).

I re-followed every step, including using fresh raspbian installation.... And still unable to communicate to bootloader...

But everything is working normal... I'm in fw 24 now...

Thanks so much....

check your serial port if used by another application, also try to run the last line again, if fails. It happens sometimes also on my side with picofu, but do not know why (it has to do with remain serial data on the buffers - not know which one: RPi or PIco)

picofu.png
picofu.png (134.43 KiB) Viewed 3247 times
Warmest Regards
PiM
---
Designing with Mentor Graphics PADS - www.pads.com
Please read and follow the PiForum rules
http://www.forum.pimodules.com/viewtopic.php?f=13&t=196
---
Pimaster
Site Admin
 
Posts: 1597
Joined: Fri Sep 14, 2012 7:50 am

Re: Version 0x30 Firmware and Manual update [completed]

Postby bolausson » Sun Mar 19, 2017 1:28 pm

Update went smooth on Pi 3 with LibreELEC 8.

Can we now adjust the "time to low power mode after shutdown (all LEDs out)"?

Cheers,
Bjoern
bolausson
 
Posts: 26
Joined: Mon Mar 06, 2017 5:37 pm

Next

Return to UPS PIco HV3.0 Firmware and Manual Updates

Who is online

Users browsing this forum: No registered users and 1 guest