20230413 ROS Lawn Tractor Meeting

20230413 ROS Lawn Tractor Meeting

This video:

STM32F411CEU6 core board V3.0
Freq. 100MHZ ROM:512KB RAM:128KB

00:00 Terry: Goes over progress learning TurtleSim and writing code to drive it.
04:50 Al: Shows his wheel odom and GPS odom test results.
09:40 Al: Talks about his Pure Pursuit experiments on a simulator.
13:20 Al: Issues with git.
14:20 Al: What’s next.
14:40 Jeff: Talks about his project powering multiple Adruino-type boards.
21:00 Jeff: Says his snow is gone so he could start playing with his lawn tractor again.
22:35 Jeff: Mentions the variations of cmd_vel, modified cmd_vel, ackermann_cmd_stamped, and ackermann_cmd.
36:15 Al: Shows his USB hub.
38:25 Al: Talks about his new Black Pill F411 boards. (For rest of meeting)


Lawn Tractor Automation YouTube page:

Index for Lawn Tractor Automation group:

Index for the original ROS Agriculture group (~250 videos):
http://sampson-jeff.com/RosAgriculture/ros-agriculture-youtube20230104.txt (or newest file)

Got it okay Um had lots of distractions this week But I was able to get uh Turtle Sim Running And using the teleop Um now I've written a program that Should be I've written a program that Will Get it to run in a circle So it's sending out the twist message Um Now I'm trying to get it to read the the Position the pause message but X and Y don't seem to be changing in my Uh Callback routine So And unfortunately I don't have VNC set up nor do I have zoom set up on That machine yet so I can't show my code But that's where I'm kind of at right Now my goal is to be able to Write a program where I can run it any By either teleop Or be able to press a button that will Then put it into auto mode where it'll Just go whatever Direction it's Currently going At what I'm calling high speed Until it gets into what I call the Safety zone which is the last 10 percent Before the Border At which point it will randomly Turn directions and hopefully go out of

The safety zone I figure that gives me an opportunity to Do both a subscriber and a publisher And it's something that'll be fun And that's kind of where I'm at at this Point Since I'm going to be gone most of Next week and I've got uh a fourth Interview with a company On Tuesday and I guess the fifth interview already Scheduled for Wednesday Maybe uh I'll be employed by the next Time we meet But it's a job that at least for the First few months will involve 50 travel So we'll see how that goes Congratulations on your interviews it Sounds like you're down to the uh Closing it off so well the the Director thought He was ready to hire me but found out Then because my salary was at a certain Level it took a VP to Sign off on it and he said we want you To talk to some more people Including him so I'm talking to him and To manager no two Bas on Tuesday morning And then two managers Wednesday morning Cool congratulations Their uh their main plant is up in War Road Minnesota which is like 30 min 30 Miles from the Canadian border But it uh luckily they they have what

They call the shuttle that flies from Minneapolis to to War Road on a Semi-regular basis Because otherwise I would not want to Have to drive that seven hours Well and you you avoid more than likely You avoid a lot of the Airport Goofiness too I mean I'm hoping so yeah I know when I flew once when I was at 3M I was on their corporate jet down to Nevada Missouri and you just drove into The hangar I I where I should say the the taxi Dropped me off at the the hangar And uh I just walked in and right onto The plane yeah how sweet is that Unfortunately I was only able to fly on It one way because I was coming back Later So I had to fly commercial out of uh Kansas City But anyway that's not related to robots Foreign So who wants to go next I guess I'll go Um A couple things to share I've been working on an Odom publishing Script and I've got it to a point where Um I think it's at least usable and I Did a run in the yard with it and I was Gonna let's see get back to that and

Show you what that Um Looks like Um I'm Starting a Ross back file well I started A launch file that what you're going to See and you For some reason well I don't know how to Get the image The robot description to show up but You're gonna see the The odometer show up and so it's going To go around here and then up here and Down around here and back in To the garage What's worth noting is about right here I just pulled out of the garage And so rtk GPS fix uh Is not Live until about right here and so There's some as it goes From rtk fix into the wheel odometry I Think that amount of distance was enough To get some offset Going on Our TK fix drops a couple of times I'll Show you a little bit more data here in A second But And I don't know why this is a Herky Jerky I I'm assuming it has to do with the CPU On my laptop on the tractor that's

This is all running on the laptop that's On the tractor at the moment Um So it comes on around here and then I Back And all of this is manually driven right So I'm I've got the radio control in my Hand Walking behind it at about One meter a second uh And when I come up Here close to the house You'll see that's another point where I I think they call it deflection in the GPS World Um I lose rtk fix and it picks it back Up and then it's gonna Go back up in there Uh let's see And it stops on this black line which Suggests to me I still have some Adjustment to do on The GPS coordinates for this point which Is meant to be zero zero I adjusted it once so I still think there's a little bit of Adjustment I need to do on that GPS Setting But Um This is a plot juggler View Of rtk fix status and here you know I Don't have any Rtk and up here I do have

Rtk and these points this point is where It moves you know it initially gets rtk And that's where the big jump was and so For close to 40 seconds You know I was on Wheel Odometry And then it drops those whatever it is Half a dozen times uh But on this Which is a plot of X and Y coordinates You don't see any big shifts if I zoomed In Here a little bit Uh right in here if you zoom in really Tight I can't do it with this image Um you know you get a little bit of it Here There are some you know jerkiness To it even you know trying to combine The two this was the worst and that was When I had been on as I said we're solely Wheel odometry and then jumped over to Um Rtk fix so all in all I'm still I think More testing to do and probably some Improvements But it's At least worth them Getting out and doing some testing Uh the other thing Uh trying to back in February Jeff had Gotten pure Pursuit To work and um I've been focused on my

Odom stuff and Now that I've got that to a point I Thought I would go back and try to catch Up where what Jeff had done with pure Pursuit and so I got Pure Pursuit Uh running with gazebo I've got a Ross Bag For that as well to show a little bit of What that looks like let me just change This file name And by the way I maybe you guys already Knew it I just found this little Key Board command to uncomment and comment Stuff you can control Slash and it makes it Easier to do that Um I want to start that about 40 seconds in Because it's just sitting there for A few seconds uh I better got to stop That So this is a Ross Bag Of Creating a plot it's going to come out Of the garage it's gonna the Path is you know straight up dubin's Curve straight back Um And so here you see the The path that it's created and I mean It's nowhere near as smooth and nice as One Jeff had but it was just to get it Started the blue line is The odometry data

And so Um Effectively I've Gotten a little bit closer to What Jeff presented back in uh back in February And having run the the previous Ross Bag I'm reasonably confident that the map is Close enough to Accurate so the next Step will be to get out in the yard and Actually try to run this with the The rail tractor so it's now completed It just was going to go to the end of That So that's a little bit of progress Um As Jeff mentioned in the video There's Um This thing going on with publishing the Path and and This was code I want or matt Or somebody put in And I had you know I didn't spend time and I Just used this And it it obviously um Worked as well but so that's what I I Use I didn't use this Which is the other Program I think is the original And then I think the final thing to Mention is

Yeah on the right is a view of GitHub And on the left is a view of My actual Files and this workspace and I think visual studio code is trying to Well stuff that I've done has made Visual Studio code make each of these Get repositories and I don't want that I Want one get repository yet The high levels so If you click on any of this stuff you Can You can still get into this one but you Can't get in this one so I've got to go In and clean Clean that up so although I like git and GitHub as a backup It does take some finesse to get to It has some unintended things go on that Um I've got to work my way through but so Anyway I think that's what's uh Next for me is trying to test in the Real world that dubin's path Um Planner That's it So last week I was talking about uh Starting to power multiple Um little Arduino boards together and I Presented some diagrams and I just Quickly put up some scribble diagrams That I had just as a prop while I was

Talking And then Bob says oh I I need to have All that in great detail to agonize over And I I said well maybe for this week I'll I'll make up some stuff well I Didn't really Let's see if this will work here let's Try this Try to get it I should have set up a new tripod or Something here but anyway this this is a Diagram we showed last week that just Simply was three boards hooked together And power them over USB so I can power Them and talk to them over USB and then Still they can talk back and forth Um a month they can speak amongst Themselves so to speak so then I went Back and I thought okay I I made up this Diagram which uh is this gonna work If I would have done this before This out Well Let me let me let me try let me try a Setting here so like this Set this to HD But you've got is pretty good Okay so there's the uh here we try Raising that up again And if I were smart enough to do this There so anyway Is that yeah that's right side up so I Took that that thing I had was just Three blocks and tried to expand it out

And figure out what I want to hook stuff Together and then up the top here what I Was all done I realized oh I I said I Was going to power it from a five volt Supply to power everything and then Realize I wanted to run off USB so I Scribbled that out and on my Hub down Here I put my power supply down here so Anyway I got it this far and it's a Total mess but it kind of tells me what I need to do so I started breaking it up Into uh smaller You know for each Is that right so yeah that's right so So I said okay for the for the Laura Module here's my my little uh board from Here's my little Ada fruit board and you Probably can't see my cursor Canyon that Doesn't matter so there's the Laura Board and then on my original one I had A red green LED Uh so I know whether the remote unit Wants it to be an e-stop mode or not and That was I just have to carry that Across I decided to put blue LEDs on all My transmit lines so I just watch if the Things are talking back and forth They'll light up and then basically I Decided to move the relay off board Instead of trying to get it on the same Board for various reasons but so anyway That was my uh of those modules that was I made that one And then here's one that's uh


So the slave board Has got the two encoders hooked up it's Got the blue LED And really nothing else so these the It's got the two the transmit the Received lines coming off that go to the Other board so that I'm thinking it Would be like three separate boards that I put together or I could I could do Them all in the same one to start with And then the master one Even even at this point it started Getting messy again just because I'm Putting stuff together so since the Master board will have three uarts on it One to talk to the Laura board one to Talk to the slave board and then one to Talk to uh go out this ftdi interface on The right to talk to my Ross computer So I that that means it would have three Uarts on the board so I'm gonna have Three transmit blue LEDs the little Flash when it's talking And then on the right you can see one of One says goes to the slave one says it Goes to Laura and then the art F that Ftdi is one that'll talk to Ross and Then there's just other things that have To go on here like on the left is the The RC servo And it's just showing um I have to Generate a pwm output to run the servo It's got that analog position input so I Just got to hook those up so basically

It's just putting a connector on the Board wired them up and at the very top It says it says driver what does it Actually say it says motor driver at the Top and I can't get it closer because of The tripod's in the way so the uh so the Motor driver is just that little uh Single Channel Citron board so you got To give a pwm and a direction and have a Common ground on that one and I just Want to put a over on the to the left of That at the top I just want to put a pot On the board so as I turn the pot I can Just load a program and say make the Steering follow that pot and then as I Do then I can just dump out the numbers To write down what's my full left my Full right and then while I'm doing that I can take the analog input for the Servo and again right down full left and Full right so I can scale all that stuff So I anyway I got it this far and as I Was becoming a real mess trying to do This and it's probably going to be Easier to just take now take my boards And I got an idea what I'm going to do Just go ahead and wire up the boards and See what I can make them see what I can Make them do on that and then go back And do you know a more official A more official documentation than what I've done so far But there's no sense making really fancy Stuff until

I actually start wiring it because There's no sense tearing it apart four Or five times I I probably will anyway But That just uh That that that's basically what I got Done this week was was do this and back To the point Um back to the really really busy one Here That right side up Close enough so anyway on this one down The lower left hand corner it's got the Powered USB hub so each each of the Three boards would plug into that and Then but the ftdi adapter to talk to Ross and plug it in that so I'd have Four four connections off this this Hub With a single cable going back to Ross In order to uh to talk to this whole Mess and I'm I'm thinking that will Number one that'll power up all the Boards when I turn on the USB hub and Then number two I can Um I can uh talk to Ross through that fddi Connector on my master processor and Then if I want I should be able to Reprogram into the boards but you know So I can either you know upload code or Do debug on any of the boards because They're already already hooked up and That so that might work out for me well Well we'll see what it does on that

So that's uh Uh that that's all I got to say about That oh the other thing was Since since all the snow's gone I went Out raked my yard and I was thinking Well no I I'm told I have to mow the yard myself Now so I can either drag out my little Lawnmower or get out my lawn tractor so I was thinking about my lawn tractor and What what the main drawback was I had That giant RC Servo mounted on the back To run the transmission And I I took that off because I had to Say I was gonna like maybe lock tight Things or put lock washers on and solder A wire on Solder a wire on On the giant RC server so I can get the Position feedback out of it and that That that was just too much for me I Just couldn't couldn't get into that and Do that so anyway so it's been sitting Around for about a year now not doing Anything and I thought what I could do Is just take one of my new I got those Two new giant servos and one is the fast One and I put that on the steering of my New little robot and then the one that's The slower one which is probably what Everybody else has I could probably bolt That one on the my lawn tractor and it's Already got the position feedback on it So I just have to bolt it on hook up the

Wires and then move on from there so I Was I was thinking about that again do I Want to go to the trouble to To fire that stuff up and try to get it To run or not so that's just one more Thing to distract me I guess But I think that's that's about all I Got to say for the moment Oh um I was going to mention to Al Um You said you're gonna now take your pure Pursuit and put it on your actual lawn Tractor it's right around the yard Something to something to notice here is That this is a good time to get this get All this straight because if you've got Uh you're running just the standard Navigation package with move base And one of the two built-in local Planners on that it will put out a Command a standard command velocity Message which is forward velocity and Rotational velocity and then if you load Up the temp planner either under move Base or move base Flex it will by Default it puts out these standard Command velocity message again or as we All know you can set a flag in there and Have it put out a modified command Velocity where they've they've jammed a Steering angle in instead of the Rotational velocity and that's what That's why everybody's been running that I think

Um anybody's been using the tab planner In the Ross agriculture slash lawn Tractor group I think it's doing it that Way so it puts out a forward velocity And a exterior angle now when you go to The For the pure Pursuit it was written to Put out an Ackerman command that it Turns out it puts out an Ackerman Stamped Ackerman command message which Is just there's two different formats For these messages so it puts out those Like six values or something two of Those are the standard one the forward Velocity and one is the steering angle And then making it stamped they added on Like a it was the time stamp or they'd Put another header on it so so between The stamped message and the non-stamped Message the the structure is physically Different so it turns out the thing in Gazebo it's got that thing called Ackerman controller dot Pi it's Expecting a non-stamped message so those Two will not talk directly together even Though they're both Ackerman command Messages so what I did I just wrote a Translator that will take it will Subscribe to the uh pure Pursuit and Then it'll read in the stamped message Pull off the fields at once and just Republish the the non-stamped Ackerman Command message so some somewhere along The line here you gotta you gotta

Realize there's you know like four or Five different formats all this stuff But they're all really the same data and They're not that hard to convert back And forth and that stuff I just put out On the uh the Google Drive and out in That director I think I called the Scripts directory it's got all kinds of Little translators like that to convert Stuff back and forth so it's just a Matter of when you go to do it on your Lawn tractor you have to decide you want To actually subscribe to that Ackerman Command stamped message that that it's Putting out or do you want to have you Can put translators in between to Convert to something else if you want to So when you go to do it you're going to Realize oh oh this won't talk or it's Not working or whatever so you need to Track that kind of stuff down Yeah So if you're talking you're on mute There's the mute button tag Nabbit can You see my screen yes okay So thanks for that because this is the I mean so this is the pure Pursuit C program And it's as you said Um kicking out this Command Ackerman but it's also kicking out this Command velocity Would you see any downside to using

This If you use that as is I think that's Putting out a standard command velocity So it's four velocity and rotational Velocity so if that's what you want to Use you could use that directly And convert that into angle yourself I I had forgotten that it puts out both Not until you just pointed it out So so again the point is there's lots of Different ways to do this and but I Believe that message if you go down look Through the code I think that is Rotational velocity that one's putting Out where's the Ackerman command in this Case the stamped Ackerman after what They call Ackerman Drive stamped is is Actually putting on a steering angle and A forward velocity And so just to test my You know first grader knowledge Um When I adjusted the yaml file Well I'm assuming this is going to put An angular Z out Um Triggered somewhat by or constrained Somewhat by that yaml file but we'll put Something out Negative You know Point Well instead of doing this what do you Think this will put out for angular Z

For a full left or full right it's going To put out a rotational velocity Whatever that calculates out to It's not putting out steering angles Putting out angular velocity I believe The way it sits right now Yeah if you wanted to quickly hack on it You could go to where they're creating That and instead of putting in Rotational velocity put in the steering Angle the same one they put into Ackerman command So that'd be a quick way around that Well Are you willing if to look at this if I Fire up this is the Ross Bag that just Ran And if I just Echo command velocity Um I'm most interested in what's the range Of The values for angular Z Well well again when you say angular Z We have time are we talking about Rotational rate are we talking about Steering angle I'm talking about I mean so this is going To This is going straight and it's close to Zero If we're talking about the simulator Running pure Pursuit is what you're

