-
Notifications
You must be signed in to change notification settings - Fork 82
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
Assistance Requested for Configuring ubxlib for LEAN_R8 on Linux #210
Comments
Hi there, and thanks for posting. The problem you'll have is that we don't currently have a PPP-level integration into Linux with LENA-R8, only with ESP-IDF [plus Zephyr with some provisos] and with SARA-R5 or SARA-R422. That said, I can take a look at how difficult it would be to do a PPP-level integration with Linux; I know that on Windows it would involve signed drivers, which would be difficult, but with Linux we should be able to use |
Okay, thank you very much, I am looking forward to hearing from you soon. |
I have a question, could you tell me how can I run it using UART without PPP now, and when the new update is ready I can move to it? Thank you in advance |
Certainly: in the uDeviceCfg_t structure you pass to uDeviceOpen() you would set the To tell Linux the correct serial port to use with the module, if, say, you were using You can see how we configure this structure in the examples, e.g. this one which runs PPP from ESP-IDF; a Linux version might look similar. |
Hi again. I have pushed a preview branch that contains support for PPP on LENA-R8 and also support for PPP with Linux here: https://github.com/u-blox/ubxlib/tree/preview_ppp_linux_lena_r8_rmea Details about how to make it happen can be found in the Linux platform README.md and you will find example code here. A few things to note:
Please give it a try and let me know if it works for you. If you confirm that it works I will merge the support for PPP with Linux and, once I've sorted out what it is doing, the support for PPP with LENA-R8, into |
Okay, Thank you very much. I will test it and come back to you thank you very much. |
FYI, branch updated to handle the case where |
to be honest not yey, I moved to another task, and I have to check and test everything related to LTE the next week. Of course, I will check everything. |
NP: I shall delete the preview branch, please just work from a refresh of |
Great news, okay of course thank you very much |
Hello, I would like to thank you, I build it and I understand how I should choose the LEAN and the connection port and I have all the library as .o I need some support, how can in the end build the final application and connect all of this library, moreover, I want to make the library work on an ARM processor. Thank you in advance. this is my modification |
That's good news, well done!
That kind of depends what you want your application to do. The example shows how to bring up a network connection and the section in the README.md of the Linux platform folder shows how to set up
When you say "ARM processor", since you are talking of an |
Great, I want to run the application on ARM cortex A7 with Linux os. So the platform is Linux target_link_libraries(YOUR_APPLICATION_NAME ubxlib ${UBXLIB_REQUIRED_LINK_LIBS}) target_include_directories(YOUR_APPLICATION_NAME PUBLIC ${UBXLIB_INC} ${UBXLIB_PUBLIC_INC_PORT}) So I need to add these two lines for the cmakelist.txt to compile my application and link it with ubloxlib Is it right? |
Taking a step back for a moment, just to align on terminology in case of misunderstandings. Above you mention " Above you also say "I want to run the application on ARM cortex A7 with Linux OS": given that you mentioned cross-compiling and a So you will need something like GCC ARM, or whatever the suppliers of the "ARM cortex A7 with Linux OS" machine suggest, installed on your desktop machine, machine (a), and, after that, you would create a build environment that calls GCC-ARM (rather than the native GCC compiler for machine (a)) on the |
Thank you very much, |
OK: what is the problem? |
I think I discovered the problem there are problems with OpenSSL and libgpiod I will come back to you to tell you. A huge thanks for your helping |
I am embarrassed too much could you give me an example of how can I build the issam_LTE.c using gcc-arm I tried too much, but I still have a lot of problems. You mentioned this was tested by Raspberry how can I generate a file and test it on raspberry, should I build the system on raspberry pi. Moreover if just can you just help me on this point would be great, how can I build the issam-lte,c using gcc-arm, as you mentioned I am working with embedded Linux, especially stm32mp1 |
Cross-compiling is a complex thing to do: for an embedded MCU, where everything is usually compiled from If the target is a kind of Raspberry Pi that runs Linux then, 10 years ago, I might have suggested that compiling for the Pi on a Windows or Linux desktop was necessary, since the Pi's back then were not so powerful, but these days a Raspberry Pi 3, 4 or 5 should be perfectly fine for compiling the relatively small application you have in mind, so I would go for compiling everything natively on the Raspberry Pi, no cross-compiling required. Then you can just fetch the OpenSSL and GPIO libraries on that Raspberry Pi (I think the Pi already has these installed but if not |
Dear, thank you for all your support and great results, the software is working very well. After creating a ppp connection and connecting with APN, the software started to enter into a loop and repeat the last 5 commands more and more. Do you know what is it the problem? root@stm32mp1-hexabitzv2-mx:~/LTE_1/ubxlib/port/platform/linux/mcu/posix/runner/issam/build# ./issam_LTE OK OK OK OK OK 02.00,A01.22 OK OK OK OK OK +UGPRF:2,0,"" OK OK +CREG: 0,"0000","0000",0 OK OK OK 234502106062261 OK 234502106062261 OK OK OK OK +COPS: 0 OK OK +CREG: 0,"0000","0000",0 OK +CGREG: 2,0,"0000","0000" OK +CEREG: 4,0,"0000","00000000", 0,0,0,"00000000","00000000" OK +CREG: 0,"0000","0000",0 OK +CGREG: 2,0,"0000","0000" |
This is normal: the cellular module is trying to connect to the cellular network, which may take some time (at least seconds and, on the first attempt in a location where the cellular module has not connected before, potentially minutes). |
Great! After 242 seconds, I have this message Thank you very much, OK +CREG: 0,"1903","5f66",0 OK +CEER:No Error Call OK OK +CREG: 0,"0000","0000",0 |
Can you post a bit more of the log, maybe include the whole log as an attachment? "Deny" means that some form of service has been denied by the cellular network but the exact form of that service is not clear as the EDIT: what SIM card are you using and have you been given an APN you must provide when using that SIM card (if so are you using that APN)?
|
Okay, I will attach the log file. if can you take a look and tell me, what do you think the problem? I will be thankful for your help. You can find the file as an attachment. +CREG: 0,"0000","0000",0 OK OK OK 234502106062261 OK 234502106062261 OK OK OK OK |
Thanks: relatively quickly (about 1/3rd of the way into your log) the network is returning "denied" for both circuit-switched and packet-switched service:
So either (a) your SIM card is not valid or (b) you are not using the correct APN for your SIM card. What SIM card are you using and were you given an APN to use with that SIM card? |
Ah, yes, set the APN to "TM" and try again. |
Yeah I recognize the problem I will search how to modify the APN in the code Thank you I will modify it |
Obviously you will need to debug this to find out what would cause U_ERROR_COMMON_PLATFORM. |
I moved to implement this example it works, but it looks like uses the same port for LTE, in I brought up the LTE, and then I tried to move to GNSS, Everything was good however, there is an error +CME ERROR: Operation not supported +CME ERROR: Operation not supported I don't know if it is the right way to start, could you recommend an example to start developing it to make LENA work? |
I feel I am stuck, if you can help me I will be thankful |
without UART, use the same port I received message is not support, if you can guide me how can I make it run using UART I mean another port, I will be thankful |
You can take that approach if you wish, but remember that it will not support "streamed" position from the GNSS device (i.e. none of the The reason you are getting "+CME ERROR: Operation not supported" is likely because of the GNSS system selection number used at the end of the |
Now, it is working, without this error unsupporting, however, still have a problen. |
Ah, yes, I forget LENA-R8 does support CMUX, so the |
And if I want to have streaming, what should I do where should I move? Because this will work on trucks so, I think the streaming will be important. Maybe latter, I will think about streaming but now for this what do you think the problem. |
If you want streamed GNSS position then, as indicated above, you will need to debug why you were getting U_ERROR_COMMON_PLATFORM when you tried to call |
okay I will check latter, for the streaming. Regarding this U_NETWORK_GNSS_CFG_CELL_USE_AT_ONLY , I didn't understand it. |
Could you tell me what should I do for this "U_NETWORK_GNSS_CFG_CELL_USE_AT_ONLY" |
I mean that you should do a clean build with the conditional compilation flag |
Ah okay, got it. I will do it. |
I have an error :) |
"linker input file not found: No such file or directory" is not an error I have ever seen or heard of I'm afraid. I would guess that you are not specifying the conditional compilation flag to your toolchain correctly...? |
it is like this |
|
I think I fix it |
it is the same U_CELL: initialising with enable power pin not connected, PWR_ON pin not connected and VInt pin not connected. OK OK OK OK OK 02.00,A01.22 OK OK OK OK OK +UGPRF:2,0,"" OK OK OK OK OK |
Are you sure that was a clean build? |
Yeah I removed the directory and mkdir new one, then I export then cmake, the make. I will try again |
You can see the code here: ubxlib/common/network/src/u_network_private_gnss.c Lines 214 to 262 in a2d986e
If |
I made like to told me so it doesn't define the Flag this how I export Are there any problem |
I think you are missing a |
God! sorry for this stupid mistake. Okay, it looks like is going on the right way, I still have a problem 'U_NETWORK_GNSS_CFG_CELL_USE_AT_ONLY is define OK OK OK OK OK 02.00,A01.22 OK OK OK OK OK +UGPRF:2,0,"" OK OK |
OK, so now you need to get into the flow of debug. Do you have a debugger in your setup or are you just planning to use debug prints? If the former then you can put a break-point here:
...and from there step down into Basically, get yourself set up for debugging and "do that thang", so to speak, as you would for any development. |
Okay Okay, I think it will be better to make a real debug, I will use gdb, and then I will let you know. |
Hello, I had some Hw problem I have solved, currently I am able to receive NMEA message from the GNSS, the boudrate is 38400, however, I am trying to run one of your example, I am facing some problem, could you advice me which example and how can I use your framwork to receive and control with the GNSS, thank you very much. It is connected on /dev/ttySTM2, however, I always, have a problem with framwork could you help me. |
issam_LTE.txt |
Hi there: it is a bit difficult to know how to help without knowing what the problem is. Looking at the code you have attached, the field
|
Hello,
I hope this message finds you well.
I am reaching out to seek your guidance on configuring the ubxlib library for use with the LEAN_R8 device on a Linux operating system. I have successfully cloned the repository and identified the specific components I need within the UBXLIB_FEATURES section of the linux.cmake file.
Following this, I executed the cmake command to configure the build environment and subsequently ran the test program, which performed as expected. However, my primary objective is to ensure that the compiled library is fully compatible with the LEAN_R8 device, which connects via USB and communicates using the Point-to-Point Protocol (PPP).
Could you please advise on the steps necessary to instruct the cmake build system to target the LEAN_R8 device specifically? My aim is to ensure seamless communication over USB with PPP protocol support.
and if there are any examples of this.
I appreciate your time and look forward to your expert advice.
The text was updated successfully, but these errors were encountered: