Sleep Mode for BGS5 Module | Telit Cinterion IoT Developer Community
September 30, 2016 - 2:19pm, 2732 views
Hello,
I want to provide minimum power consumption for BGS5 module.
As far as I know, jvm code runs always in the module. For my module it is "JRC-1.50.3.jad".
I measured the current consumption of module when only jvm working in the module. That is, no user application. It is about 35 mA.
Is it possible to reduce current consumption < 5 mA. If yes, how?
How to get module into sleep mode and wake-up?
Best Regards,
Ergün.
Hello,
You probably have USB active. It is possible to reduce power consumption by bringing USB interface into Suspended or Detached state. You can read more in hardware interface description document which you can find here: https://iot-developer.thalesgroup.com/documentation/bgs5-technical-docum...
Please see especially the chapter Reducing Power Consumption and Power Supply Ratings. You will also find the table with possible power consumption ratings.
Best regards,
Bartłomiej
Hello Bartlomiej,
I have read some parts of hardware manual and at^spow command from atc manual. It is not clear for me how sleep mode works for BGS5. I have some questions below:
1. What is the function of VUSB_IN signal of USB pin? In document, it is written that "SLEEP mode is controlled by the VUSB_IN signal. Only if VUSB_IN is low, will the module switch to SLEEP mode. If the module is in SLEEP mode, a high VUSB_IN signal level will wake up the module again, and switch to active mode"
2. What is the function of AT^SPOW command? In document, it is written that "this command controls SLEEP mode on ASC0 and ASC1 interfaces".
3. Is the term sleep mode about only asc0,asc1 and usb? Will the cpu of module continue working normally? Or is there a way of getting cpu into a sleep, stand by mode? Will jvm continue working normally or it can get into sleep mode and wake up?
Best Regards,
Hello,
If the host supports the USB Suspend/Resume the VUSB_IN line is used to signal that the module should enter the suspend state on USB interface and to wake the connection up. If this is not supported by the host the USB interface ***** to be detached in order to save power. And then the RING0 line could be used to wakeup the module. This is only for USB interface, the CPU and Java will not get into sleep mode. There is no need to use any additional AT commands. If you are not using the USB interface you don't need to care about this.
The AT^SPOW command is only for power saving on UART interfaces.
In the table in HW description you should also find how the UART and USB interfaces influence the power consumption.
As long as the USB interface is active you will also not benefit from power saving on UART.
Regards,
Bartłomiej
Hello Bartlomiej,
Thanks for the answer.
As far as I understand, we can reduce the current consumption of module by 3 ways. My explanations are below. If there is a wrong or addition, I will be pleased get your comment.
1. By reducing the current of USB block.(by detaching or by suspending )
2. By reducing the current of UART blocks ASC0,ASC1.(Using at^spow when usb detached or suspended)
3. In case of an user application, by sleeping threads in Java app.
3rd one is my addition accoriding to Java user Guide.
Additionally, in Java user guide, section 5.2 Power Saving, it is written that in power saving mode by at^spow, not only serial interface but also GPIO pins access is limited. How to manage GPIO functions in sleep mode?
Best Regards,
Ergün.
Hello,
1. Correct. This is controlled by the USB host.
2. Correct.
3. The Java issues described in the user guide should not be influenced by USB. Indeed according to the document the polling period is affected when you listen on GPIO pins. So if you need to detect the short changes on GPIO lines you should not use the power saving on UART interfaces.
Regards,
Bartłomiej
Hello Bartlomiej,
Thank you very much for the support. For now, it is ok.
My collegue is working on the hardware design of module pcb now. After he finishes, we will measure the current consumption of module on our own pcb. I will compare the results with ratings in the hardware manual and write the measurement results.
Best Regards,