Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GPS module Question #1

Open
aGGreSSiv opened this issue Oct 23, 2023 · 13 comments
Open

GPS module Question #1

aGGreSSiv opened this issue Oct 23, 2023 · 13 comments

Comments

@aGGreSSiv
Copy link

Hello,
Can I use ublox NEO-M6 or ublox NEO-M7? I probably will, but can I use it with the same library without changing the code?

@MuratovAS
Copy link
Owner

I think you can use any module from the Ublox family.
Their protocol is identical.

@aGGreSSiv
Copy link
Author

I'm having trouble finding m8. I will try with 7. Thank you for the quick reply.

@aGGreSSiv
Copy link
Author

Hello again, maybe you won't remember since it's been a while, but I still want to ask. I cannot try it because the FTDI adapter I purchased has not arrived yet.
I think it should have a static IP if it works fine.
I added the following lines for definition;

IPAddress myIP(192, 168, 1, 2);
IPAddress myGW(192, 168, 1, 1);
IPAddress mySN(255, 255, 255, 0);
IPAddress myDNS(8, 8, 8, 8);

Finally, cancel this line in the Setup section and;

ip = ETH.localIP().toString();

I replaced it with this line. Would it be a problem?

  ETH.config(myIP, myGW, mySN, myDNS);

When the Arudino IDE checks it, it does not find any errors, but since I do not have enough software knowledge to interpret the rest of the code, I have no idea if there might be something preventing it from working.

@MuratovAS
Copy link
Owner

This simply remembers the line, then it is displayed on the screen. She does not appoint IP.

ip = ETH.localIP().toString(); 
....
tft.println(ip);

you're right. Add the line with ETH.config after ETH.begin. This should work.

ETH.config(myIP, myGW, mySN, myDNS);

P.S. I really remember with difficulty )))

@aGGreSSiv
Copy link
Author

I can guess, it's been a long time.

But it's a very nice project. If there is no problem in its operation, I will use it at work. for time synchronization of cameras.

Thank you for your quick reply and support.

@aGGreSSiv
Copy link
Author

Of course, just like every Arduino/ESP32 project you want to do; Nothing goes as I imagined in this project either :)

At first I noticed that there was no SCLK pin on my display. I said no problem, if it doesn't work I'll use another screen.

I plugged in the Ethernet cable, the LEDs indicating the connection status were blinking. No matter what I did, I couldn't get it to work.

Then I found these sample codes. No matter which one I installed, they all worked. I looked into the source codes and the pin definitions are the same. I'm about to go crazy. Did you encounter anything like this while doing your project? Are specific library versions required?

@aGGreSSiv
Copy link
Author

Hımm
If I just make it like this,

#include <ETH.h>
#define ETH_ADDR 1
#define ETH_POWER_PIN 16              // -1             // ??? Do not use it, it can cause conflict during the software reset.
#define ETH_POWER_PIN_ALTERNATIVE 17  // 17    // ???
#define ETH_MDC_PIN 23
#define ETH_MDIO_PIN 18
#define ETH_TYPE ETH_PHY_LAN8720
//#define ETH_CLK_MODE    ETH_CLOCK_GPIO17_OUT // ETH_CLOCK_GPIO0_IN // ???

// Select the IP address according to your local network
IPAddress myIP(192, 168, 1, 9);
IPAddress myGW(192, 168, 1, 1);
IPAddress mySN(255, 255, 255, 0);
IPAddress myDNS(8, 8, 8, 8);



void setup() {
  // put your setup code here, to run once:
  pinMode(ETH_POWER_PIN_ALTERNATIVE, OUTPUT);
  digitalWrite(ETH_POWER_PIN_ALTERNATIVE, HIGH);
  ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN, ETH_MDIO_PIN, ETH_TYPE, ETH_CLK_MODE);  // Enable ETH
  ETH.config(myIP, myGW, mySN, myDNS);

  Serial.print("ETH IP:");
  Serial.println(ETH.localIP());
}

void loop() {
  // put your main code here, to run repeatedly:
}

there is no problem. So, something in the rest of the code is causing the connection to break and the ethernet part to turn off and on.

@aGGreSSiv
Copy link
Author

The source of the problem was the lines related to the screen. When I removed them I noticed that the ethernet link was working. I removed the library and added it again. Then I made the settings in the library as you added it to your project. It is working now. As for the GPS part, I tried it with 7 and it could not find any satellites. Now I'm trying with 8. I guess it should respond to me when I try it from my computer on the network, whether it finds a satellite or not? It is not responding at all right now. When I look at the open ports on the NTP server IP with a program installed on my computer, I do not see any open ports. This is the next problem :)

@MuratovAS
Copy link
Owner

I advice:

  • Connect ublox via USB to your computer. Use u-center. Check its functionality.
  • I don't think a port scanner is a good idea.

@aGGreSSiv
Copy link
Author

aGGreSSiv commented Oct 30, 2023

Yes, there is a program called u-center. :) When I checked, I saw that the boudrate was 9600. I changed it to 115200. But it didn't happen again. In the photo I shared, on the screen where we select the connection speed, I think we choose which format we want to output. I'm not sure what format your code can read. I tried 4-5 different combinations but it didn't work.

image

last setting i saved
image

@MuratovAS
Copy link
Owner

MuratovAS commented Oct 30, 2023

Have you enabled pps in ublox?
I remember that I changed the uart speed and turned on pps. I didn't change any other settings.

P.S. I agree, my oversight is that I didn't document the settings properly.

@aGGreSSiv
Copy link
Author

I assume that PPS is already on because when the GPS finds a satellite and starts flashing the LED on it, the PPS error warning on the screen disappears. I will continue to try protocol in/out. :). I also have a Raspberry Pi3, but achieving this with it will not give much pleasure.

PS: Yes, the documentation could have been better, but I worked hard to get to this stage and learned a lot. I think esp32 does not understand the information from gps. Everything I wrote here is for reference if anyone else wants to do it.

@impulseDiMaro
Copy link

Good day!
What should be the frequency and duration of the PPS pulse? By default, the pulse is enabled at a frequency of 1Hz

Доброе время суток!
Какой должна быть частота и длительность PPS импульса? По умолчанию импульс включен на частоте 1Гц

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants