ChanServ changed the topic of #rust-embedded to: Welcome to the Rust Embedded IRC channel! Bridged to #rust-embedded:matrix.org and logged at https://libera.irclog.whitequark.org/rust-embedded, code of conduct at https://www.rust-lang.org/conduct.html
gordea has quit [Quit: gordea]
causal has joined #rust-embedded
dc740 has joined #rust-embedded
starblue has quit [Ping timeout: 265 seconds]
starblue has joined #rust-embedded
dc740 has quit [Remote host closed the connection]
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #rust-embedded
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #rust-embedded
crabbedhaloablut has quit [Ping timeout: 255 seconds]
crabbedhaloablut has joined #rust-embedded
starblue has quit [Ping timeout: 268 seconds]
starblue has joined #rust-embedded
IlPalazzo-ojiisa has joined #rust-embedded
<re_irc> < (@chrysn:matrix.org)> nRF users, how do you usually set your UICR values, especially when using a debugger (eg. nrf52dk's build in one) that regularly requires you to "nrf-recover"?
<re_irc> < (@chrysn:matrix.org)> I currently have a hand-crafted .hex file that I let srec_cat wiggle into the release file, and manually set the UICR values in software at startup (where a nicer way might be to take the same hex file and flash it the same way I flash the softdevice before flashing the actual software), but that's all not really pretty, but I'd probably re-invent the wheel if I tried to be smart.
<re_irc> <Stephen D> I'm having a great deal of trouble getting my ADC to start conversion when a timer fires. My ADC is set up with "external_trigger(TriggerMode::RisingEdge, ExternalTrigger::Tim_1_cc_1)" but I'm not sure how to configure the timer to fire that. I also tried "ExternalTrigger::Tim_2_trgo" (with tim2 configured normally, the way I would if I wanted to trigger a TIM2 interrupt) but it also didn't trigger the ADC
explore has joined #rust-embedded
<explore> hi
<explore> is there something spirtually akin to "ruby on rails"/"convention over configuration" helping to save web dev's time---but for robotics or embedded systems?
<explore> it doesn't have to be Rust, any popular embedded/real-time/robotics I don't know...
<explore> like convention-over-configuration for the most common type of robotics programming?
<re_irc> < (@k900:0upti.me)> What's the "most common type of robotics programming"?
<explore> I heard an attempt was made at such a thing, using Elixir/Erlang
<explore> there was an old presentation, 5 years ago, https://www.youtube.com/watch?v=zBzKoV2iFdQ
<re_irc> < (@k900:0upti.me)> But what does "most common type of robotics programming" even mean
<re_irc> < (@epbuennig:matrix.org)> a framework that works out of the box?
<re_irc> < (@k900:0upti.me)> Like, a framework for _what_
<re_irc> < (@epbuennig:matrix.org)> since they mention ruby on rails
<re_irc> < (@epbuennig:matrix.org)> and convention over config
<re_irc> < (@k900:0upti.me)> "Robotics" is way more vague than backend web dev
<re_irc> < (@k900:0upti.me)> And Rails is not exactly a good fit for _every_ backend application either
<re_irc> <John Richard > This is the best time to get involved especially if you’re new to crypto. But don't just join and start purchasing cheap cryptocurrencies at random. Go in for serious crypto education instead so that you’ll be well equipped before the next bull run. If you want to make money without learning something that’s gambling (no pain - no gain).
<re_irc> Join my community to get the lessons
<re_irc> I will be giving out free lessons on introduction of the financial market.
<re_irc> https://matrix.to/#/#wealth_sensei:matrix.org
<re_irc> <Stephen D> explore: Rust has RTIC which is a framework. Not sure if it's a framework that will fit whatever usecase you have in mind
<re_irc> < (@epbuennig:matrix.org)> John Richard : fuck off
<re_irc> < (@k900:0upti.me)> That's a spambot
<re_irc> < (@k900:0upti.me)> Don't bother engaing
<re_irc> < (@k900:0upti.me)> * engaging
<re_irc> <Dlaw> : I am new to Rust (lurking in this channel as I work through the embedded Rust learning curve) but have some background in robotics. I don't totally understand what you are asking for but https://www.ros.org/ is standard in many parts of the industry as a "general framework" for running big complicated robots.
crabbedhaloablut has quit [Remote host closed the connection]
<re_irc> <Dlaw> It's not really equivalent to embedded Rust though. It's more like a glue that would tie together a bunch of different embedded systems.
<re_irc> < (@epbuennig:matrix.org)> Oh I wasn't asking, you probably meant explore
crabbedhaloablut has joined #rust-embedded
<explore> Stephen: thank you, i will check it out
<re_irc> <Dlaw> whoops, yes
<explore> Dlaw: thanks will check it out too
<re_irc> < (@k900:0upti.me)> explore: you should really explain what you're actually looking to _do_
<explore> what the hell is your problem k900?
<re_irc> < (@k900:0upti.me)> Uhh, none?
<explore> just leave it already
<re_irc> < (@k900:0upti.me)> Just trying to help
<re_irc> <Dlaw> explore: to be fair, I work in robotics and I also don't really understand what type of system you are asking about. The analogy with ruby on rails is confusing to me.
<re_irc> < (@k900:0upti.me)> If you just want something that has the word "framework" in the name, maybe look into https://embassy.dev/ too
<re_irc> < (@k900:0upti.me)> But there's way too many things you could be looking to do here, and no "framework" will be a one-size-fits-all solution
<re_irc> < (@k900:0upti.me)> Which is why I'm asking the initial question
<re_irc> < (@k900:0upti.me)> "Robotics" is a much bigger problem space than "CRUD web apps", so if you can narrow down your requirements, it will be easier to recommend something that fits them
<re_irc> <Stephen D> explore: You are providing minimal explanation of what you want to do and making it our job to force that information out of you. Nobody here is paid, they're all volunteers
<re_irc> < (@jamesmunns:beeper.com)> Reminder: please don't interact with spammers, just report it or ping one of the admin/mods
<explore> i shared a 45 minute talk intended for luddites that explains everything, scroll up for youtube link
<re_irc> < (@jamesmunns:beeper.com)> Also - reminder to please be kind/respectful to each other
<explore> must i regurgitate the talk in my own words?
<re_irc> < (@k900:0upti.me)> Oh cool, so we're also luddites now
<explore> no, i am the luddite
<explore> you are the toxic whatever
<re_irc> < (@k900:0upti.me)> Also, I'm sorry if this comes off as harsh, but no one here is watching a 45 minute talk to figure out what you're asking about
<re_irc> < (@k900:0upti.me)> OK, I'm done here
* re_irc (@k900:0upti.me) goes back to the swamp
<re_irc> < (@jamesmunns:beeper.com)> Hey and explore, please cool it for a bit.
<re_irc> < (@jamesmunns:beeper.com)> explore - you're more likely to get good answers if you explain what you are looking for - not everyone can/will want to watch a video, so any text summary you can provide will help.
<explore> i asked an innocent enough question, and someone made it overly dramatic and egotistical and i can't put out the fire
<explore> and i am not paid to be a fire fighter, so i'll go away and read up
<explore> action over drama
<re_irc> <Stephen D> explore: Are you expecting people here to spend 45 minutes watching a video just so they can provide you with free help?
explore has left #rust-embedded [#rust-embedded]
<re_irc> <Stephen D> @irc_libera_explore:psion.agg.io: They were being perfectly respectful
<re_irc> < (@k900:0upti.me)> ¯\_(ツ)_/¯
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #rust-embedded
<re_irc> < (@jamesmunns:beeper.com)> I agree - I don't think 's requests for more information were disrepectful, and without watching the video, I'm also not sure what you are asking for, other than Dlaw's suggestion to look into ROS/ROS2
<re_irc> < (@k900:0upti.me)> They're gone btw
<re_irc> < (@jamesmunns:beeper.com)> Fair.
<re_irc> < (@jamesmunns:beeper.com)> In general y'all (I'm sure I'm preaching to the choir here): please assume good intent from others, and feel free to remind people to follow that policy.
bjc has quit [Ping timeout: 248 seconds]
<re_irc> <Dlaw> Since k900 mentioned embassy... anyone have any thoughts to share on embassy vs RTIC? I just finished my first "feet wet" project with RTIC (a little RFID reader, about 200 lines of code), and now need to decide whether to stick with RTIC or try something else for a STM32 motor control project. I expect a lot of of low level interaction with timer peripherals in unusual PWM and encoder modes which may not be supported by...
<re_irc> ... the HALs.
<re_irc> < (@jamesmunns:beeper.com)> I wrote a thing up on this a while back: https://cohost.org/jamesmunns/post/67555-should-i-use-embassy
<re_irc> <Dlaw> Oh, my, thank you! I did search around for "embassy vs RTIC" but somehow never found this writeup which exactly answers my question.
<re_irc> < (@jamesmunns:beeper.com)> I don't think cohost is well indexed by google (and/or DDG) yet :/
crabbedhaloablut has quit [Ping timeout: 255 seconds]
crabbedhaloablut has joined #rust-embedded
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #rust-embedded
explore has joined #rust-embedded
bjc has joined #rust-embedded
<re_irc> < (@lulf_:matrix.org)> You can also mix embassy and RTIC, using embassy HALs (it has both blocking and async implementations) with RTIC for instance (which also I think can do async tasks now).
<explore> howzit going?
<re_irc> < (@jamesmunns:beeper.com)> if you left and returned explore, you might want to look at the logs, specifically about chat expectations here: https://libera.irclog.whitequark.org/rust-embedded/2022-11-28#1669641918-1669645871;
<explore> none of the people i talked to here "here" so you are talking about chat expectations elsewhere
<re_irc> < (@jamesmunns:beeper.com)> No? I'm talking about the expectations in this room, specifically: assuming that people are here with good intent.
<explore> so would you like me to write some lore about libera so you guys can learn how not to be super toxic and put words in other people's mouth and then turn around and time out that very very bewildered person?
<explore> no, you are in some other network, you are not here
<re_irc> <Stephen D> explore: You are being toxic, no offense
<explore> there's an irc bot that relays
<re_irc> < (@jamesmunns:beeper.com)> We are on matrix, which is bridged to libera (as a courtesy), with matrix as the authoritative chat.
<explore> right, a superior network with superior minds letting us mere mortals listen in?
<re_irc> < (@jamesmunns:beeper.com)> I've banned the user.
<re_irc> < (@jamesmunns:beeper.com)> CC , does heisenbridge handle IRC bans correctly?
<re_irc> < (@jamesmunns:beeper.com)> Also, as a general reminder (which is in the header of both the matrix and libera matrix chat), these rooms work under the Rust code of conduct: https://www.rust-lang.org/policies/code-of-conduct, if you have moderation questions, please feel free to mention or DM any of the admins/mods here, or if you feel that we aren't doing a reasonable job, feel free to reach out to the Rust Moderation team:...
<re_irc> < (@adamgreig:matrix.org)> Heisenbridge won't automatically reflect a matrix ban onto irc as it doesn't have ops on the irc side, but the ban does apply on the matrix side (naturally)
<re_irc> < (@jamesmunns:beeper.com)> Thanks!
<re_irc> <balint133> Hi all, I'm considering porting an embedded C++ application to Rust but I've hit a small barrier. The application currently supports over 100 different boards with the same MCU/architecture but with different pin layout and peripherals attached. For this, I have a good chunk of code that's doing runtime configuration based on configuration files. I have a very hard time figuring out how to do something similar with...
<re_irc> ... embedded Rust. Do I have to write my own HAL or is there a way to do runtime configuration with the existing HAL libraries or maybe do something clever with Cargo?
<re_irc> <rjmp> balint133: perhaps if you share more specifically whats giving you a hard time people can help more directly. In general, I think heavy typestate use makes what your trying to do hard, e.g. many hal peripherals include the configured pins in their type, which is now part of allocating storage for peripheral.
<re_irc> Ive seen this HAL, which might be a bit more friendly to your situation (https://github.com/David-OConnor/stm32-hal)
<re_irc> <rjmp> It has GPIOs with mem state (i.e. fields in mem with peripheral and pin number) which makes run time config of gpios easy
<re_irc> <balint133> Thanks, I'll check this out. You're correct what'
<re_irc> <balint133> * what's giving me the most trouble is the heavy reliance of typestates. Makes runtime config difficult or outright impossible
<re_irc> <rjmp> One possible approach could be to do a one time heap allocation if your "system", and the your main application would acces everything via traits.
<re_irc> <rjmp> * of
<re_irc> <Stephen D> Sorry for the bump, I think this got overshadowed by the other guy who got banned
oak- has left #rust-embedded [#rust-embedded]
Foxyloxy has quit [Quit: Textual IRC Client: www.textualapp.com]
Foxyloxy has joined #rust-embedded
causal has quit [Quit: WeeChat 3.7.1]
<re_irc> <brxken128> is "embedded-text" completely broken? this is supposed to say "1Player" but does not
<re_irc> <brxken128> lemme put relevant code into a gist
<re_irc> <brxken128> https://gist.github.com/brxken128/134683b2488f03803dc883c60891eec3 the "st7789_pico1" has internal offsets to make the display size correctly and allow for everything to show, but text will _not_ show past a certain point, even if i make the text box absurdly large
<re_irc> <brxken128> i've tried messing around with the start point, size, etc. the bounds of the text box display to the full correct size (when the rectangle is drawn with a red stroke), just the text refuses to show correctly
<re_irc> <brxken128> +height modes, alignments,
<re_irc> <brxken128> https://gist.github.com/brxken128/134683b2488f03803dc883c60891eec3 the "st7789_pico1" has internal offsets to make the display size correctly and allow for everything to show, but text will _not_ show past a certain point, even if i make the text box absurdly large
<re_irc> (this is with "mipidsi", "embedded-text" and an esp32-s3)
emerent has quit [Ping timeout: 252 seconds]
emerent has joined #rust-embedded
cr1901 has joined #rust-embedded
cr1901 has quit [Remote host closed the connection]
cr1901 has joined #rust-embedded
neceve has quit [Quit: ZNC - https://znc.in]
neceve has joined #rust-embedded
<re_irc> < (@9names:matrix.org)> it can be a bit misleading, lines can draw out of bounds but filled primitives will not. try drawing a filled rectangle and see if it gets cut off as well.
<re_irc> it's most likely that the bounds/offsets in st7789_pico1 are not correct for your screen.
neceve has quit [Quit: ZNC - https://znc.in]
neceve has joined #rust-embedded
neceve has quit [Quit: ZNC - https://znc.in]
crabbedhaloablut has quit [Quit: No Ping reply in 180 seconds.]
<re_irc> < (@9names:matrix.org)> Stephen D: not just that. you haven't provided any context - i don't know which mcu you're targeting so I don't know if i _can_ help you.
<re_irc> eventually someone is going to ask these sort of questions and help you out, but it's more efficient if you can provide as much info as you have to begin with so we know where to start.
<re_irc> <brxken128> : the filled rectangle fills the screen correctly, which is what's puzzling me so much
<re_irc> <brxken128> i'll take a photo and show you
neceve has joined #rust-embedded
crabbedhaloablut has joined #rust-embedded
<re_irc> <Stephen D> : You're right, my bad. I'm targetting an stm32f411. My code is here: https://gitlab.scd31.com/stephen/stm32-pager
<re_irc> <brxken128> terrible photo, i apologise, but that is with the exact same "bounds" rectangle
<re_irc> <brxken128> just with a red fill colour
<re_irc> <brxken128> but the text just cuts off, as if it's using the "st7789" display model in "mipidsi" with no offset
crabbedhaloablut has quit [Remote host closed the connection]
<re_irc> <brxken128> (it's probably not, although that's the closest comparison i have for it)
<re_irc> <brxken128> +also the first picture was one of my attempts with a super wide text box, which is why it's not perfectly centered
<re_irc> <brxken128> +it's the adafruit esp32-s3 tft feather, the SKU for the display is " ADA4383" if that helps (240x135, st7789, seems to have an offset pretty identical to the pico1 mipidsi model from my testing with a filled box and contrasting outline)
crabbedhaloablut has joined #rust-embedded
<re_irc> < (@9names:matrix.org)> brxken128: i don't have a project using a recent mipidsi to test your code with rp2040 to verify quickly, will test it out later.
<re_irc> as you say, the screen should have the same offsets so it's weird that it's not working. might be worth creating an issue on mipidsi github to keep track of this.
<re_irc> <brxken128> : i think that'll have to be the plan, i'll go ahead and make one. it could just be user error, but i've tried pretty much everything i can at this point haha
<re_irc> < (@9names:matrix.org)> just so we're clear: in real life that rectangle is filled red yeah? it's just the photo that looks white?
<re_irc> <brxken128> oh yes i apologise, it's fully red
neceve has quit [Quit: ZNC - https://znc.in]
neceve has joined #rust-embedded
<re_irc> < (@9names:matrix.org)> Stephen D: i think you're using the timer in a counter mode in the code you linked, which is not using capture-compare, so that trigger would never fire. you might be able to get this interrupt to trigger if you set the timer in PWM mode since that would use CC. it's also possible you'll need to configure the timer peripheral manually by setting registers using the PAC based on the C SDK examples.
<re_irc> < (@9names:matrix.org)> the programmers manual for the chip should also outline how to do this
neceve has quit [Quit: ZNC - https://znc.in]
<re_irc> <Stephen D> : Thanks. I did try PWM mode but it didn't work either. I'm going to try setting up CC manually
neceve has joined #rust-embedded
<re_irc> <Stephen D> And who knows, maybe I'll even open a PR to add some logic around configuring CC without messing with registers
Foxyloxy has quit [Remote host closed the connection]
Foxyloxy has joined #rust-embedded
Darius has quit [Ping timeout: 246 seconds]