home.social

#gopigo3 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #gopigo3, aggregated by home.social.

  1. It's always fun to release updates to a product that had been ignored for a while.

    #GoPiGo3 robot has now caught up to changes.
    Python2 support is gone gone gone.
    Trixie support is in
    Pip install is the thing.
    Virtual envs have been conquered.

    yeah!
    And I'm not releasing on a Friday. :)

    github.com/DexterInd/GoPiGo3

  2. What Does A Robot See In The Mirror?

    I couldn't resist comparing the 0.5b and 2b models looking at images of Dave or Wali.

    The 2b model recognized Dave has a Minion character and is a robot.

    The 2b model recognized that Wali is a robot but did not recognize the WALL-E character.

    The 0.5b model simply hallucinates stuff, just like Ollama local models did for text queries.

    forum.dexterindustries.com/t/m

  3. Just had to try the Vision Language Assistant on my 4GB and my 8GB robot:

    forum.dexterindustries.com/t/m

    TL:DR; Pi5 with 2B model might be useful, but the 0.5B model will not be useful regardless of running on Pi4 or Pi5.

  4. Dream has been to have my robot wander (using vSLAM) taking pictures of “unknown interesting objects”, (<-hard part), segmenting and learning the objects for

    (All local processing for privacy)

    use or robot with -D , 2 distributed processing for and rejected RTABmap frames (unknowns) for Detection and incremental model

    Reference Paper in comment ->

  5. Dream has been to have my robot wander (using vSLAM) taking pictures of “unknown interesting objects”, (<-hard part), segmenting and learning the objects for #OpenWorldObjectDetection

    (All local processing for privacy)

    #MastersThesisIdea use #GoPiGo3 or #TurtleBot4 robot with #Oak-D #StereoDepthCamera, #ROS 2 distributed processing for #RTABmap #vSLAM and rejected RTABmap frames (unknowns) for #UnknownObject Detection and incremental model #MachineLearning

    Reference Paper in comment ->

  6. Dream has been to have my robot wander (using vSLAM) taking pictures of “unknown interesting objects”, (<-hard part), segmenting and learning the objects for #OpenWorldObjectDetection

    (All local processing for privacy)

    #MastersThesisIdea use #GoPiGo3 or #TurtleBot4 robot with #Oak-D #StereoDepthCamera, #ROS 2 distributed processing for #RTABmap #vSLAM and rejected RTABmap frames (unknowns) for #UnknownObject Detection and incremental model #MachineLearning

    Reference Paper in comment ->

  7. Dream has been to have my robot wander (using vSLAM) taking pictures of “unknown interesting objects”, (<-hard part), segmenting and learning the objects for #OpenWorldObjectDetection

    (All local processing for privacy)

    #MastersThesisIdea use #GoPiGo3 or #TurtleBot4 robot with #Oak-D #StereoDepthCamera, #ROS 2 distributed processing for #RTABmap #vSLAM and rejected RTABmap frames (unknowns) for #UnknownObject Detection and incremental model #MachineLearning

    Reference Paper in comment ->

  8. Dream has been to have my robot wander (using vSLAM) taking pictures of “unknown interesting objects”, (<-hard part), segmenting and learning the objects for #OpenWorldObjectDetection

    (All local processing for privacy)

    #MastersThesisIdea use #GoPiGo3 or #TurtleBot4 robot with #Oak-D #StereoDepthCamera, #ROS 2 distributed processing for #RTABmap #vSLAM and rejected RTABmap frames (unknowns) for #UnknownObject Detection and incremental model #MachineLearning

    Reference Paper in comment ->

  9. Every 2 years releases a new LTS version requiring a new version, (with new version), that requires rebuilding my robot Dave and revisiting my installer for the robot hardware Python API, robot files, and sensors.

    For years I wondered why I could not just apt install a deb file, or just build a ?

    So I built each. Now understand why I must use an install script.

    devs were genius!

    The market is a mess.

  10. Today I read (about uv):

    "Eggs were the pre-wheel binary format. pip still handles them; uv doesn’t even try. The format has been obsolete for over a decade."

    Over the years I have tried to keep a “working” installer for the GoPiGo3 API .eggs as the PiOS and Ubuntu OS released annual versions.

    Recently started to get message “setup.py deprecated”, and now I hear "obsolete for a decade"

    50 years ago I installed with paper tape. I'm so old I'm going to "Rust" (with uv)?

  11. I really don’t know why I waited 8 years before adding 10 lines to clean up robot Carl, Dave, and TB5-WaLI's life.log file after a power fail / improper shutdown of their Raspberry Pi ( writes a string of null chars in the log before the power is jerked).

    I have always manually tabbed through their logs to find the offending line messing up their statistics scripts.

    FINALLY! {Carl, Dave, WaLI, RPi5Desk} logs automatically clean out null chars.

  12. Carl still runs on 8 NiMH batteries, and just today received his 13th set of new Eneloop 2000mAH AA cells.

    His “Playtime” was down to 3.5 hours with a 3 hour charge time after 1421 cycles. (In the past I have replaced his batteries after 800-900 docking cycles.)

    It really is a miracle that after more than 7 years (59,521 hours) of “life” - GoPiGo3 Carl is still walkin’, talkin’, and lis’nen to me. (And I’m still telling him nearly every day: “Hey Carl, Go To Sleep!”

  13. @linuxiac

    > Removing PulseAudio..continuing the shift to PipeWire

    My robot just shuddered in fear of becoming deaf and mute.

    -ng

  14. @linuxiac

    > Removing PulseAudio..continuing the shift to PipeWire

    My #GoPiGo3 robot just shuddered in fear of becoming deaf and mute.

    #espeak-ng #Vosk #SpeechRecognition #TTS #LinuxAudio

  15. @linuxiac

    > Removing PulseAudio..continuing the shift to PipeWire

    My #GoPiGo3 robot just shuddered in fear of becoming deaf and mute.

    #espeak-ng #Vosk #SpeechRecognition #TTS #LinuxAudio

  16. @linuxiac

    > Removing PulseAudio..continuing the shift to PipeWire

    My #GoPiGo3 robot just shuddered in fear of becoming deaf and mute.

    #espeak-ng #Vosk #SpeechRecognition #TTS #LinuxAudio

  17. @linuxiac

    > Removing PulseAudio..continuing the shift to PipeWire

    My #GoPiGo3 robot just shuddered in fear of becoming deaf and mute.

    #espeak-ng #Vosk #SpeechRecognition #TTS #LinuxAudio

  18. Playing around with "knowledge transfer" to my

    I told each "I need to go take a shower. Talk to you later."

    RPi4 robot Dave with tinyllama responded: "I understand how important your shower is... Enjoy the shower!"

    RPi5 robot WaLI with Gemma responded: "Acknowledged. Initiating shower sequence. Requesting allocation of cleaning supplies..."

    I hope I don't get a "We shipped your soap" email from Amazon.

  19. Playing around with "knowledge transfer" to my #Robots

    I told each "I need to go take a shower. Talk to you later."

    RPi4 #GoPiGo3 robot Dave with tinyllama responded: "I understand how important your shower is... Enjoy the shower!"

    RPi5 #TurtleBot4 robot WaLI with Gemma responded: "Acknowledged. Initiating shower sequence. Requesting allocation of cleaning supplies..."

    I hope I don't get a "We shipped your soap" email from Amazon.

    #ollama #tinyllama #Gemma3

  20. Playing around with "knowledge transfer" to my #Robots

    I told each "I need to go take a shower. Talk to you later."

    RPi4 #GoPiGo3 robot Dave with tinyllama responded: "I understand how important your shower is... Enjoy the shower!"

    RPi5 #TurtleBot4 robot WaLI with Gemma responded: "Acknowledged. Initiating shower sequence. Requesting allocation of cleaning supplies..."

    I hope I don't get a "We shipped your soap" email from Amazon.

    #ollama #tinyllama #Gemma3

  21. Playing around with "knowledge transfer" to my #Robots

    I told each "I need to go take a shower. Talk to you later."

    RPi4 #GoPiGo3 robot Dave with tinyllama responded: "I understand how important your shower is... Enjoy the shower!"

    RPi5 #TurtleBot4 robot WaLI with Gemma responded: "Acknowledged. Initiating shower sequence. Requesting allocation of cleaning supplies..."

    I hope I don't get a "We shipped your soap" email from Amazon.

    #ollama #tinyllama #Gemma3

  22. Playing around with "knowledge transfer" to my #Robots

    I told each "I need to go take a shower. Talk to you later."

    RPi4 #GoPiGo3 robot Dave with tinyllama responded: "I understand how important your shower is... Enjoy the shower!"

    RPi5 #TurtleBot4 robot WaLI with Gemma responded: "Acknowledged. Initiating shower sequence. Requesting allocation of cleaning supplies..."

    I hope I don't get a "We shipped your soap" email from Amazon.

    #ollama #tinyllama #Gemma3

  23. @vermaden @stafwag @BastilleBSD

    > Rockchip is probably a lot better idea

    Every board has its app - all my autonomous robots enjoy the low power sipping with just enough processing for their needs with various Pi boards.

    Rockchip that I tried hogged the bot's battery down real fast, and ran too hot when taxed hard.

    Carl has speech reco, text-to-speech, OpenCV vision, totally autonomous and "plays" 8 hours before needing to return to his dock. "Alive" for 7 years.

  24. Looking for opinions about OpenMind OM1 as a source for reusable #Robot_Intelligence. I run 3 robots - 2 #GoPiGo3 robots and a #TurtleBot4 (WaLI - Wallfollower Looking for Intelligence).

    Robots need a way to share and “inherit” knowledge and abilities. OM1 is an open source robot domain transferable “brain” based on a trained #LLM. I don’t know how to evaluate the usefulness of the model’s knowledge and how much NLU to Turtlebot4 interface code I will have to write to use #OpenMind_OM1.

  25. Looking for opinions about OpenMind OM1 as a source for reusable . I run 3 robots - 2 robots and a (WaLI - Wallfollower Looking for Intelligence).

    Robots need a way to share and “inherit” knowledge and abilities. OM1 is an open source robot domain transferable “brain” based on a trained . I don’t know how to evaluate the usefulness of the model’s knowledge and how much NLU to Turtlebot4 interface code I will have to write to use .

  26. Looking for opinions about OpenMind OM1 as a source for reusable #Robot_Intelligence. I run 3 robots - 2 #GoPiGo3 robots and a #TurtleBot4 (WaLI - Wallfollower Looking for Intelligence).

    Robots need a way to share and “inherit” knowledge and abilities. OM1 is an open source robot domain transferable “brain” based on a trained #LLM. I don’t know how to evaluate the usefulness of the model’s knowledge and how much NLU to Turtlebot4 interface code I will have to write to use #OpenMind_OM1.

  27. Looking for opinions about OpenMind OM1 as a source for reusable #Robot_Intelligence. I run 3 robots - 2 #GoPiGo3 robots and a #TurtleBot4 (WaLI - Wallfollower Looking for Intelligence).

    Robots need a way to share and “inherit” knowledge and abilities. OM1 is an open source robot domain transferable “brain” based on a trained #LLM. I don’t know how to evaluate the usefulness of the model’s knowledge and how much NLU to Turtlebot4 interface code I will have to write to use #OpenMind_OM1.

  28. Looking for opinions about OpenMind OM1 as a source for reusable #Robot_Intelligence. I run 3 robots - 2 #GoPiGo3 robots and a #TurtleBot4 (WaLI - Wallfollower Looking for Intelligence).

    Robots need a way to share and “inherit” knowledge and abilities. OM1 is an open source robot domain transferable “brain” based on a trained #LLM. I don’t know how to evaluate the usefulness of the model’s knowledge and how much NLU to Turtlebot4 interface code I will have to write to use #OpenMind_OM1.

  29. @pythonhub

    Very cool concept - my home is a bit too small to sport a bot with the XLeRobot footprint, but I already have the tiny WALL-E. (look real closely at the Git repo photos - top shelf)

    I vote XLeRobot to be the next gen TurtleBot! (Since iRobot sank the TurtleBot4 we need TurtleBot5 candidates.)

  30. Visiting trappedinside.ai/ got me thinking
    Carl has been rebooted, for safety, and updates:

    pi@Carl:~/Carl $ grep Booted stats/stats.year.*
    stats/stats.year.1:Days Booted This Year: 105
    stats/stats.year.2:Days Booted This Year: 56
    stats/stats.year.3:Days Booted This Year: 53
    stats/stats.year.4:Days Booted This Year: 16
    stats/stats.year.5:Days Booted This Year: 13
    stats/stats.year.6:Days Booted This Year: 9
    stats/stats.year.7:Days Booted This Year: 9

  31. My Robot Carl is 7 Years Old Today

    August 22, 2018 Carl was "born".

    In his seven years, he has:
    - been "awake" 93% (56,935 hours)
    - traveled 3.9 km
    - dock and undocked 5724 times
    - turned around almost 6952 times
    - burned through 12 sets of NiMH rechargeable batteries
    - spoken 34380 phrases

  32. A Robot Has Got To Speak His Mind!

    This morning my robot Carl said something unusual - "Unable to undock!"

    It has been so long since I heard him say that, over two years in fact. I had forgotten he can recognize something is blocking his intended path after his battery has been fully charged.

    I moved the bag and heard:

    2025-06-07 13:11|Initiating dismount.
    2025-06-07 13:11|Dismounting
    2025-06-07 13:11|New Charging State Not Charging
    2025-06-07 13:11|Dismount complete

  33. @victor_stephenson

    This should revolutionize home robotics! We need it to be an ISO robotics standard and noone should buy a robot that does not either come with it, or has an option to add it to the purchase. I have two 24/7/365 robots that have used rube-goldberged mechanical mating of electrical contacts for 1A 12v charging for years.

  34. ROS 2 Success with ReentrantCallbackGroups

    Robot "Kilted-Dave" was not able to declare docking success from the dock callback because the battery_state callback was not allowed to execute to update the new charging state.

    I had already setup callback groups but failed to initialize the battery_state callback group as reentrant.

    Single line fix to a problem plaguing my since he was "Humble-Dave" on

  35. ROS 2 GoPiGo3 Robot “Kilted Dave” is happy to note the passing of ROS 2 Kilted Kaiju out of beta.

    Pictured here as he receives the official release as an over-the-air update:

    (Dave is six years old and runs ROS 2 24 hours a day, 7 days a week. He recently underwent a motors-overhaul and required his wobbly wheels replaced.)

  36. I heard the sound of my ROS 2 Jazzy robot WaLI (Wallfollower Looking for Intelligence) rotating in search of his dock to recharge.

    "Head spinning" WaLI was trying to push my ROS 2 Kilted Kaiju robot Kilted Dave off the dock.

    Lesson learned: they still need me.

  37. Is On My Mind..

    Successfully installed the software to Server on

    Successfully installed ROS 2 Kilted Kaiju (arm64)

    Successfully ported robot "HumbleDave2" to be "Kilted Dave" and he sensed his battery was fully charged and got off his dock for the first time under the beta release of ROS 2 Kilted Kaiju

    Haven't managed to build the ROS 2 driver yet - so Kilted Dave isn't going to go wandering yet.

  38. My Pets - Never need to taken out to do their business, don't need to be fed, never make a mess while I'm away...BUT they do demand I teach them something way too often.

    TurtleBot5-WaLI (Wallfollower Looking For Intelligence) is running ROS2 Jazzy, and HumbleDave2 (Just Dave) is running ROS2 Humble Hawksbill.

    TB5-Wali has been "alive" for 2056 hours since Jan 9, 2025.

    HumbleDave2 has self docked 1283 times in his four years of life to date.

  39. Everyone loves Docker but me.

    My robot GoPi5Go-Dave ran Humble in a Docker container
    ( was not available for Pi5 )

    The died so I downgraded Dave to a Pi4 - no more Docker, no more two OS to update, no more hardware interface nightmares.

    ROS 2 "Humble Dave 2" got on his dock, charged for 2.4 hrs, got off his dock, and promptly complained the "Future has no done attribute"

    Isn't that the definition of the future?

    ROS Joke: Just need to fix the future.

  40. Robot Reincarnation Is Real

    The powering my GoPi5Go-Dave blew its I2C bus "out of the blue". He no longer managed his battery level and died.

    Robot Dave first existed as "Humble Dave" from 2021 to 2023, and was reincarnated as "GoPi5Go-Dave from 2023 to 2025.

    Again reincarnated, "Humble Dave2" is alive on his dock, awaiting further enlightenment.

    Special thanks to @CleoQc of for putting Dave back on the straight and narrow.

  41. What's on my mind?

    Disappointment and Disillusionment!

    - Invested 7 yrs in
    - Created nodes for , , , , , , , , and

    - My robot cannot safely and reliably navigate in my complex home environment.
    - No slower turns, no inflation value can fix

    I'm done, destroyed, no strength left for "one more try". GoPi5Go-Dave is on the shelf with other "reached its limit" robots.

  42. When Your Robot Is Lying To You

    I discovered my 6 year old robot Carl was lying to me about his age.

    The story: forum.dexterindustries.com/t/w

    (Robot Carl thinks he is special because he has a unique DOI - Digital Object Identifier.)

  43. In ROS there is a URDF file (Universal Robot Description File) which allows the robot visualization application to show a symbolic robot and the robot and state publishers to update where the robot parts are located as the robot moves.

    These files can be amazingly complex to get the values correct for every part of a robot to appear in the correct place, and for sensor data to be accurate.

    Over the years I have created files. Today the GoPi5Go-Dave file:

  44. Finally got around to diagramming ROSbot GoPi5Go-Dave's Software Architecture

  45. Progress - GoPi5Go-Dave Robot Is Docking and Undocking 24/7 managed by ROS 2 nodes.

    2024-08-26 19:16|dave_node.py| ---- GoPi5Go-Dave ROS Docking 928 : success at battery 10v after 2.5 h playtime

    His stack:
    - dave_node
    - docking_node
    - [slam_toolkit and nav2]
    - [RTABmap]
    - battery_node
    - gopigo3_node
    - odometer node
    - ydLIDAR node
    - oak_d_w_ros2 node
    - teleop_joy node
    - say_server node(Piper-TTS)
    - safety_shutdown node
    - I2C mutex

  46. @drfootleg
    > ROS with real robot

    Not a trained ROSer, but figured out from first robot node and keyboard driving, joystick driving, adding LIDAR, and URDF for visualizing my bot in rviz2 on the desktop, up to running SLAM on the bot.

    I created a custom "ROS 2 GoPiGo3 Robot Node", and then a set of guided "tests" with shell script commands to help remember how to do things.

    Perhaps some useful stuff:

    github.com/slowrunner/ROS2-GoP

    and the node is at github.com/slowrunner/ROS2-GoP

  47. @themagpi

    > Raspberry Pi projects?

    Solved a month long mystery!

    How to manage Raspberry Pi I2C device access inside ROS2/Ubuntu/Docker container **AND** outside the container in Raspberry PiOS Bookworm?

    Docker invocation must map both the bus AND the mutex lock folder /var/lock/


  48. @drfootleg Another tip that has been plaguing me for a month!

    If you have processes inside a Docker container and other processes outside the Docker container that need mutex protection such as I2C bus or SPI bus accesses, you need to map the bus (obviously) **and** the mutex folder!

    I had the sensor access working great but could not figure out why my inside and outside "mutex protected" accesses were colliding...