You're doing right now This is the Simulator running pure Pursuit okay And it's about to well All this lagginess is driving me crazy I Don't know if it's my I'm clicking here but it's not clicking Back Um I'll use plot juggler and see what that Range is Yeah see it's stopped now Um Foreign Again and it's already out in the yard Virtually it's going to make a hard turn Oh no it's not I'm restarting See it has you know a positive you might Not have been able to see it but Um It went up to 0.75 Radians per second That's what you Well by definition that's what that Command velocity is putting out is Rotational velocity got it And then the Ackerman command is putting Out if you can display that that will be An actual angle A steering angle So if you display them both at the same Time might be handy if you can You can do that I looked at it one time it looked like

See also  The Ultimate Lawn Tractor Attachment? 🚜 // Garden Answer

They're they're fairly close anyway but You can see occasionally they would be Different but but by definition that Standard command velocity is a Rotational velocity Do you remember the topic name Uh no but you can just do a Ross topic List Is it this I don't really don't recall That might be what it is but So it will have stopped but Um You probably have to restart the command Velocity one because you shut down the Masters so you might have to run that Again to see anything and then Apparently the one for Ackerman command Wasn't the right The right topic name That's what's in there oh there's a Remapping going on in the launch file I Think We'll just do a list and you'll see What's there Why do you have move based flux running Um you don't want to start any of that Stuff up if you're trying to run this Pure Pursuit At least at least at this point if you Get all figured out you might be able to Get them to run the same time but There's another issue there that that Once you start up the pure Pursuit is

Publishing all the time and it doesn't Stop when it when the vehicle stops it Doesn't stop publishing Right there right there it says slash Ackerman command at the top of the Screen that's probably what you want Actually there might be two because it's Probably going to show you the ones Coming out of out of that and then it Might have a remapped one that's going To show you also so anyway but but Either one will show you what you need To know Foreign [Music] It's going straight it's got a small Number Small number And then it goes up to 0.75 I wasn't fast enough to see if the Angular Z was similar If you can plot those two with plot Juggler that would give you That would show you show you what the Difference is between those tool it's Running Yeah I mean it's paused there and they Were both saying 0.75 But you're right I should get into plot Juggler and Push that out Yeah that stuff has always been a bit Confusing to me so thanks for bringing It back up because

Um obviously it impacts How the low-level controller deals with The Devil So another thing you could do instead of You know I put the translator to go from Pure pursuit to the Gazebo stuff so it Takes in an Ackerman stamped and puts Out a regular Ackerman you could just Write a different translator it takes an Ackerman stamped and creates a command Velocity message which would be the the Modified one so you just simply pull up The the speed and the steering angle From Ackerman command and just stuff Them into your command velocity and It'll work directly with what you have So your your lawn tractor is already Looking for that modified command Velocity so that would be a way to do That I I might if you look through my List of little translators there I might Even have one that does that Okay thanks for that Yeah because I no doubt we'll get back Into you know tuning the PID and all That other stuff Um as well which is what I wanted to do Um anyway so Both for Speed and steering Start slow The other thing Um while you were talking You reminded me I said I would send you A picture of this thing

Um I put a URL in the chat this is a seven Port Hub I've not used it but I thought it would Be The notion is it would be a little bit More conducive to putting in on a Tractor Um Yeah that's not It's all fuzzy there you go But I mean it was what was the What was the price 20 euros I don't know if I got that out Of I don't think I would have had that Somebody in the states must be selling That Um But I found it So 20 bucks is less than my USB hub That's another alternative for USB hubs But if you want a blank board you can Always take a take more take a rip the Case part just pull the board out Because I've I've got one laying around That I did that one time that I bought Some at a surplus store I bought like Four or five of these four port hubs and Took one to park zoo was in it and it Was too lazy to put it back together so

Somewhere I have a board kicking around So it'd be the same concept of just a a Board you could screw down to something Instead of having the case so I'm I'm Not sure it's going to do a whole lot of Good just that it might just be easier To mount that way yeah And when it comes to my thing about Trying to power all my boards with a Powered Hub I just need to just grab Whatever I have and see if it works and If not grab another one that I have and Eventually I might have to go out and Just buy one you know specifically for What I'm trying to do but I'm still just Experimenting with anything right now so I'm not all that worried about it The other thing to mention briefly is That treaded Get blank to run on that um black pill 411 board and I can't seem to find The right Um Using the Arduino IDE I can't seem to Find the right Library that actually has the 411 listed So so fighting with that a little bit so What did you load as the Arduino core For that board You go out and you say here's the URL to Something or actually there's a couple a Couple of different ways to get this Stuff to run but what did you use is the The the basically the Arduino extension

To make that work what did you what did You run on that I'm trying to pull it up now I don't Remember the exact URL one was uh Uh Just sharing my screen So the last one that I found it's a Little bit hard to see that but Um See if I can copy that into something Make it bigger So this STM 32 duino But this Library So I think that's one that I'm running That's what they call the official St Micro Um Arduino Core And so if I go into board manager You know sstm will show up here And I bet it takes time I'm sure your Machines are faster than mine Um It has a reference to STM F4 series But then when you go to Come on Well I guess I could just choose that That four Series yeah pick that And it'll bring up another uh line below That on your tools menu and you pick the Board type So go over and and look to see if you Have one called black pill or

Uh I've grabbed this as black pill 411 CE it's up the top there Right there I'll be damned pick that And then what else you have under Tools There Uh so it's on com3 And uh what's the other I don't have it Plugged in right now by the way I mean I Could in 30 seconds but okay so the Other trick is it's going to say Something about programming mode and Maybe you have to have it plugged in Before it'll show up here but if you use The standard bootloader that's built Into it right now you have to use dfu Mode So that's where you have to you know Yours has the push buttons right so you Have to hold down the boot zero button And then press the push the reset and Release it now you might have to hold Down the res the com the boot zero Button some people say you do and I Don't know if you have to do that so Anyway oh right right there it says go Go up about four lines is the upload Method it says stm32 Cube program swed Change that to dfu if you're going to Use the built-in built-in bootloader Dfu the middle middle one there you go But I still have to install that STM Software right no Well well Maybe

When you go to wrote it if it says I Can't can't find dfu or whatever you Might have to install that to make that Work So now the next thing is I was saying if You put the hid bootloader on then it'll Work like the Arduino Nanos where you Don't have to go monkey around with the Push buttons and the hid boot loaders Where I'm running So it turns out Um but but you have to have that Bootloader loaded onto your board first So So that that's a couple more steps to Get there but I was noticing the uh that Board that you bought I think it's a Knockoff of the one that's called like A AE AE something That you know if you just look on um Look on Amazon and say search for the Black billboard it'll show you the the People that actually created that board And then they've got they've got a GitHub for all their stuff and I'm Assuming that board you've got is close Enough to that one that all that stuff Should work And they've got they've got an HID Bootloader that I think they've taken The one You know the one of the standard ones And modified it to work on their board

So if you wanted to do that you could Otherwise you can leave it like this That dfu bootloader is already always Built into that board so it's just but You have to do you have to hold down the Boot zero and press the reset and then Go ahead and do your program and when It's done it'll come back up running Again So it's just a matter of Um I actually probably have to So I don't know when you release the Boot zero button if you just hold it Down and reset it and then release it Immediately because that leaves it in Dfu mode now as it goes through the Programming process if it if the Programming process resets the processor What or more times then if you're still Holding the button down it keeps putting Back into dfu mode so I don't know if That If that's the way to go on that or not But you just have to experiment with That too you should make it do cool Another thing Um if on your tools menu go back up so You said f no stay yeah right up up get Out go down the next line down so it Says something about embedded serial Embedded generic cereal So that is enabled and go down one more Line and everybody says everybody says You should pick the thing that says

Generic cereal supersede use art I'm not Sure exactly what that is Now the next Go back go to the back to the left And go yeah right there go down with That Up one That one everybody says to do that and Then then you can talk out the the uart Or talk out the USB apparently so if You're in your code you just say serial Print it'll come out I think it comes Out the USB as opposed to coming out on A uart is what that's for and that's Just you know as you dig through this Stuff people keep telling you these Things that's that's what you should do And Whatever but So So you say you could grab your board in 30 seconds hook it up maybe you should Just go ahead and try try that and see What we can see if this works okay Okay so at this point he found his board He plugged it in he loaded the blink Program and he's looking at it as a Setup menu here And I don't know if it's like I can't See my zoom screen I don't know if That's viewable or not so I've got two Push buttons one Uh boot zero and one reset in the I was

Um Some STM documentation said this was a Type 2 and that you needed to hold both Buttons In in order to program it and then one Of them said you hold Boot in first then reset then you let Off reset then you let off boot so I Don't know what the exact key sequences I I personally would try that second one But We'll try and see what it does And [Music] Before I press the upload button or are You on windows at this point or Linux I Am Windows this is a Windows machine on Windows if you pull up the uh what do You call a device manager that shows you All your ports and stuff you can see it You can see it switch on that if you if You have that running And it's just something called device Manager Yeah I'm Foreign That one And it says it sees it on com 15 right Now if you unplug that that should go Away If you now if you plug it back in that Should come back and say it come 15 Again And now at this point if you if you do

See also  Yarbo Lawn Mower M1 Mows the Front and Backyard with a No-go Zone

Your your boot sequence stuff so hold Down the boot Button and reset it and Then release the boot Button and watch That device manager and the com 15 Should go away and it should say Something else it should say dfu Something Huh okay let me get back into that So I'm pressing the boot Button I'm pressing The reset button and I hear the USB Bing I let off so you notice the uh The cut the com 15 went away but you Should have a new one now that says dfu Device or something Nothing yet but I still have both Buttons pressed well it won't be under Com lpt I don't think it's going to show Up somewhere else And that's that's a problem with Windows I never know where to look to find this Stuff but I heard would it be under USB ding Uh device just request failed I don't Know if that's this one or not Let's see [Music] Interesting but anyway that that will Show you as it switches from regular Mode to regular com Port over to this Bootloader your com Port disappears as Bootloader shows up and if you're in the Bootloader mode now it's something about The LED on the board might be flashing

Differently or flashing now or whatever After you put it in solid red So I would say go to go to your Arduino Stuff and say upload and see what it Does It's trying to do it on com3 Uh just try just run it and see what it Does see if it finds ID if you See I think I I don't know but I'm Wondering if that STM software Has the right I'm going to call them Drivers not To have to handle that USB con Conversation Yes just you might still have to go load That St link stuff that they tell you to Do and that then that might help out Yeah I think we're still compiling here Foreign Out that if you go to uh when Arduino is Shut down if you go to your your last Like the dot Arduino 15 directory or Whatever and there there's a preferences File and there you can say you want the The build process to be verbose which is Kind of what it looks like it's doing Right now you can say true or false on That and then you can go to the uh the The upload section you can say verbose Or not so that's something else but it Says you can't have Arduino running as You do that so you shut down Arduino you Pull up that preferences file and either Change those to true or false depending

What you want to do and save the file And then when you start up Arduino I think if you have the build set to Non-verbose or have have the build set Defaults I don't think all the stuff is Going to show up that you're seeing Right now But sometimes it's handy to see that Sometimes it's just a pain And since you're trying to get your Upload stuff to work it's also handy to Go in and change that one and say make The upload verbose so it shows you more Stuff going on is it as it tries to load This stuff That's cool thanks for that I'm I've obviously selected one of the Verbose settings but I didn't know about The upload verbose And if this is the first time you've Ever run this it's going to build all The St micro stuff so that's why it's That's why it's taking so long here But I spend a lot of time just digging Trying to figure out how all the stuff Goes together and when I first realized Oh for these kind of boards you either Get the standard St micro Um extension or you get the Roger Clark Extension and then there's a lot of Stuff built on the Roger Clark stuff and Then you got the St micro stuff which is Is different in different ways so I had To figure all that out and that's where

I found out this thing about you can set The verbose or not on all this stuff And you use the Roger Clark stuff or do You use the um off-the-shelf stuff I'm Using the St micro off the shelf stuff And there's something about trying to Get This target not found it it could be if You load that SD mic St link stuff that They tell you to do and if you go to Did you find the the main page that Talks about this uh What do you call it the the extension For this stuff I think if you go to St32 duino I think that I don't know if it's.com or Dot org you'll start off with a forum And that forum is combined with the two Different packages And then if you go to somewhere you'll Say here's the Here's the official St micro stuff and That'll take you to a Wiki and and Looking in that I think it'll give you That that's a good good thing to have to Know what's going on there and that's Where they probably tell you Yeah click on that what to do that might Be the looks like I've been there before Okay this this is the direct one here so Uh actually uh you got to do the one That says Arduino core stm32 I think That's the one that's

This is the so-called official uh that Uh go to the top and click on Wiki But sorry guys but I need to to head out I will see you in two weeks okay very Good luck So you might want to bookmark this page And this is this is their official Documentation for it and someone will Say getting started yeah right there it Says getting started page And they might tell you that yeah you Have to go load the St link stuff and They might tell you how to do it because You can either load it as like command Line stuff or it's like a GUI or maybe Both And So here they're just telling you to load The stuff And you've got all that stuff done Baseboards Install okay Okay so right there is this extra step Or dfu So if you click on that 32 STM Cube 32 Programmer And then it takes you to SD micro and They make you give them your you have to Give your email address and some other Stuff I don't know if you've done that Yet or not I think I can count with them So I I I Can't remember here

If you just simply click on get software If that'll Again it'd be nice to give you a little Better description of what you need here I don't know if you just load The windows version of whatever they Tell you here Discover st-link V3 set st-link V3 Doesn't sound familiar Something at the top oh oh they're They're right there it says get software And maybe you can do windows 64. So I have a Windows 64 machine but did I Say get that software I just take whatever the latest version Is so oh they may just select it okay Now here's where the So I think when you're you're trying to Go through the stuff you had if you Didn't have that program or software Loaded you know it had the stuff on the Menu but it doesn't can't actually find It so I think if the if it finds the Programmer package and then you click on The dfu then I think it will either Either ignore the com port or I don't Remember how that works but I think that I think that will indeed uh you can be Much closer if you do that cool Well until um hold on a second let me Look up that thing see if I can find the Name Of that I want this If I say Amazon

Because you can find the name of the Board that this is based on Let me just say F 11. Well it's going to show me They're not gonna make this easy Back up here click on this board But it's something like like a c e t or Something is the the name of the One with this go to this page And there's another there's another Thing where somebody's it's called Boards.com or something that's got they List all these little boards so you can Look up information on them it doesn't Give you a lot of stuff but it shows you Some of it This the one I pulled off is a canduino It could be canduino it seems like it's A real name that might give you pointers More information on it And if I if it's on my other computer so I'll look it up and I can post that to Uh The Forum or to the the slack and Tell you what it is and they've got a GitHub that gives you lots of stuff on It so it's probably more documentation You're gonna find anywhere else cool And this thing that says canned we know I don't I was just scrolling through Here soon it's going to give me a link To To more information but I don't see it Anywhere so

But I'd say you know so when you get Time load that programmer package and See if that solves the problems and if Not If not let me know and I'll I'll see if I get any more ideas on that I'm registering for an account as we Speak so um We'll see if that um So I can't seem to fight my way through Them So if you get if you get that programmer Package loaded then if you decide to put That hid bootloader on your board then You plug in your little debugger module And then you can go to that software to Put the put the bootloader onto the Board but I'd say I'd say get it working With the dfu first because it's supposed That's supposed to work Yeah I think That's what I would do is just try to do Them path of least resistance Waiting on my email from them Oh they have to verify your oh uh yeah I I suppose that's I suppose that makes Sense they're gonna Do whatever they can annoy you Know everybody complains about that you Can look at anything saying oh well you Have to go out to SD micro and load this Is oh but you have to get an account you Know a little frowny face every time They do that so

Yet one more um Oh so I guess I guess it should be Obvious to me that your boards haven't Shown up from China then if you if you Have one in hand so yeah Did you did you actually get that on AliExpress or did you get it like on Amazon or something AliExpress Dear customer an issue with your oh for Goodness sakes Let me give it one of these Okay so we're back to STM duino Arduino Core getting started Um this you've helped me through Selecting the right board [Music] After I install this software in order To be able to do dfu Um Let's just see what else it says Configure the IDE so let's go through an Example on a different board and Essentially it's the same the same type Of stuff you got to do so It's right here they're telling you the Steps that I just told you that you know You got to pick the generic board or Here they're not using a generic board They're using one of their eval boards Which is why it's a little bit different So basically you always you're going to Say select the generic board for either An F1 F2 F3 or F4 and the second line Says pick the actual board from the list

And that that that's it's they're Telling you that here but for one of Their specific boards got it And then they'll probably tell you this Thing about the uh the uart and All this generic what do you call it Supersede usart they might explain here What that's doing The upload method See upload methods for more details Examples Okay Well maybe if I install their software It'll be Good to go On the blank example let's see to change The upload method that's it that's all Uh let's just see what they say about Upload method They've got a fairly big page on telling You all the different ways you can you Can talk to these boards and It I suppose all this stuff's worth Digging through because when you can't Make it work you have to go dig through This stuff anyway so Okay and I think you can turn off Recording Okay

You May Also Like

About the Author: Mowrs