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
explore has joined #rust-embedded
tokomak has joined #rust-embedded
cr1901_ has joined #rust-embedded
cr1901 has quit [Ping timeout: 252 seconds]
starblue has quit [Ping timeout: 240 seconds]
jackneilll has joined #rust-embedded
starblue has joined #rust-embedded
jackneillll has quit [Ping timeout: 250 seconds]
explore has quit [Quit: Connection closed for inactivity]
cr1901_ is now known as cr1901
limpkin has quit [*.net *.split]
jr-oss_ has quit [*.net *.split]
jr-oss_ has joined #rust-embedded
limpkin has joined #rust-embedded
emerent_ has joined #rust-embedded
emerent has quit [Killed (erbium.libera.chat (Nickname regained by services))]
emerent_ is now known as emerent
tokomak has quit [Read error: Connection reset by peer]
starblue has quit [Ping timeout: 252 seconds]
starblue has joined #rust-embedded
<re_irc> <dirbaio> thankfully my array is tiny so I can afford it
<re_irc> <9names (@9names:matrix.org)> i think the board should be similar enough to mkr wifi 1000 that you should be able to start from
<re_irc> <Ivan Gonzalez> I'm right there 9names, it looks good so far. Let's see if I can get Rust to compile ;P
cr1901_ has joined #rust-embedded
cr1901 has quit [Ping timeout: 240 seconds]
Foxyloxy_ has quit [Ping timeout: 252 seconds]
Foxyloxy has joined #rust-embedded
Amadiro_ has quit [Remote host closed the connection]
Amadiro has joined #rust-embedded
hwj has joined #rust-embedded
<re_irc> <Ivan Gonzalez> Alright so my investigation so far leads me to entirely DISCARD probe-run: ATSAMD21G18A (the cpu of the arduino mkr wifi 1010) does not come with J-Link or any kind of external debug interface connector (you can buy an external one as it has the ports there ready to be used). I am going to give it a try to OpenOCD now as suggested by you as well guys. Any recommendation at this point? :D
<re_irc> <Ivan Gonzalez> The Arduino IDE allows me very easily to flash the thing btw, I just want to actually do the project in Rust
<re_irc> <Ivan Gonzalez> Is there a way to develop in Rust and convert the program into something that the Arduino IDE can later on flash?
<re_irc> <ryan-summers> You won't be able to use Openocd or any probe-rs utilities for this. You have to follow the tool suggestions linked above because you're communicating directly with the Arduino bootloader.
<re_irc> <ryan-summers> The process arduino uses for programming devices is extremely different to how devices are typically programmed in the field, which is why the process is not "click and go" normally - tooling is a complex embedded topic
<re_irc> <ryan-summers> You can write your own scripts to automatically send the binaries built in Rust over to the arduino bootloader though using cargo runner scripts
<re_irc> <ryan-summers> E.g. write a script that converts the ELF -> binary, then calls the bossac utility to send the bin file to the arduino, but you'll still need to manually reset the board by pressing the center button (as outlined in https://github.com/atsamd-rs/atsamd/tree/master/boards/arduino_mkr1000#readme) to get it to work
<re_irc> <Ivan Gonzalez> Ohh I understand ryan-summers, thank you very much!
<re_irc> <Ivan Gonzalez> I'll give it a try that way
<re_irc> <ryan-summers> In reality, you should still be able to program by typing "cargo run" :)
<re_irc> <ryan-summers> Although in your case, you'll need to do some setup, and you'll still have to press the button on the board to reset it for it to work
<re_irc> <Ivan Gonzalez> that is fine actually, I just wanted to play around for the proof of concept but if we actually create a product from this, I'll take into account all the feedback and select micro controllers that give me easy of use... and mostly cheapers :D
<re_irc> <ryan-summers> For reference on cargo runner scripts: https://doc.rust-lang.org/cargo/reference/config.html#targettriplerunner
<re_irc> <Ivan Gonzalez> I'm struggling a bit with the bossac command. I've used the cargo objcopy to generate the bin file (cargo bin-utils https://github.com/rust-embedded/cargo-binutils)
<re_irc> <Ivan Gonzalez> 4. bossac -i -d -U true -i -e -w -v target/thumbv6m-none-eabi/blinky_basic.bin -R
<re_irc> <Ivan Gonzalez> Error:
<re_irc> Try 'bossac -h' or 'bossac --help' for more information
<re_irc> bossac: extra arguments found
<re_irc> <Ivan Gonzalez> bossac -i -d -U true -i -e -w -v target/thumbv6m-none-eabi/blinky_basic.bin -R
hwj has quit [Ping timeout: 240 seconds]
<re_irc> <Ivan Gonzalez> that's literally a copy/paste from the docs except for the name, any clue?
<re_irc> <ryan-summers> Did you read the help information from bossac?
<re_irc> <ryan-summers> Also, you very likely will get more help on https://matrix.to/#/#atsamd-rs_community:gitter.im, as linked above. I've never worked with Arduinos + Rust and honestly have no clue what bossac is
<re_irc> <Ivan Gonzalez> all good Ryan, thanks for the help!
hwj has joined #rust-embedded
hwj has quit [Ping timeout: 250 seconds]
hwj has joined #rust-embedded
hwj has quit [Client Quit]
<re_irc> <wcampbell> I'm having some problems with cortex-m-alloc giving me alloc errors and I don't really have any idea why? This is on the microbit-v2.
<re_irc> I added a print for free(), and it looks like I have plenty of memory left. Is there a hidden memory limit that I don't see?
<re_irc> 18:01:42.036 17632
<re_irc> 18:01:42.107 [!] alloc error
<re_irc> <Ivan Levitskiy> Any tiny library options for a SSD1306 display? Thinking about porting one of my projects that has a tiny STM32L0 in it
<re_irc> <GrantM11235> Have you tried this? https://crates.io/crates/ssd1306
<re_irc> <GrantM11235> The buffered graphics mode might not work so well for you because it requires a full frame buffer in memory
<re_irc> <Ivan Levitskiy> Didn't see that it had a bufferless mode. I need something between the terminal mode and basic mode. As I and drawing a progress bar on the first row just by filling a column and then writing text on the second row