π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Kerfuffle 03:05 - Actual Start 06:50 - Teensy is Responsible For Hand Control Now 18:26 - Teensy and ROS2 Clocks are now in Sync! 37:00 - Some Small Optimizations 54:14 - Orienting Jugglebot is Still Troublesome... 1:03:52 - Demo Time! 1:12:28 - Coordinate Frame Mismatch Strikes Again 1:20:56 - Why Does Jugglebot Sometimes Miss? 1:42:47 - Bellows Update 1:50:44 - No Stream Next Week 1:51:06 - Final Remarks
PDJ Weekly Livestream # 55 - Time for Jugglebot to Moonlight in the NBA? π€Harrison Low2025-05-16 | The last two weeks have had their fair share of ups and downs, but the result is very cool! I'm keen to show you the progress π
Filmed on May 16th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Kerfuffle 03:05 - Actual Start 06:50 - Teensy is Responsible For Hand Control Now 18:26 - Teensy and ROS2 Clocks are now in Sync! 37:00 - Some Small Optimizations 54:14 - Orienting Jugglebot is Still Troublesome... 1:03:52 - Demo Time! 1:12:28 - Coordinate Frame Mismatch Strikes Again 1:20:56 - Why Does Jugglebot Sometimes Miss? 1:42:47 - Bellows Update 1:50:44 - No Stream Next Week 1:51:06 - Final RemarksPDJ Weekly Livestream # 69 - Last Stream of 2025!Harrison Low2025-09-26 | Wowee this was a busy week. Keen to show you the results!!!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:26 - Stream Starts 05:04 - Ball Butler Works! (Mostly) 09:20 - Controlling Each Axis 25:55 - Inside the Base 28:19 - Strange Misalignment in the Big Gear 30:20 - Hand Motor Thermistor 31:50 - Changes to Ball Butler's PCB 33:16 - Some Dodgies... 50:07 - A New Favourite Tool 53:00 - A Rant on Terminating Strings 1:14:50 - Demo! 1:17:55 - My Plan for the Rest of the Year 1:19:50 - A Problem with CAN 1:23:42 - Continuing on My Plan For the YearPDJ Weekly Livestream # 68 - Ball Butler Redesign is Done!Harrison Low2025-09-19 | This week involved a lot of CAD work, which was good fun! Now, pretty much everything has been printed off so all that's left is construction and code! I'm hopeful that next week could see some throws!!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 Intro Countdown 00:27 Stream Starts 01:50 Old Ball Butler Deconstruction 06:20 Lid Updates 18:44 Base Updates 23:50 Hand Actuator Updates 35:35 Uncertainties Regarding the Hand 46:25 Goal for Next Week 48:55 One Way To Throw Higher 52:10 Should Ball Butler Have its Own E-Stop? 56:45 Plan for Today and Closing RemarksPDJ Weekly Livestream # 67 - At Last! Ball Butler Can Throw!Harrison Low2025-09-12 | There was a lot of frustration this week. But at last, Ball Butler can finally throw, and I can see light at the end of the tunnel!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:25 - Stream Starts 01:55 - ROS is Back! (Probably) 11:34 - AMT21 Wiring Gripe 17:04 - Getting the Hand to Throw... 44:40 - Misc. Problems 56:50 - Implications of a Longer Hand Stroke 1:01:12 - What About a (Semi) Mechanical Thrower? 1:05:50 - Ball Butler's Floppy Lid 1:14:55 - What if the Base Flexes? 1:20:00 - Yaw Inverse Kinematics 1:28:36 - Final RemarksPDJ Weekly Livestream # 66 - Finally Learning to do Things Properly!Harrison Low2025-09-05 | This week I couldn't help but feel that I should do a little more planning for the next stages of Ball Butler. These plans have taken some time to put together, but I've already found a few problems that I undoubtedly would've run into later if I hadn't done this planning now.
This likely won't be the most entertaining stream, but I believe this is work that had to be done, and I think it will hopefully mean that future development goes much more smoothly than what I'm used to.
π Jugglebot ROS / RQT Graph (as of today): drive.google.com/file/d/1npYvM144cvTQAy2CahwV4I08MuyJfVg9/view can_interface_node should also be here, but since I didn't have the robot connected when I generated this graph, that node had already shut down by the time rqt loaded
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:24 - Stream Starts 01:18 - Hand Encoder Update 11:00 - CAD Updates 25:30 - CAN Frame Update 47:26 - Programming Block Diagram 1:10:00 - System-Level Schematic 1:18:30 - Ball Butler Power Update 1:33:50 - Main Ball Butler Schematic 1:37:10 - The Value of Planning 1:42:00 - Early Plans for the Ball Dropper 1:50:10 - Update on the Thermal Camera 1:55:00 - 2025 Stream UpdatesPDJ Weekly Livestream # 65 - Its Been an Interesting Few Weeks!Harrison Low2025-08-29 | This week saw a lot of frustration, but at least I was able to channel that into doing some documentation and planning that I really should've done some time ago... Better late than never!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:27 - Stream Starts 02:00 - What will Throws to Jugglebot Look Like? 15:25 - Plan for Inter-Robot Communications 27:40 - Jugglebot to Ball Butler Commands (Plan) 33:40 - Ball Butler to Jugglebot Feedback (Plan) 36:03 - How Will the Jugglebot and Ball Butler Clocks be in Sync? 40:00 - Back to BB to Jugglebot Feedback 46:25 - How Will Ball Butler 'Think'? 52:24 - Updates to the Schematic! 1:00:27 - The Most Complex Part I've Ever Modelled 1:15:00 - Some Problems With My Current Plan... 1:28:56 - Thermal Camera! 1:39:10 - Final RemarksPDJ Weekly Livestream # 64 - Things Are Looking Good For Ball Butler!Harrison Low2025-08-08 | The last week was a surprisingly productive one, with big developments happening in both the design and control of Ball Butler! π
π USB to CAN Adapter: https://core-electronics.com.au/usb-to-can-adapter-model-a-stm32-chip-solution-multiple-working-modes-multi-system-compatible.html
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:30 - Stream Starts 01:20 - Getting the ODrive Micros Working 15:00 - CANundrum Once Again? 17:00 - Demo! 25:25 - How Will Ball Butler Know the True Thrower Angle? 36:13 - What To Do About the Hand Motor? 59:22 - What To Do About Poor Electronics Access? 1:09:40 - Some Silly Things 1:16:44 - Cheap Mocap Markers? 1:21:54 - On SPI Cabling 1:25:40 - Closing RemarksPDJ Weekly Livestream # 63 - Ball Butler is ALMOST Alive!Harrison Low2025-08-01 | I tried my best to get Ball Butler functional for this stream, but unfortunately time was not on my side. The robot is now built, but I'm running into (hopefully small) problems getting the ODrive Micros working...
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:26 - Stream Starts 01:51 - Where Things Were Last Week 02:30 - Current Design 09:42 - Some Serendipity 15:45 - Base CAD Changes 43:00 - Pitch Axis CAD Changes 1:02:43 - Demo! 1:17:20 - Ongoing Problems... 1:26:05 - On Braking the Hand 1:29:51 - What's Next? 1:31:14 - Emoji Keyboard is Fixed! 1:33:35 - Onshape API Export Update 1:37:50 - Final RemarksPDJ Weekly Livestream # 62 - So Much Tedium: Done!Harrison Low2025-07-25 | This week had a lot of tedium with wiring and putting together the circuit board for Ball Butler. Thankfully every component that I've tested (so far just power conversion and CAN) has worked flawlessly, and I'd be surprised if there are issues with the other parts. We're getting there!
Filmed on July 25th, 2025
=========== Links Specific to This Stream =========== π "Life Changing Tips for Wicking Solder": youtube.com/watch?v=IjOh5ShVX_w
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:27 - Stream Starts 01:48 - Ball Butler Circuit Board is Done! 21:03 - CAD Updates 52:24 - I Now Know How to 3D Print Smooth Curves! 1:00:36 - Exporting from Onshape (Using an API) 1:15:55 - Cool Things That You Suggest I Buy 1:21:50 - Final RemarksPDJ Weekly Livestream # 61 - Its Time to Build!Harrison Low2025-07-18 | I've decided to properly knuckle down and get Ball Butler V0 DONE. We now have (what I believe to be) finished CAD, so the next step is to print everything off, wait for some stuff to arrive, then test it out! π€π€
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:21 - Stream Starts 02:23 - Fun Adjacent Though - Reposition Ball Butler's Hand 11:01 - Slip Rings Are Cool! 24:45 - Removing the Encoder From a Brushed Motor Worked! 30:30 - CAD Tour! 31:17 - The Base 39:22 - The Lid 46:45 - Fasten the Lid to the Base 51:30 - The Arms 54:28 - Adding the Main Ring 58:13 - Putting it All Together! 1:04:36 - Wiring and General Aesthetics 1:12:22 - Whole Room CAD 1:16:25 - On Braking the Hand 1:20:42 - FeatureScript to Export 3MF?? 1:22:00 - How to 3D Print a Smooth Curve? 1:27:15 - Pls Help Me Fix Mu Emoji Keyboard 1:29:32 - How to Get Balls Into Ball Butler? 1:36:09 - Final RemarksPDJ Weekly Livestream # 60 - Bye-Bye Belt Drives π Harrison Low2025-07-11 | This week saw a lot of frustration with Onshape's FeatureScript, but the end result is a much-improved process to create a standard parts library, and a big change to how the base of Ball Butler will be actuated!
Work has also begun on a testing rig to validate the feasibility of an almost entirely mechanical throwing mechanism - an idea I'm very interested in!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:18 - Stream Starts 01:19 - Fun Tangential Thought: Juggling Room 13:35 - Feedback: Why BLDC Motors? 21:55 - Feedback: Why Worry About Impacts? 27:08 - Feedback: Why Use Belts at All? 29:00 - Bye-Bye Belt Drive! 1:06:18 - Feedback: Off-Axis Encoder with Gears/Belts 1:13:10 - Is a Mechanical Thrower Feasible? 1:26:45 - Mechanical Thrower Testing Rig CAD 1:40:10 - An Aside on Printing With Supports 1:48:00 - Onshape Library Updates 2:05:55 - On Trad ClimbingPDJ Weekly Livestream # 59 - My First Belt Drive is Looking Good!Harrison Low2025-07-04 | Ball Butler's base is coming along now! There are still a few main components left to design, and I have a couple lingering questions that may only be answered once prototypes are built. All in all, I'm happy with how Ball Butler is developing!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:26 - Stream Starts 01:00 - Pitch Axis String Length Discrepancy 12:39 - Does Anticogging Help Position Accuracy? 20:04 - Base Actuation CAD 41:34 - Other CAD Updates 45:16 - Off-Axis Encoder? 52:40 - No (Electrical) Braking! 1:01:46 - Using a Spring to Throw the Ball? 1:06:42 - Ball Butler's Power Situation... 1:13:16 - A Better Onshape Library 1:18:00 - General Thoughts 1:23:46 - Update on my Electronics Binder 1:26:13 - Spring Thrower ModellingPDJ Weekly Livestream # 58 - Everything is a Lot Faster the Second Time Around!Harrison Low2025-06-20 | Ball Butler is coming along! It's nice to see how easily some of these things come together when you know what you're doing...
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:28 - Stream Starts 02:10 - Fun Tangential Thought - Bounce Piano Jugglebot! 06:50 - Motor Testing Went Well! 23:56 - How Precisely Can We Control These Motors? 40:10 - Changing the Base Actuation 45:15 - CAN Bus Progress 1:08:35 - To Use Only ODrive Pros? Or Pro and v3.6? 1:13:38 - CAD Updates 1:25:10 - Custom Encoder PCBs? 1:27:50 - Demo of Tensioning Mechanism 1:30:22 - On Cable Routing 1:34:40 - Hand Bumper Ideas 1:40:15 - How to Store/Use Hookup Wire?? 1:43:40 - Final RemarksPDJ Weekly Livestream # 57 - Progress on Ball Butler is Going Well!Harrison Low2025-06-13 | Ball Butler is coming along! Lots of fun (and frustration) was had over the last two weeks.
π Magnetic Field Viewing Film: https://aussiemagnets.com.au/products/magnetic-viewing-film?srsltid=AfmBOoqCjoGQD84t4aoe602fIhJ-5p9DMo0Vzgc95dVD4Whw2mcKpLfI
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:29 - Fun Tangential... Question 05:31 - Stage 2 (Pitch) is Going Great! 25:20 - Tedium of Encoder Research... 39:55 - Setting up an Onshape Library the Right Way 44:26 - I'm a Static Factory π 48:10 - Building my Electronics Components Stockpile 52:54 - Responding to Feedback (from Zulip) 54:27 - Idea: Hand-Stop End Bumper 1:03:06 - Issue: Asymmetric Hand Might Twist 1:08:33 - Suggestion: Don't Tie the Hand String to the Spool 1:14:06 - Issue: Ball Butler May Not be Accurate Enough 1:18:42 - Suggestion: You Can Do Just About Anything, But Not EverythingPDJ Weekly Livestream # 56 - Its Time for Jugglebot to Have a FriendHarrison Low2025-05-30 | I've finally decided to pull the trigger and commit to building Jugglebot a friend - a small, 3DoF robot that will be capable of launching balls to Jugglebot (or me!) on command. Hopefully this will minimize the amount of resetting I need to do by hand!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:28 - Side-Quest Introduction 04:55 - Some Cool 3D Print Ideas 09:55 - Ball Butler - The Hand 27:27 - Ball Butler - Stage 2 (Pitch Control) 39:39 - Quick Onshape Part Library Tangent... 42:14 - Back to Stage 2 49:39 - Should I Use (Secondary) Absolute Encoders? 55:22 - Ball Butler - Stage 3 (Yaw Control) 59:53 - Considering Proximity Sensors 1:01:53 - On the Dread of CAD-ing a New Part 1:04:44 - How to Load Balls into the Hand? 1:11:11 - Am I Committed to This Side-Quest? 1:13:50 - Battery Power? 1:15:28 - Motion Capture Geometry is Driving me Mad 1:23:34 - On My Design Process 1:26:23 - Aaed Musa InspirationPDJ Weekly Livestream # 54 - Jugglebot is Almost Shooting Hoops πHarrison Low2025-05-02 | This week had its fair share of boring tasks (like waiting for 2+ hours for the calibration poses to run...) but has absolutely been for the better! We can now (fairly) precisely command Jugglebot to a desired pose and it will be extremely close to that pose when it arrives!
The next step is to get Jugglebot shooting hoops... We're very close!
Filmed on May 2nd, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:24 - Stream Starts 02:20 - Banger Beats π΅ 04:53 - How I'm Calibrating for Orientation 14:23 - 2174 Poses is a Lot to Search Through! 22:08 - Does Orientation Calibration Work? 39:20 - Small Update on Jetson Memory 42:40 - Update on Mocap Handling 51:50 - Can Jugglebot Shoot Hoops? 1:00:09 - What's Going on Here? 1:08:15 - How to Improve Hand Control? 1:23:40 - Final RemarksPDJ Weekly Livestream # 53 - Jugglebot Finally Obeys! (as long as it stays flat)Harrison Low2025-04-18 | Finally! This week had some scary moments (while tuning a PID controller for the whole robotβan idea I've put aside for now) but has ended on a very high note! I'm keen to share my findings with you.
Filmed on April 18th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:32 - Stream Starts 01:16 - Updated the Base Markers (again) 10:38 - Found a (Partial) Source of Position Discrepancy! 16:07 - System-Level PID Control? 24:57 - Offset Grid Compensation Works Extremely Well! 35:33 - How Long Does This Correction Take? 39:10 - How Did I Structure This Code? 40:45 - Possible Improvements 50:42 - Some Strange Things... 53:50 - No Stream Next Week 54:43 - Final Remarks (Wobbly Printer Update)PDJ Weekly Livestream # 52 - Robot Control is Not Simple :)Harrison Low2025-04-11 | I've got a lot of small (but fun!) updates for you all, as well as some... disappointing... results from the leg measuring process...
Filmed on April 11th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:28 - Stream Starts 01:18 - Fun Tangential Thought 06:50 - I Bought a Bambu H2D (and I love it) 15:38 - I Finally Have a Good Stock of Bolts 16:40 - Getting the Hang of Motion Capture 33:13 - Leg Measuremrents Didn't (Obviously) Help... 1:00:43 - Time for Closed-Loop Control? 1:07:20 - On Changing My RationalizationsPDJ Weekly Livestream # 51 - Jugglebot Lives Once Again!Harrison Low2025-03-28 | At last, Jugglebot is back together again! Unfortunately I haven't been able to test it yet, but good things come to those who wait (or so I'm told...). In the last week I was also able to make some progress on two other side projects: the development of new linear actuators, and a 'ball primer' to throw new balls in to Jugglebot.
Filmed on March 28th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 01:09 - Jugglebot is Back Together Again! 06:00 - Fun Tangential Thought 09:00 - Digging Deeper Into Leg Data... 32:05 - One of the Bellows is Broken... 33:55 - New Linear Actuators 1:04:56 - Ball Primer Update 1:19:53 - New 3D Printer?? (Bambu H2D)PDJ Weekly Livestream # 50 - Jugglebot is Ready to be Reconstructed (at last!)Harrison Low2025-03-21 | Finally, the testing of the actuators is done! This testing wasn't as smooth (or effective) as I'd have liked, but I think it's as good as we're going to get for now... At last, Jugglebot can be rebuilt!
Filmed on March 21st, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:28 - Stream Starts 01:33 - Fun Tangential Thought 06:50 - JLC3DP Parts Arrived! 10:44 - Initial Actuator Tests 28:48 - Data is Decent, But Not Perfect... 44:11 - This Process Was NOT Smooth Sailing... 51:22 - "Unbalanced Phases" Error Returns 57:18 - These Linear Actuators Have Many Problems 1:05:42 - Rusty Bolt Problem 1:10:12 - Final RemarksPDJ Weekly Livestream # 49 - Its Almost Time to Measure Jugglebots Legs!Harrison Low2025-02-28 | This was a satisfying week! The ICs worked perfectly, and setting up the CAN bus to log linear scale data was cruisy! It's amazing how easy things can be when you know what you're doing!
Now we're just waiting on some parts to arrive and we can (finally!) measure Jugglebot's legs π
Filmed on February 28th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:13 - Stream Starts 01:15 - Integrated Circuits Worked Perfectly! 06:30 - Linear Slider Oscilloscope Demo 13:00 - We Can Now Sample at 1000Hz! 14:35 - This Process Was Not Without its Problems... 20:30 - Leg Measurement Demo 30:56 - There are Still Some Improvements to Make... 39:20 - No Stream Until 21/3PDJ Weekly Livestream # 48 - (Mis)Adventures with Linear ScalesHarrison Low2025-02-21 | This was a very frustrating week at times!
Filmed on February 21st, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:26 - Stream Starts 02:12 - Fun Tangential Thought 07:03 - Taking a Pause from Geometry Optimization 20:27 - (Mis)Adventures with Serial on Linux 24:25 - Serial Data is Noisy! 46:40 - Can we Use the 1 m Scale After All? 54:55 - Closing RemarksPDJ Weekly Livestream # 47 - Geometry Optimization UpdateHarrison Low2025-02-14 | This was a slow week at times... Lots of waiting for data collection and optimizers to run. Some progress has been made towards finding a more optimal/correct robot geometry, but there's still some work to be done.
Filmed on February 14th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:18 - Stream Starts 01:46 - Cutting Down on Slop 07:53 - A Hidden Source of Error? 22:53 - How Many Unknowns Do We Need to Optimize? 30:00 - How to Fit ANY Model to the Collected Data? 37:50 - What Data Are We Working With? 45:07 - What Optimization Techniques am I Trying? 59:54 - Next Steps 1:08:00 - Adjusting Expectations 1:12:00 - More Detail on the Recorded DataPDJ Weekly Livestream # 46 - Mocap UpdateHarrison Low2025-02-07 | I got a lot done this week! So much learning about QTM (the motion capture software) which has already been extremely helpful. We're almost ready to (FINALLY) do a robot geometry calibration - then we should be able to control the platform to *actually* go where we want!
Filmed on February 7th, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:25 - Stream Starts 00:55 - QTM is VERY Powerful! 20:12 - Now We Can Randomize (most of) the Base Markers! 35:23 - Jugglebot Cover 40:50 - How to Know the Platform Centroid? 58:37 - First Steps to Robot Calibration! 1:19:46 - Thoughts on Hand TrackingPDJ Weekly Livestream # 45 - Mocap UpdateHarrison Low2025-01-31 | This week involved a lot of small tasks, as well as some great learning about how my motion capture system works and how I might better make use of it.
Filmed on January 31st, 2025
=========== Links Specific to This Stream ===========
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:25 - Stream Starts 01:00 - Mocap Position Discrepancy 04:04 - Is Jugglebot's Origin Where it Should Be?? 13:20 - Why Reinvent the Wheel? 17:50 - So Where Should We Place the Base Markers? 51:20 - Misc Updates 52:00 - Ball Wall 55:08 - Jetson Backup (Finally...) 56:50 - Progress on Docker Container For Remote Dev Work 59:40 - What is the "Best Way Forward"? 1:07:05 - Some Thoughts on Jugglebot's "Primer" 1:11:15 - America's Got Talent! (Does Jugglebot?) 1:16:34 - Retroreflective String Ball 1:18:30 - Platform Markers 1:24:09 - Final Remarks / What's NextPDJ Weekly Livestream # 44 - Squashing Some Bugs at Last!Harrison Low2025-01-24 | This week was a frustrating one at times! But thankfully there was light at the end of the tunnel and Jugglebot has emerged stronger and more capable than ever! Not long now until we can do some partner juggling!! π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:14 - Stream Starts 01:04 - I Found the Timing Bug From Last Week! (Probably...) 03:55 - Linig Up The Dropper Was Too Tedious! 04:41 - DC_BUS_OVERCURRENT 13:23 - On Teaching How Jugglebot Works 15:03 - The Platform Can Align The Hand... Right? 21:25 - Didn't Need to Rotate the Mocap Data After All... 24:13 - Does it Work? (Solving Errors on the Fly) 29:57 - Demo Time! 41:16 - Active AND Passive Catch? 46:34 - Updated How ACTIVE_STATES are Handled 52:58 - Improvements to the Dropper 59:05 - I've Kicked Yet Another Marker... 1:02:30 - How to Track the Platform? 1:08:15 - Bongo Jugglebot! 1:13:20 - Some Thoughts on Partner JugglingPDJ Weekly Livestream # 43 - Can Jugglebot Catch a Tracked (Dropped) Ball?Harrison Low2025-01-17 | This week I mostly focussed on testing my claim from last week that 50ms is too tight of a time margin to have Jugglebot reliably catch a ball. While there's still a bit of work to be done to fully explore this hypothesis, we've now got a fairly solid foundation to run further tests.
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:23 - Stream Starts 03:40 - Time to Get Some Metal Bits 09:50 - Hand ODrive Needed a Reset 12:50 - Is 50ms Too Tight of a Window? 30:08 - Demo Time! 53:03 - Potential Fix for Bisecting Ball ProblemPDJ Weekly Livestream # 42 - Lots of Updates for the First Stream of the Year!Harrison Low2025-01-10 | Since our last stream, I've continued along a few different streams of Jugglebot development and I'm excited to share this progress with you all!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:25 - Stream Starts 01:15 - Black Marker Caps Stop My Cats πΌ 02:45 - Why Won't That Leg Work?? 08:30 - Jugglebot Can Catch From Me! 23:35 - Improved Boot Sequence 26:03 - Finally Logging Each ROS2 Session 34:56 - Updating the Hand Control 50:50 - Making the Hand Comply 1:23:35 - (Mis)Adventures With My Testing Rig 1:31:25 - Closing RemarksPDJ Weekly Livestream # 41 - Motion Capture UpdateHarrison Low2024-12-13 | This last week has been a little slower than usual; I've had a few other things going on and have been fiddling with the motion capture software (QTM) to get a better feel for how it works.
That said, we've now got some decent ball tracking that's capable of handling multiple balls at once and (minor) occlusions, with fairly accurate predictions of where the ball(s) will land!
This is a big step towards Jugglebot being able to 'partner juggle' with me. Very keen! π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:10 - Stream Starts 00:45 - Calibration Tools are Safe and Sound 01:50 - Qualisys Site Visit 10:40 - Ball Tracking is Working Well! 31:25 - Can This Be Done Differently? 34:10 - Can Normal Cameras Track The Balls? 40:00 - Calling All ROS2 Developers! 43:32 - Last Stream of the Year! 46:35 - Tracking Data Will Be on Github (Soon) 48:15 - Can We Change How We're Tracking the Balls?PDJ Weekly Livestream # 40 - Ive been wanting this for YEARS!Harrison Low2024-12-06 | FINALLY! We have motion capture! This is something I've been dreaming of owning since the very beginning of this project, so you can imagine that I'm very excited to finally have it set up!
There's a TON to get through in this stream, so buckle up!
Filmed on December 6th, 2024
================= Links specific to this stream ================= π Qualisys Track Manager (QTM) Docs: docs.qualisys.com/qtm-rt-protocol
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:21 - Stream Starts 02:15 - Motion Capture is Here! 03:37 - How Does Motion Capture Work? 25:33 - My Plan for Mocap 37:40 - Mocap Demo! 54:33 - What's Next Here? 1:02:00 - Updated Motor States 1:12:25 - Hand Competition!PDJ Weekly Livestream # 39 - Motion Control Update (and others)Harrison Low2024-11-15 | It's been a very interesting week, and I'm excited to share the progress with you all. I finally feel that I have a (relatively) clear idea of where to go from here, which is a fantastic feeling!
Note that there will be no stream next week, and likely not one the week after.
Filmed on November 15th, 2024
================= Links specific to this stream ================= π Mark Mueller's Paper on Motion Primitives for Quadcopter Trajectory Generation: https://sci-hub.se/10.1109/TRO.2015.2479878
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:15 - Stream Starts 01:05 - ROS2 Remains... 03:05 - New Hardware Helped a Lot! 11:23 - Question on High-Speed Camera + Lights 15:07 - New CAN Connector Mount 18:08 - E-Stop is Working Again! 22:45 - We Need to Be Careful When Jugglebot is Active... 37:00 - Motion Control is Starting to Make Sense! 56:00 - No Stream Next Two Weeks (probably...)PDJ Weekly Livestream # 38 - Hardware Upgrades (Finally...)Harrison Low2024-11-08 | Quite a few things have happened since the last stream! We've finally got movement again, and some very significant upgrades have been made to Jugglebot's hardware.
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:28 - Stream Starts 01:49 - The Bearings are IN 12:00 - ACTIVE State is Better Now 14:14 - Deutsch Connector Boots 15:45 - Retroreflective Balls Update 22:35 - Roll-Our-Own Motion Planner? 25:49 - Hand Testing Rig? 34:23 - Is ROS2 Right for Jugglebot? 39:25 - Final ThoughtsPDJ Weekly Livestream # 37 - State Machine Updates and a Few Little ThingsHarrison Low2024-11-01 | Quite a few things have happened since the last stream! We've finally got movement again, and some very significant upgrades have been made to Jugglebot's hardware.
Filmed on November 1st, 2024
================= Links specific to this stream ================= π Teensy docs: pjrc.com/store/teensy40.html
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:33 - Stream Starts 01:16 - Teensy and ODrives are Now in Sync 08:00 - Encoder Search is More Reliable 11:11 - Error Handling has Improved Dramatically 20:49 - Demo! 37:57 - Ruckig Returns? 50:16 - Thoughts on Juggling Approach 55:55 - CAN Cable Connector is Fixed! 1:07:03 - New Balls Arrived! 1:15:55 - Jugglebot Needs Periodic Recalibration 1:17:30 - Missing ROS Messages π€ 1:20:40 - First CF Nylon Parts 1:26:11 - Final RemarksPDJ Weekly Livestream # 36 - Mocap and State Machine UpdatesHarrison Low2024-10-18 | I've finally made up my mind on the motion capture system and have placed the order! Now we need to get the code up to scratch before it arrives...
I've made quite a few changes to the state machine in the last week, including: giving Jugglebot a memory, improving the heartbeat reception, and hugely improving error handling (though this isn't done yet...)
Filmed on October 18th, 2024
================= Links specific to this stream ================= π Motion Capture Camera (Miqus M3): qualisys.com/cameras/miqus/#
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Coutdown 00:24 - Stream Starts 00:50 - MoCap is on its Way! 07:34 - Heartbeat Registry was SLOOW 18:00 - Improving `run_encoder_search`? 23:09 - Jugglebot Has a Memory! 27:32 - Demo Time! 35:14 - Who Should Publish to /robot_state? 38:27 - Addressing Comments 40:35 - How to Propagate Hardware Errors to the State Machine? 48:30 - How to Designate Control Authority? 52:25 - Final RamblingsPDJ Weekly Livestream # 35 - State Machine Update (Finally!)Harrison Low2024-10-11 | I've finally bit the bullet and have turned my focus to Jugglebot's code. I've tidied the project's Github page, made some very nice changes to my Linux setup, and started work on getting Jugglebot working within a state machine. I'd say it was a very successful week!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro 00:06 - Stream Starts 01:04 - Update on Linux Setup 03:06 - Github is Cleaner Now 04:38 - Unit Testing is Tricky... 06:54 - Jugglebot Gets a State Machine 11:30 - State Machine Demo 20:27 - Brief Mocap Update 21:11 - Connector Update 22:40 - Closing RemarksPDJ Weekly Livestream # 34 - Slow Mo Update + Chat with JonHarrison Low2024-10-04 | I'm back from a few weeks overseas and I'm very excited to share with you some things that have been cooking in the background for quite some time π
Filmed on October 4th, 2024
================= Links specific to this stream ================= π Freefly Wave slow mo camera: freeflysystems.com/wave
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:26 - Stream Starts 01:10 - Slow Motion! 17:45 - The Shot I Want to Get 28:24 - The Hand Motor Should be Safe Now 35:00 - A Relief for the CAN Bus! 38:22 - Motion Capture for Jugglebot! 41:40 - What's Next? 45:00 - Chat with Jon (Cable Robots) 1:46:16 - A Cool New ToyJugglebot Works! Premiere followup LivestreamHarrison Low2024-10-04 | This stream was run just after the premiere of my latest video (PDJ #22) with the intention of covering some very cool news about meeting another person developing a juggling robot! I also give some 'behind the scenes' looks at the latest video. I hope you like it!
Filmed on the 29th of August, 2024
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
====================================
00:00 - SKIP THIS SECTION 01:08 - Actual start 02:35 - I'm not alone!! 07:23 - Publishing Jugglebot Work? 08:15 - Back to Kai's work (simulations) 11:50 - Jugglebot won't be the first juggling robot 13:53 - Let's talk about Kai's balls 18:26 - Sorry for not replying on Zulip! 21:00 - Chat about the latest video 25:30 - High speed camera 32:00 - The lost magic smoke 38:00 - Final remarksJugglebot Works! Premiere followup LivestreamHarrison Low2024-08-29 | This stream was run just after the premiere of my latest video (PDJ #22) with the intention of covering some very cool news about meeting another person developing a juggling robot! I also give some 'behind the scenes' looks at the latest video. I hope you like it!
Filmed on the 29th of August, 2024
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
====================================
00:00 - SKIP THIS SECTION 01:08 - Actual start 02:35 - I'm not alone!! 07:23 - Publishing Jugglebot Work? 08:15 - Back to Kai's work (simulations) 11:50 - Jugglebot won't be the first juggling robot 13:53 - Let's talk about Kai's balls 18:26 - Sorry for not replying on Zulip! 21:00 - Chat about the latest video 25:30 - High speed camera 32:00 - The lost magic smoke 38:00 - Final remarksMy juggling robot can finally juggle! π€ΉββοΈ | PDJ #22Harrison Low2024-08-29 | JLC3DP 3D Printing Starts at $0.3, Up to $60 New User Coupons: jlc3dp.com/?from=HarrisonLow ------------------------------------------------------------------------- Phew! It was quite a push to get this video finished before leaving for holidays, but I'm so glad I did it; I think the result is great, and I hope you do too!
Very keen to see what you all think. ------------------------------------------------------------------------- There are a ton of links mentioned in this video, so I've tried to group them together:
00:00 - Intro 00:14 - What can Jugglebot do? 01:00 - Robot overview 01:18 - The arm 03:32 - The hand 06:03 - The brain 08:48 - The eyes? 09:19 - Jugglebot's Problems 13:18 - I didn't do this alone 13:44 - What's to come?PDJ Weekly Livestream # 33 - Update | Jugglebot can Juggle!!Harrison Low2024-08-16 | Phew! After a bit more mucking around with timing, Jugglebot can finally actually juggle!! (as in, juggling more balls than it has hands). It's not super reliable and seems very sensitive to a lot of things, but it works!
Filmed on August 16th, 2024
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:23 - Stream Starts 01:00 - Two Ball Juggling! 04:33 - Is This the World Record For Robotic 2 Ball Juggling?? 06:30 - Let's Review Some Recordings 11:40 - Does the Ball Type Matter? 12:54 - Back to Recordings... 16:35 - Throwing Continuously 19:23 - The Timing is All Wrong 22:36 - The Hand is Not Throwing to the Same Height Every Time... 25:26 - Why Not Start With Both Balls in the Hand? 28:10 - Why is There Such A Long Settling Time? 31:28 - Jugglebot's Columns are TIGHT 34:00 - Another Two Ball Demo (to Collect Data) 38:48 - Making the Control More Robust 40:20 - What About Making the Hand Grasp the Ball? 43:31 - How to Set Timing Correctly? 48:40 - This is the Last Stream Until Oct 4th 51:17 - Channel Banner is Looking Nice! 52:00 - Closing RemarksPDJ Weekly Livestream # 32 - UpdateHarrison Low2024-08-09 | I spent most of this week working on getting Jugglebot to juggle 2 balls, and it's very close!
Filmed on August 9th, 2024
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:50 - Stream Starts 02:20 - Update on Mocap Cameras 03:46 - 2 Ball Columns Testing 12:23 - How Does This Work? 23:35 - Timing is Off 25:54 - Interlude on the Dressing Gown 28:45 - How To Do the Timing Better 40:32 - How To Make Loading the Second Ball Easier? 44:50 - Update on Measuring the Legs 46:50 - Discussion on the Launcher and Ball Butler 49:40 - Can We Put a Sensor in the Hand? 57:20 - One More Demo of Columns (attempt)PDJ Weekly Livestream # 31 - UpdateHarrison Low2024-08-02 | This week had a lot of thinking about next steps, as well as a few ventures into possible solutions. I'm excited to share it all with you!
Filmed on August 2nd, 2024
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:40 - Stream Starts 01:23 - How to Fix Orientation Issues? 10:30 - Do Small Geometry Errors Even Matter? 15:55 - How Precisely Can We Measure? 30:03 - I Found a Big Source of Backlash! 33:00 - Enlarging Jugglebot's Hand 34:00 - Throwing with the Bigger Hand 40:25 - What's Next? 46:33 - I'm Going on Holiday at the End of AugustPDJ Weekly Livestream # 30 - UpdateHarrison Low2024-07-26 | This was a fun week! Getting Jugglebot to throw to an arbitrary position was interesting and is so satisfying to watch.
However, I've discovered another gremlin lurking inside Jugglebot, that's making it difficult to orient Jugglebot exactly where I want it.
================= Links specific to this stream =================
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:50 - Stream Starts 01:57 - Demo: Throwing to Arbitrary Position 08:26 - How Do Arbitrary Throws Work? 16:26 - Something is Amiss 35:54 - Hand Upgrades?? 52:20 - Another Pattern for JugglebotPDJ Weekly Livestream # 29 - Update + Throwing!! + Chat with JonHarrison Low2024-07-19 | I've been making good progress with tuning the hand and 'coordinating' the hand and arm (/platform) to move together, and now we're finally ready to try "juggling" with one ball again! I have a good feeling about it this time!! π€π€
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:50 - Stream Starts 02:33 - Previous Catches Were Late? 05:33 - Now "Flat" is *Actually* Flat 07:15 - CAN Bus is Going Strong 11:24 - Let's See What Jugglebot Can Do! 17:46 - "Juggling" One Ball!! 23:18 - What's Actually Happening Here? 29:40 - ROS2 Questions 33:50 - A Silly Bug 37:00 - Basic Logger is Up and Running! 39:12 - rqt_graph 40:22 - Next Steps... 47:00 - Chat with Jon (Jon's Audio is Muted for a Minute) 1:08:10 - Updating Channel Banner and Final RemarksPDJ Weekly Livestream # 28 - UpdateHarrison Low2024-07-12 | The last two weeks have been extremely successful - we've finally figured out what was causing the auto-levelling to need more than one iteration to 'level' the platform, the "auto" part of the auto-levelling works, and we're finally at a point to start using Jon's trajectory generator to get the hand throwing! π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
--- 00:00 - Intro Countdown 00:48 - Stream Starts 01:45 - Levelling Works in One Step! 06:40 - Auto-Levelling Works Too! 08:19 - CAN Logger is Set Up (Mostly) 14:47 - We Have Liftoff! (Demo) 24:36 - How Does the Throwing Work? 38:37 - Some ThoughtsPDJ Weekly Livestream # 27 - UpdateHarrison Low2024-06-28 | What a week! A strange motor problem held me up for quite some time, but at least I now have a better understanding of the ODrive CAN protocol, and I was able to get a few other things done.
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
00:00 - Intro Countdown 00:47 - Stream Starts 01:38 - CAN IDs Gone Wrong 16:43 - Auto-Levelling, Done Right 28:34 - Thoughts on Feedback 31:20 - The Bellows Saga Continues 34:35 - Regen Clamp Box is Done! 39:36 - Camera Upgrade π 43:10 - Concluding RemarksPDJ Weekly Livestream # 26 - UpdateHarrison Low2024-06-21 | This week involved a lot of head-scratching and frustration, but after all that, Jugglebot is now able to calibrate itself to be level! This may not seem like a big step forward, but without this, it would be extremely difficult to make sure Jugglebot is throwing in the direction we want it to. Uneven ground is no longer an issue for Jugglebot π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
00:00 - Intro Seqeuence 00:56 - Stream Starts 02:05 - No CAN Problem After All! 05:00 - All Code is Updated for the New Platform 10:05 - Code Needs Sleep Too! 13:40 - Where are these Scripts on Github? 14:38 - How to Level Jugglebot? 27:10 - How to do this Automatically? 36:00 - New ROS2 Network Graph 39:30 - Jugglebot's Gremlins 42:26 - Will There Be an Update Video Anytime Soon? 46:37 - Update on the Bellows 48:30 - Closing RemarksPDJ Weekly Livestream # 25 - Working SessionHarrison Low2024-06-14 | It's time to install the new platform! Should be a fun stream π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLowPDJ Weekly Livestream # 25 - UpdateHarrison Low2024-06-14 | These last two weeks were filled with a lot of small sub-projects, some of which I'd been putting off for a little while. Finally, the new platform is built and ready to be installed!
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
00:00 - Intro 00:43 - Stream Starts 01:20 - New Platform is Built! 06:26 - Inclinometer Update 15:20 - Electronics on the Platform 17:05 - Not all Temp Sensors are Equal... 22:25 - Another CAN Problem... 25:00 - Power Dissipation Progress 31:28 - Printing the Bellows (or not...) 37:40 - Tracked Balls? 43:00 - Jugglebot Onshape is now Much Tidier 47:00 - Closing ThoughtsPDJ Weekly Livestream # 24 - UpdateHarrison Low2024-05-31 | This week was a lot of CAD and familiarizing myself with Onshape. Overall I like it and I'm keen to use it more throughout this project to make collaboration with all of you much easier!
Note that there won't be any stream next week π
π If you want to help support this project, the best way to do so is through my Patreon, here: patreon.com/HarrisonLow
00:00 - Intro 00:56 - Stream Starts 01:30 - Jugglebot is in Onshape! 04:20 - Platform Design 08:50 - Layout of the Model(s) 11:45 - Back to Platform Design 22:25 - Adding an Inclinometer 29:13 - Moving Large Assemblies in Onshape π€ 31:40 - How to Manage a Large Project in Onshape? 33:30 - Questions for any Onshape Experts (Especially Those Who Print Things!) 38:10 - What's Next? 39:40 - No Stream Next Week!