<M9names[m]>
<ragarnoy[m]> "well, a lot of it is lack of..." <- i don't suppose you tried linking the clang built version of the library instead of the gcc one?
<M9names[m]>
M9names[m]: i'm assuming here that keil isn't using it's own libc with clang, which might be a mistake
<thejpster[m]>
(it's a big one because this is merging all the recent changes into main. You can ignore most of the commits as they were already reviewed - just check I updated Cargo.toml and the changelog correctly)
<thejpster[m]>
you might need a keepalive - stateful routers between you and the server (especially Network Address Translating routers) will forget the connection if they don't see an IP packet related to that TCP Stream for some period of time.
<thejpster[m]>
also I guess the server might time you out
<thejpster[m]>
which is one reason to prefer CoAP, because that runs over UDP.
<holo[m]>
so i should set it up on mqtt server or on router? BAsically my mqtt server is setup on router itself
<holo[m]>
becasue i have just x86 small pc as router
<thejpster[m]>
oh, both devices are on the same IP subnet?
<holo[m]>
yes
<thejpster[m]>
then not a router issue - probably a "server timing out clients" issue
<thejpster[m]>
because if they didn't do that, the number of open TCP connections would tend to infinity
<holo[m]>
so i should handle it somehow in code?
<holo[m]>
disconnect after each message recive and reconect again after some time?
blueluna[m] has joined #rust-embedded
<blueluna[m]>
I had a similar problem with rust-mqtt, i resorted to mqtt_client.send_ping(). But I also wondering if it might be better to establish connection for each transfer.
<blueluna[m]>
* I had a similar problem with rust-mqtt, i resorted to mqtt_client.send_ping(). But I also wondering if it might be better to establish a new connection for each transfer.
<holo[m]>
<blueluna[m]> "Have a look at keep_alive also..." <- ```How long can the MQTT Keep Alive interval be? The value for the keepalive parameter is an integer representing time in seconds. For example, keepalive=300 means that a client shall send a message, e.g., PUBLISH, to the MQTT broker every 300 seconds. After another 150 seconds, the broker closes the connection.``` its for publisher
dirbaio[m] has quit [Quit: Idle timeout reached: 172800s]
notgull has joined #rust-embedded
lulf[m] has quit [Quit: Idle timeout reached: 172800s]
<StephenD[m]>
I'm using RTIC on an rp2040. Is there a way I can use monotonics and also have the ability to delay? Right now both the Timer and the Rp2040Monotonic both want the pac.TIMER
<ithinuel[m]>
StephenD[m]: rp2040-hal implements RTIC’s monotonic on the Timer type.
<ithinuel[m]>
This type is `Clone` (and maybe even `Copy`).
<ithinuel[m]>
s/This type is `Clone` (and maybe even `Copy`)./This type is both `Clone` and `Copy`./
<ithinuel[m]>
* rp2040-hal implements RTIC’s monotonic on the Timer type. This type is both Clone and Copy.
<ithinuel[m]>
* rp2040-hal implements RTIC’s monotonic on the Timer type. This type is both Clone and Copy.
<StephenD[m]>
ithinuel[m]: Oh awesome. I didn't even think to check that
<ithinuel[m]>
ithinuel[m]: You only need to enable the `rtic-monotonic` feature.