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

Add ubxlib as a Zephyr module #158

Merged
merged 22 commits into from
Nov 21, 2023
Merged

Add ubxlib as a Zephyr module #158

merged 22 commits into from
Nov 21, 2023

Conversation

Irockasingranite
Copy link
Contributor

Resolves #156.

This PR adds the u-blox library ubxlib, overriding the original build and configuration files with custom ones. This allows building it as a proper zephyr library.

Sources are pulled in via a submanifest, pointing at an auto-synced fork at tiacsys/ubxlib.

To demonstrate its use, a sample is included which allows controlling a u-blox GNSS module via basic shell commands.

Copy link

You can find the documentation preview for this PR at this link. It will be updated about 10 minutes after the documentation build succeeds.

Note: This comment is automatically posted by the Documentation Publishing GitHub Action.

rexut
rexut previously approved these changes Nov 20, 2023
Copy link
Member

@rexut rexut left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, many thx.

@rexut rexut added this to the v3.5.99 milestone Nov 20, 2023
rexut and others added 19 commits November 20, 2023 22:42
All QEMU targets doesn't yet support GPIO functions out of the
box, thus we have to disable related driver and shell setup.

Signed-off-by: Stephan Linz <[email protected]>
See bug issue #159. That have to revert as soon as possible.

Signed-off-by: Stephan Linz <[email protected]>
Provides a new sub-manifest to add the u-blox portable C API
library as 'modules/lib/ubxlib' inside the build workspace.

Signed-off-by: Stephan Linz <[email protected]>
* Create a Zephyr library instead of building directly into the application
  target
* "Flattens" the build process by no longer calling into ubxlib.cmake
* In rewriting, I trusted u-blox to get the distinction between UBXLIB_INC and
  UBXLIB_PRIVATE_INC right, even though in the original script both are simply
  thrown into zephyr_interface

Signed-off-by: Sarah Renkhoff <[email protected]>
Also change the default from enabled to disabled

Signed-off-by: Sarah Renkhoff <[email protected]>
Also add some more help messages into Kconfig.

Signed-off-by: Stephan Linz <[email protected]>
Signed-off-by: Sarah Renkhoff <[email protected]>
Signed-off-by: Stephan Linz <[email protected]>
Irockasingranite and others added 2 commits November 20, 2023 22:44
Signed-off-by: Sarah Renkhoff <[email protected]>
Signed-off-by: Stephan Linz <[email protected]>
- add the reset GPIO line to requirements
- show a full Devicetree sample for specific board
- give a hint for standard configuration on top of
  an Arduino UNO R3 edge connector (D0, D1, D2)
- add example console session
- test on more boards:

  ST Nucleo L496ZG
  ST Nucleo F413ZH
  ST Nucleo F767ZI
  NXP MIMXRT1060-EVK

Signed-off-by: Stephan Linz <[email protected]>
@Irockasingranite Irockasingranite merged commit 4ef1cad into main Nov 21, 2023
10 checks passed
@Irockasingranite Irockasingranite deleted the devel/ubxlib branch November 21, 2023 05:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FCR] Add the u-blox library (ubxlib) as Zephyr module
2 participants