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

NEO-M9N Driver Implementation #3

Open
APBashara opened this issue Jun 27, 2024 · 9 comments
Open

NEO-M9N Driver Implementation #3

APBashara opened this issue Jun 27, 2024 · 9 comments
Assignees

Comments

@APBashara
Copy link
Member

APBashara commented Jun 27, 2024

Use the I2C driver to create functions for the NEO-M9N GPS Module

@APBashara APBashara self-assigned this Jun 27, 2024
@APBashara APBashara transferred this issue from CR-Formula/STM32-Examples Jun 27, 2024
@APBashara
Copy link
Member Author

Issue with I2C Driver on the Telem board
For some reason the start bit is getting sent but the bus reads as busy
I tried removing the pull up resistors as the GPS data sheet says the internal ones should be enough but that did not solve it

@APBashara
Copy link
Member Author

Need to step through and see where the BUSY flag gets set

@APBashara
Copy link
Member Author

Fixed I2C Driver issue; solution was to redo the GPIO configuration to better support I2C Functionality

@APBashara
Copy link
Member Author

Need to look into how to configure and read messages from M9N -- Use the ublox interface manual
https://content.u-blox.com/sites/default/files/u-blox-M9-SPG-4.04_InterfaceDescription_UBX-21022436.pdf

@APBashara
Copy link
Member Author

Able to send a CFG message and get an UBX-ACK back. Need to find a better way to read messages other than just parse a giant buffer

@APBashara
Copy link
Member Author

See Sparkfun library waitForResponse function

@APBashara
Copy link
Member Author

I think there is an issue with the I2C driver not sending start and stop conditions correctly in combination with some issues for ACK and NACK responses

@APBashara
Copy link
Member Author

Fixed the I2C driver and got the GPS to work
Need to improve the way that we are reading message responses still
UBX-NAV-PVT is the message that will be used for reading Lat, Long, and Speed

@APBashara
Copy link
Member Author

Need to also Delay the config message slightly in order to allow the GPS to boot fully
Will look at adding the config in the GPS Task, this also would prevent I2C comms from locking the whole system.
Will ultimately need to add timeout functions for the I2C while loops to reset comms

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

When branches are created from issues, their pull requests are automatically linked.

1 participant