SWD pikaohje
Sorry, this one is in finnish only.
17:47 <•rambo_> olikos meillä jossain joku step-by-step for-dummies ohje debuggerin käyttöön, mulla olis lainassa yksi discovery-lauta mutta en ole ikinä käyttäny sitä mihinkään (lainasinkin sen vaan sen takia että olis teoriassa debuggeri
17:48 <•rambo_> gdb:llä joskus jotain stack-traceja linux-ohjelmista kattonu mutta sekin lähinnä toimittaakseni ne eteenpäin varsinaiselle softan kehittäjälle
17:49 <•kulve> rambo_: onko sulla se f4 disco kytkettynä kiinni jo?
17:50 <•kulve> siis SWD-pinnit
17:53 <•kulve> ja onko ubuntu? Ja onko openocd ja joku toolchain asennettuna?
18:00 <•rambo_> on se ruuvitracker VM:mä...
18:01 <•rambo_> kunhan rupesin vasta pohdiskelemaan että vois olla ihan hyödyksi ton SD-kortti kaman selvittelyssä
18:01 <•rambo_> pitää kolvailla pinnitkin ensin
18:02 <•kulve> mulla on vähän kokemuksia VM:ien usbeista, mutta ilmeisesti se sulla toimii
18:02 <•kulve> sudo apt-get install openocd
18:02 <•kulve> ja joku gdb sulla varmaan jo siellä on
18:03 <•kulve> sitten yhdessä xtermissä: openocd -f "interface/stlink-v2.cfg" -f "target/stm32f4x_stlink.cfg"
18:04 <•rambo_> kyllä se USB Parallels:issa toimii ihan hyvin, joskus vaan saa hepulin jos irrottaa ja kytkee laitteita turhan tiuhaan tahtiin (Esim sen testipenkin relelillä)
18:04 <•kulve> onko udev-säännöt kunnossa, jotta ei tartte sudoa?
18:05 <•kulve> mulla on /etc/udev/rules.d/99-openocd.rules -failissa:
18:05 <•kulve> SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", SYSFS{idVendor}=="0483", MODE="0666"
18:05 <•kulve> no, näemmä mulla on myös 10-stlink2.rules -faili:
18:05 <•kulve> SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="3748", MODE="660", GROUP="plugdev"
18:06 <•kulve> toi 660 + plugdev on oikeampi lähestymistapa kuin toi 0666 mode
18:07 <•kulve> openocd:n jälkeen toiseen xtermiin: arm-none-eabi-gdb -ex "target remote localhost:3333" build/ruuvitracker.elf
18:08 <•kulve> aina, kun käynnistää gdb:n: monitor reset halt
18:08 <•kulve> ja kun haluaa käynnistää koodin suorituksen: cont
18:08 <•kulve> jos haluaa fläshätä tuon ruuvitracker.elf:in:
18:08 <•kulve> monitor reset halt
18:08 <•kulve> load
18:08 <•kulve> monitor reset halt
18:08 <•kulve> cont
ja VM:ssä ei ole noita scriptejä vakiona joten
https://github.com/JorgeAparicio/bareCortexM/tree/master/openocd <- ei riittänyt yksinään, asenna uudempi openocd jessiestä (voi olla myös hyvä idea päivittää dist-upgradella kaikki koska mm libc päivittyi...) jos teet dist-upgraden muista ajaa "apt-get install libgmp3c2" jotta ko kirjasto (jota ilman ei voi kääntää softaa) merkataan käsin asennetuksi ja autoremove ei heitä sitä mäkeen.
RevC2 pinout: https://www.dropbox.com/s/5rj16nbaidaswx7/rt_c2_pinout.pdf
SWD vs WFI: http://kirjoitusalusta.fi/ruuvitracker-swd-vs-wfi
Detaileja Nucleo vs Discovery: http://kirjoitusalusta.fi/ruuvitracker-ubuntu1404 (Nucleo vaatii openocd 0.8.0)