title: smach_viewer throws KeyError
body: <p>I'm trying to implement a simple state machine on ROS using SMACH and visualize it using smach_viewer.
  The system I'm using:</p>
  <ul>
  <li>Ubuntu 18.04</li>
  <li>ROS Melodic (catkin_ws is configured to use Python3!)</li>
  </ul>
  <p>My smach-implementation looks like this (test.py):</p>
  <pre><code>  #!/usr/bin/env python3
  
    import smach
    import smach_ros
    import rospy
  
    class t1(smach.State):
      def __init__(self, outcomes=['successful', 'failed']):
          smach.State.__init__(self, outcomes)
  
      def execute(self, userdata):
          return 'successful'
  
    class t2(smach.State):
      def __init__(self, outcomes=['successful']):
          smach.State.__init__(self, outcomes)
  
      def execute(self, userdata):
          #time.sleep(2)
          return 'successful'
  
    class t3(smach.State):
      def __init__(self, outcomes=['successful']):
          smach.State.__init__(self, outcomes)
  
      def execute(self, userdata):
          #time.sleep(2)
          return 'successful'
  
  
    if __name__==&quot;__main__&quot;:
      rospy.init_node('test_state_machine')
  
      sm_top = smach.StateMachine(outcomes=['success'])
      with sm_top:
          smach.StateMachine.add('T1', t1(),
                                     transitions={'successful': 'T2', 'failed': 'T3'})
          smach.StateMachine.add('T2', t2(),
                                     transitions={'successful': 'T1'})
          smach.StateMachine.add('T3', t3(),
                                     transitions={'successful': 'success'})
  
      # Create and start the introspection server
      sis = smach_ros.IntrospectionServer('introspection_server', sm_top, '/SM_ROOT')
      sis.start()
      # Execute SMACH plan
      outcome = sm_top.execute()
      # Wait for ctrl-c to stop the application
      rospy.spin()
      sis.stop()
  </code></pre>
  <p>According to the output in my terminal the state machine runs perfectly fine. But when I try to visualize the SM using smach_viewer, the smach_viewer throws the following error:</p>
  <pre><code>[ERROR] [1599821587.164191]: bad callback: &lt;bound method SmachViewerFrame._status_msg_update of &lt;__main__.SmachViewerFrame; proxy of &lt;Swig Object of type 'wxFrame *' at 0x55616f7eb050&gt; &gt;&gt;
  Traceback (most recent call last):
    File &quot;/opt/ros/melodic/lib/python2.7/dist-packages/rospy/topics.py&quot;, line 750, in _invoke_callback
      cb(msg)
    File &quot;/home/faps/catkin_ws/src/executive_smach_visualization/smach_viewer/scripts/smach_viewer.py&quot;, line 844, in _status_msg_update
      if container.update_status(msg):
    File &quot;/home/faps/catkin_ws/src/executive_smach_visualization/smach_viewer/scripts/smach_viewer.py&quot;, line 185, in update_status
      self._local_data._data = pickle.loads(msg.local_data)
    File &quot;/usr/lib/python2.7/pickle.py&quot;, line 1388, in loads
      return Unpickler(file).load()
    File &quot;/usr/lib/python2.7/pickle.py&quot;, line 864, in load
      dispatch[key](self)
    File &quot;/usr/lib/python2.7/pickle.py&quot;, line 1157, in load_get
      self.append(self.memo[self.readline()[:-1]])
  KeyError: 'AJ9cQA'
  </code></pre>
  <p>Any ideas on what could be the issue and how to solve it?</p>