RP4 Reboots when UP...
 
Notifications
Clear all

RP4 Reboots when UPS PIco HV4.0B goes to LPR mode

13 Posts
2 Users
0 Reactions
448 Views
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

I've recently been testing using the F button to start and stop the RPi when connected via the USB Power supply.

When I press the F button, the UPS correctly triggers shutdown, and the red LED on the pi as well as the solid SYS LED on the UPS are on. However, after the FFSD timeout (30s) the UPS enters LPR mode (SYS LED goes Off), and as soon as it does, the RPi reboots with the UPS still in LPR mode (no LEDs on).

If I just leave it, the RPi will happily work, but with no UPS functionality.

If I press the F button at this time, it hard resets the RPi and reboots it with the UPS working correctly again.

I have a couple of other hats on the RPi board. I am wondering if their power draw in LPR mode is somehow confusing the UPS and triggering a restart? or is the just he RPi?

Could you please help?

Thanks


   
Quote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

Hi,

Please advise firmware version, hardware configuration (what other HAT are used if so) as also what Raspberry Pi you are using (model) in order to support you.

Thank you and Kind Regards

 


   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

Hi

The firmware is 0x179, which I upgraded yesterday to attempt to see if it would fix it. It did not. I also tried it on firmware 0x156. I am using a HV4B with a LiPo. Reset and power pins are connected to the RPi via two small leads. I've been using a contact button to short the F button & Ground on the external button connectors, but the behaviour is the same with the on-board F button.

The other hats are:

SIM7600X 4G Hat ( https://core-electronics.com.au/waveshare-4g-hat-for-raspberry-pi-lte-cat-4-4g-3g-2g-gnss.html?gad_source=1&gclid=EAIaIQobChMIv-eVzK23igMVEA2DAx1Uch32EAQYASABEgKN1_D_BwE)

MCC 172 DAQHAT ( https://digilent.com/shop/mcc-172-iepe-measurement-daq-hat-for-raspberry-pi/?srsltid=AfmBOop88RxfO6Y43Hb3NvsQSFIqwQBJd2rqci98O9ioW7vvtP_at67u)

The MCC 172 is also connected permanently via USB.

The Raspberry Pi is a 4B running Raspberry Pi OS x64.

Thanks


   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

Hi. Are you able to help? I haven't heard back.

Thanks


   
ReplyQuote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

Hi,

Yes, I reproduced it here with version 0x0179. Working to correct it. It is a bug

BR PiM

This post was modified 4 months ago by PiAdmin

   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

Hi Pi Modules Team

Thanks for confirming. 

Any updates on when a new firmware might be released? 

Thanks


   
ReplyQuote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

Hi,

This week. Please also download new setup registers script we released before 3 days

BR PiM


   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

Hi

I downloaded the new registers setup script from the firmware page, pico_setup2.6_hv4.0.py but it tells me I need firmware 0x0180. Where can I find 0x0180 firmware? It doesn't appear on the firmware download page.

Thanks


   
ReplyQuote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

@kaif 

Hi,

It has been not released yet. However the script is proper and working also with 0x0179. Until we release the 0x0180 please edit the script and change the 0x0180 to 0x0179, and everything will be working well.

See below

BR PiM

 


   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

Thanks for the help. I've made that change and successfully run the script.

I am not sure what settings I am meant to change to stop the above behaviour. Could you please give me some direction?

Here's what I see:

UPS PIco Firmware              : 0179
UPS PIco Bootloader            : 41
UPS PIco PCB Version           : 41

UPS PIco PCB Defaut Battery    : 0x4c (Battery LiPO 'L')
UPS PIco Set Battery           : 0x6c (Battery LiPO+SC 'l')
Powering Mode                  : Cable POWERED

RP Core Temp                   : 26 C
RP Core Temp (PICo)            : 25 C

+----------------------------------------------------------------------------------------------------------------------+
|Number|     Register    |Address|Value|                                        |Number|     Register    |Address|Value|
+----------------------------------------------------------------------------------------------------------------------+
  0(b) pico_state...........0x00 : 0x00                                         | 20(b) on_the_go...........0x16 : 0x00                         
  1(b) Battery Runtime......0x01 : 0x01   (1 min)                               | 21(b) map_led_green.......0x17 : 0x00                         
  2(b) RS232 Rate...........0x02 : 0x00   (PICO_OFF  RPI_OFF)                   | 22(b) map_led_blue........0x18 : 0x00                         
  3(b) rpi_hold_on..........0x03 : 0x00                                         | 23(b) chg_ctrl............0x19 : 0x01                         
  4(b) pico_rpi_route.......0x04 : 0x00                                         | 24(b) fssd_duration.......0x1a : 0x1e                         
  5(b) sta_timer............0x05 : 0xff   (OFF)                                 | 25(b) rpi_OFF_time_reg....0x1b : 0x05                         
  6(b) enable5V.............0x06 : 0x00   (OFF)                                 | 26(b) ad_corectionf.......0x1c : 0x00                         
  7(b) battype..............0x07 : 0x4c   (Battery LiPO 'L')                    | 27(b) Scheduler_Sel.......0x1d : 0x00                         
  8(b) setA_D...............0x08 : 0x00                                         | 28(b) BS_action_time......0x1e : 0x00                         
  9(b) led_green............0x09 : 0x00   (OFF)                                 | 29(b) BS_inaction_time....0x1f : 0x00                         
  10(b) led_blue............0x0a : 0x00   (OFF)                                 | 30(w) BS_Start_time.......0x20 : 0x0000                       
  11(b) relay...............0x0b : 0x00   (OFF)                                 | 31(b) BS_multipier........0x22 : 0x00                         
  12(b) bmode...............0x0c : 0x01   (BUZZER AUTO)                         | 32(b) BS_RUN..............0x23 : 0x00                         
  13(w) bfreq...............0x0e : 0x0000 (0 Hz)                                | 33(b) SAS_number..........0x24 : 0x00                         
  14(b) bdur................0x10 : 0x00                                         | 34(b) SAS_run.............0x25 : 0x00                         
  15(b) fmode...............0x11 : 0x03   (FAN AUTO HARD)                       | 35(b) ps_checking_time....0x26 : 0x1e                         
  16(b) fspeed..............0x12 : 0x64   (100)                                 | 36(b) BAT_level_report....0x27 : 0x05                         
  17(b) fttemp..............0x13 : 0x45                                         | 37(w) SC_level_start......0x28 : 0x0000                       
  18(b) fsstep..............0x14 : 0x01                                         | 38(b) debug_mode..........0x2a : 0x00   (PICO_OFF     RPI_OFF)
  19(b) LEDs_ON/OFF.........0x15 : 0x01   (ON)                                  | 39(blk) RS232_data........0x2b : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

   
ReplyQuote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

Please send me picture (screen shot) to have better view

BR PiM


   
ReplyQuote
 kaif
(@kaif)
Active Member
Joined: 2 years ago
Posts: 7
Topic starter  

refer attached.

thanks


   
ReplyQuote
(@piadmin)
Member Admin
Joined: 6 years ago
Posts: 94
 

Hi,

This script has been written (by the way by CHATGTP and polished by us), in order to simplify changes of the PIco registers. As most of the people have had some difficulties to change any register, we made this script that is doing that job much easier. I was thinking it is very initiative i.e. instead of writing 

sudo i2cget 0x6b 0x07 to check the value,

and then set the new one i.e.

sudo i2cset 0x6b 0x07 0x49

You just run the script, select what register you need to change, see the current value, you are advised what value are allowed, write it and that's it, see again what has been changed

Hope you enjoy it.

Must say that without CHATGPT I would be needed couple of days to write it, now it has been done in 24 hours. New nice and very efficient era is coming for us.

My Best Regards

PiM (Pi Master)


   
ReplyQuote
Share: