-
Notifications
You must be signed in to change notification settings - Fork 19
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
ATHandler::cmd_start build error #304
Comments
Hello, maybe mbed-cellular has to be add to top lvl CMakeLists.txt Change from this
to this
|
@chrissnow Hello, are you using the latest Mbed CE? In ATHandler.cpp, line 1193 should be: rtos::ThisThread::sleep_until(_last_response_stop + _at_send_delay); But the code in your compiler output shows: rtos::ThisThread::sleep_until(_last_response_stop.time_since_epoch() + _at_send_delay); |
Yes, this is the latest commit. But maybe you have multiple copies of mbed-os and this is not the one you are using? |
I think I had meddled at the point I took the logs to try and get it working. |
back to normal and you get mbed-os/connectivity/cellular/source/framework/device/ATHandler.cpp:1193: undefined reference to `rtos::ThisThread::sleep_until(std::chrono::time_point<mbed::internal::OsClock, std::chrono::duration<long long, std::ratio<1ll, 1000ll> > >)' |
OK I can reproduce this on my end by using any cellular APIs in an application. To be honest, I do not believe anyone has tried to use these features of Mbed CE since the build system changeover. OK lemme take a look... |
Ah OK I see the issue. This ultimately comes from a rather odd decision by ARM (tho, maybe made worse by Mbed CE) to support building both baremetal Mbed and Mbed OS in the same configured project, rather than having users pick one or the other at configure time. This leads to weirdness: libraries like |
As a workaround, for now, try dropping the following into your CMakeLists.txt after add_subdirectory(mbed-os): target_link_libraries(mbed-cellular PUBLIC mbed-rtos-flags) That will cause mbed-cellular to be compiled against the RTOS, fixing the link error. This workaround, plus #307, allowed me to link an app with mbed-cellular! |
@multiplemonomials Apologies it's taken so long to test all of this, were close now! The project links fine now and AT commands are passing correctly however NSAPI_PPP_AVAILABLE is not true despite MBED_CONF_LWIP_PPP_ENABLED being true in mbed-target-config.h
This means PPP doesn't come up during connect in here. It's like mbed-target-config.h isnt being included for the cellular stack. |
Hmm, could you elaborate on how you know that PPP doesn't come up? If you put a #warning inside one of the
blocks, does it print during compilation? |
Fixed it :-) |
We are looking at porting an existing project that uses cellular over to mbed-ce but there seems to be a compile error and I cant figure out why given the types seem to match.
mbed-os/connectivity/cellular/source/framework/device/ATHandler.cpp
Line 1193 in 71cb812
The project was originally based on
https://github.com/ARMmbed/mbed-os-example-cellular
Anything that makes use of the ATHandler Class is likely to fail to build.
Likely unrelated but we are using a NUCLEO_WB55RG
The text was updated successfully, but these errors were encountered: