HELP REQUIRED! Remote Connection to GoPiGo3 using Rasbpian for Robots

Seriously now, have I seen you on the MSFS forums? I think I remember your avatar.

Or maybe it was X-Plane?

1 Like

Keep that checked until after you make your first connection and quit.

Then un-check it.

1 Like

I don’t think so. I haven’t played that game. Seems like something my brother would play. Plus this avatar is kinda borrowed from the chillhop raccoon, but if you see me in real life I look like him so I kinda use it for coding purposes :smiley:

2 Likes

At the rate you’re going, you’re going to be the local expert in boot-up and configuration!

Rule #1:
Keep it fun.  Even though we take our robotics seriously, we also remember that this is supposed to be fun too, so don’t get too stressed.

So where do you hide?  Maybe we can meet for a beer and swap lies about our robots? :wink:

Me, I’m in Moscow Russia with the granddaughters - as seen in my avatar.

1 Like


There we go. I am in

so now I can go here and uncheck it right?

2 Likes

Ahaaa,

This is what you meant:

1 Like

After you close this connection, turn off the automatic update and do not delete the current desktop image.

Jim my friend, I owe you a beer. If you ever feel like visitin Slovenia give me a call :smiley:

I will document how my project goes and will probably create a few videos to ease anyones pain.

Thank you for all the help. I really appreciate it. I hope you are enjoying the time with your granddaughters in Moscow.

1 Like

Don’t worry about the beer, I owe folks here so many beers I’d have to be a brewery to keep up.

However, Slovenia sounds like a great place to visit.  I saw an article on YouTube that claimed that Slovenia has the best looking ladies on the planet!

Hmmm. . .  Then again, maybe that’s not such a great idea - my wife is a jealous god and will probably kill me!  (Just kidding!  :wink:)

So, remind me what this project is all about?

Maybe you can start a thread here to document your project and its progress?  We all do things like that - it’s great for getting ideas and help when you get stuck.

Here’s a couple of things I do to make my life easier:

  1. Since I’m often using multiple OS images to do multiple things, I usually “name” the image by editing the background image located at
    /usr/share/rpd-wallpaper/GPG-desktop-bg.png

Viz.:

I also do some special file-system configurations to protect from bit-rot.
sudo tune2fs -c 5 -C 6 -i 5 -e remount-ro -o discard /dev/mmcblk0p2

Tune2fs allows you to program special features directly into the filesystem’s superblock.

  • -c 5 => sets the maximum number of times the filesystem can be mounted without forcing a fsck on boot.  I set mine to five mounts.  (five boot attempts)
  • -C 6 => sets the current mount-count, (the number of times the system has started since the last fsck), regardless of what it might have been.  This forces a fsck on the very next boot which resets the mount count and guarantees that the filesystem is good at this point in time.
  • -i 5 => sets the maximum interval between fsck’s.  (i.e. The amount of time the filesystem can age without a forced fsck).  In this case if the filesystem hasn’t been mounted five times after the last fsck, this says to force a check after five days.
  • -e remount-ro => forces the filesystem to remount as a read-only filesystem if things go all pear-shaped at boot time.  This will help minimize the damage and gives you a chance to plug it into something else and try to fix it manually.
  • -o discard => sets the “discard” flag so the device can try to accept TRIM commands.
    https://forum.dexterindustries.com/t/ssds-and-trim-on-the-raspberry-pi/9491
    This is especially important if you’re using SSD’s, but some SD cards also support TRIM.

I also edit the /etc/fstab file:
sudo mousepad /etc/fstab
and add “,discard” (comma-‘discard’) at the end of the line for the root filesystem
Viz.:
PARTUUID=ca78f9f0-02 / ext4 defaults,noatime,discard 0 1
where I add a comma and “discard” to the end of the option string.  This also helps enable TRIM.

There are a few other things you need to do at the system level to guarantee TRIM is enabled, but I’d have to look them up.

1 Like

Yes, because all of the balkan girls are gathering here :smile:

2 Likes

As for my project, the project name is:

Teaching shortest path algorithms using a physical robot.

Basically, I will give users user interface which will be a simple web page. They can draw a graph like graph in graph theory in it, with vertices, then connect those vertices with some edges and give them edge weights. Then they chose one out of three algorithms for finding a shortest path, and I will visually show them how the algorithm works, with some help from Timmy of course.

I will conduct a quick user study, give participants some graphs to find shortest path algorithms after learning the algorithms. Then we will see how well they implement them.

So, basically that is that.

If I continue master’s here I would probably ask to be in charge of the GoPiGo’s so I can work on some more interesting projects. It would be fun I think.

2 Likes

A-star, traveling salesman, ?

1 Like

I have Dijkstra’s ready, I was thinking on A-Star, but I am still not sure which other two I will use.

2 Likes

That sounds interesting!

You are going to keep us up to date with your progress, right?

P.S.
Get TWO robots and do things with both of them!

1 Like

Very neat to hear! Forty years ago I was tasked to design an autonomous aerial vehicle flight path planner that maximized the probability of “discovering” carefully hidden objects (objects with a set of travel and operational constraints), while minimizing the likelihood of my vehicle being discovered prematurely, all within the vehicle flight constraints.

The solution was to combine an A-star planner with a rule-based inference engine all written in Lisp. (There was a group debate over A-star versus Traveling Salesman since our computational resources were so restricted.) Once the rules were set, I recoded the rules in CLIPS a C language Inference engine developed by NASA.

Our initial “test robot” was a video camera that “flew” (moved in {Y, Z, Psi, Phi} ) over top of a giant motion table that moved back and forth in X dimension under the camera providing visual and other simulated sensor inputs. On the table were scaled roads, vegetation, poles/towers/wires, buildings and the hidden objects.

Our whole team would get motion sickness during simulation testing (and the LISP computers would overheat). Crazy fun!

2 Likes

I will probably make a new post regarding the progress, and how everything is going. I wanted to start blogging for a while now, I just need to find the time to actually start it :smiley:

As for getting two robots, I might try something in the future.

2 Likes

Hearing 40 years ago is actually already impressive enough for me.

You seemed to had a lot of fun working on that project. Probably making the scaled objects was a lot of fun also as well as running the simulation.

I am using a projector to show the graphs, but in the future I might make them more fun:
Making the vertices be towns, and the edges roads, etc. It would be more immersive I think.

2 Likes

Thanks @jimrh for all the explanations you gave @PavelCodes .

GoPiGo OS is both a system you can access through the browser and a system you can access through VNC to get to the Pi Desktop.

GoPiGo OS is both a system that runs its own Access Point, and a system that can be connected to the internet.

Cleo

3 Likes