FiPy + PyTrack & LiPo no GPS coordinates
- 
					
					
					
					
 Hello, I have doing some testing with the PyTrack + Fipy and have some problems : - 
When the board Pytrack start by USB, there are no probleme. I join LoRaWAN network and send data with correct positions. 
- 
When th board Pytrack start by LiPo battery (2500 mAh 3.7V ). My device join LoRaWAN network but not send data correctly because I have empty coordinate in LoRaWAN message. 
 I suspect the GPS, it dosen't work correctly when is connected by LiPo and return always "None" value.
 My code is similar to your exemple from github for the GPS. I can try with Lopy for test, but have you an idea while it's doesn't work with Fipy ? Thanks in advance. 
 
- 
- 
					
					
					
					
 @robert-hh Thanks for your reply, you have true. I searched components during the starting. And I comment this lines codes : #wlan = WLAN() #wlan.deinit() #bt = Bluetooth() #bt.deinit() #serveur_ftp = Server() #serveur_ftp.deinit()I don't test with each line only, but now it's working. I have fix coordinate when the Fipy powered by Lipo. 
 
- 
					
					
					
					
 @radec FiPy has some strong current peaks, so Vcc may drop to a brownout level, where some component start malfunctioning, like the GPS receiver or some parts of the ESP32, and other parts continue to work. 
 
- 
					
					
					
					
 @jcaron Yes, I checked, I wait normally 30-60 seconds to get a fix after starting. 
 But I don't understand why in same place with the same hardware (Fipy + Pytrack) and same code I get fix coordinate with powered by USB (on my laptop) and never when it is powered by Lipo.And with Lopy4 + Pytrack same place, same code : with Lipo or USB powered, it's work. (I will test again with an other method and code (write the data on SD) and check if I have coordinates with Fipy and Pytrack powered by Lipo. ) 
 
- 
					
					
					
					
 @radec the GPS chip may take a lot longer than 20 seconds to get a fix after starting up, depending on circumstances. You should check the output and wait until a position is actually available. 
 
- 
					
					
					
					
 @crumble Thank you for your reply. I do a pause about 20 sec before to get position from GPS (stratup Pytrack, Join LoRaWAN, ...). But I try with Lopy4 with Lipo and it's work ! I have GPS coordinate after 2 minutes. It's the same code for Fipy and Lopy . And for Fipy, but it's doesn't work only with Lipo. 
 When it's start by USB, it get positions.Edit: 
 After researchs, I found a old topic with the same problem @COMBAINDEFT @PYMIOM :
 https://forum.pycom.io/topic/2673/cannot-open-com-port-for-fipy-and-pytrack/14
 https://forum.pycom.io/topic/1914/pytrack-lora-lipo
 I confirm I have the last firmware available for Pytrack (pytrack_0.0.8.dfu) and FiPy.
 
- 
					
					
					
					
 I can try with Lopy for test, but have you an idea while it's doesn't work with Fipy ? LoPy will double your problems. LoPy has only a small amount of RAM and the example creates a lot of objects on the heap. So you have to deal with fragmentation. Check your startup code. My pytrack needs up to 5 sec to be ready. You may be too fast without debug prints. Check for multiple I2C usage. There must be a bug with multithreading. I get faulty data when using the GPS in a thread. Without filtering the bad data, your code may fail. @robert-hh mentioned to deinit other device before using the actual one. I tried too solve it with locks, but failed. @paul-thornton from pycom looks right now on my code. If you run into the same problem there will be a workaround in a few days ;) 
 
