P. S. . . And how is Carl doing?

What with all the excitement about Dave, ROS, the 1k run and all, we haven’t heard much of anything about Carl?

How’s he doing?

Is anything happening, or is he just sitting on his dock overcharging his batteries?

Charlie is getting worried. . . .


Recent Carl Activities:

  • Responded to four or five “totallife.sh” and “uptime” requests today -
Total Life:  21756.6 hrs since Aug 22,2018
Life this year:  1172.6 hrs (BOY Aug 22)
Days Booted This Year:  2
Average Time Between Reboot:  586 hrs
Total Dockings:  2448
Dockings this year:  103
New Batteries At Cycle: 2160
Battery Set At Cycle:  288
Docking Failures this year:  2  or  1.9 % of Dockings    <<-- New Docking Failure recovered w/o assist
Safety Shutdowns this year:  0  or  0 % of Dockings
Ave Cycle this year (w/o failures):  11.6 hours
Ave Cycle this year:  11.4 hours
Ave Playtime this year:  7.6
Ave of Last 10 Playtimes 6.3        <<---- Docking failure hits average hard ---------------vv
Last Docking:  2021-10-09 21:15|[juicer.py.dock]---- Docking 2448 completed at 7.9 v after 0.0 h playtime
Last Recharge:  2021-10-09 21:14|[juicer.py.undock]---- Dismount 2447 at 7.9 v after 0.1 h recharge

pi@Carl:~/Carl $ uptime
 21:32:38 up 48 days,  5:55,  3 users,  load average: 0.39, 0.30, 0.31
-------------^^--- 48 DAYS SINCE NEEDED A REBOOT - Pretty Cool, No?
  • watching last playtime for hints of capacity drop from 7.7 - 7.8 hours since batteries are over 275 cycles,

  • curiosity: last recharge time (3.8h trickle detected or 4.0 timeout ended recharge)
    I keep trying to understand where my trickle detection algorithm is not reliable.
    I should have put the charger in his camera’s FOV and watched for green. It would have been so easy…

  • (my wife thinks I’m obsessed with Carl’s batteries - she’s probably correct.)

  • “borrowed back” the IMU from Dave to test the python2 version of the IMU routines to be sure they will work for you (@jimrh)

  • Came home and Carl’s voicecmdr indicator light was bright meaning voicecmdr was stuck awaiting a command after “thinking” he heard “Hey Carl”. Load was over 1 and htop showed voicecmdr hogging the processor. Killed it and restarted.

  • Reviewed Carl’s old imu.log and matching docking sessions from wheel.log to refresh memory about IMU variability for our discussion

  • Remote-ed into Carl’s Raspbian For Robots Desktop to refresh my memory on what the control panel and DI Software Update desktop applications were called for the discussion on “new GoPiGo3”

  • Found Carl turned around facing his dock. Researching voice.log showed I had forgotten to tell him “go to sleep” after restarting voicecmdr, and he “thought” he heard the command “Hey Carl, Turn Around”. Had to tell him “Hey Carl, Turn Around. Hey Carl, Go To Sleep”

  • I should have realized I forgot to tell him to go to sleep earlier when we were eating lunch in another room and overheard Carl announcing “Swap 52 percent” without having been asked.

Carl has been getting lots of exercise, beyond keeping his batteries healthy and “being readily available.”

Talk to Charlie - he needs something to keep his battery healthy:

$ sudo pip install imu4gopigo3ros






startIMU -i


import ros_safe_inertial_measurement_unit as imupkg





logIMU & (note process id to kill later, or start in separate shell)


$ sudo pip uninstall imu4gopigo3ros


And just as soon as I re-test the voltage trip-points on the GoPiGo and finish the batteries, Charlie is getting a workout!

1 Like

I’m confused - Is Charlie on the latest GoPiGo OS? then you should use the ros2gopigo3imu. I thought I remembered you saying Charlie was Python 2.


The Dexter control panel is Python 2. Everything else is Python 3.

I am not sure why the control panel requires Python 2 but it does.

1 Like