<commit_before>## Gimbal Control

Aims :

* Get control of the gimbal, using non-IDE tools (i.e. ```ino``` on Fedora)
  - ```0-blink```

* Check reference source code for the gimbal
  - ```1-gimbal-original-brugi```

* Upload ```Firmata``` to allow Node control over gimbal
  - ```2-standard-firmata```

* Determine the pin-out of the gimbal 
  - ```3-node-control```

* Do something interesting/alternative with the Gimbal
  - ```4-painter```



#### Seconday Goal

Do a lightning talk about the project at Hackware v1.0 on 26-Aug-2015.

Can do : 

*  Describe origins of 'robot'
   +   Quadcopter
   +   Pricing, features
   +   Nodebot-able Arduino-a-like
*  Describe what can be done
   +   Robot itself
   +   nodejs sending, nodejs opencv (zeromq)
   +   Problems : Cogging, twanging, etc


Demonstrate :

*  moving around using cursor keys
*  Coordinate updates of webcam


Would like (time permitting) :

*  Calibration mode (small moves)
*  Centering mode (bigger moves, and adjustments)
*  Observation lag calibration mode
*  Circling mode
*  Hello Kitty mode


To accomplish that (ideally) require :

*  'mode' defines goal state(s) for movement
*  Initial 'self model' must be calibrated
*  Model maps 'self state', 'external observations' and 'desired state' to 'control signals'

But, this can be simplistically acheived by :

*  ((Thinking))
<commit_msg>Rough draft of action sequence idea<commit_after>## Gimbal Control

Aims :

* Get control of the gimbal, using non-IDE tools (i.e. ```ino``` on Fedora)
  - ```0-blink```

* Check reference source code for the gimbal
  - ```1-gimbal-original-brugi```

* Upload ```Firmata``` to allow Node control over gimbal
  - ```2-standard-firmata```

* Determine the pin-out of the gimbal 
  - ```3-node-control```

* Do something interesting/alternative with the Gimbal
  - ```4-painter```



#### Seconday Goal

Do a lightning talk about the project at Hackware v1.0 on 26-Aug-2015.

Can do : 

*  Describe origins of 'robot'
   +   Quadcopter
   +   Pricing, features
   +   Nodebot-able Arduino-a-like
*  Describe what can be done
   +   Robot itself
   +   nodejs sending, nodejs opencv (zeromq)
   +   Problems : Cogging, twanging, etc


Demonstrate :

*  moving around using cursor keys
*  Coordinate updates of webcam


Would like (time permitting) :

*  Calibration mode (small moves)
*  Centering mode (bigger moves, and adjustments)
*  Observation lag calibration mode
*  Circling mode
*  Hello Kitty mode


To accomplish that (ideally) require :

*  'mode' defines goal state(s) for movement
*  Initial 'self model' must be calibrated
*  Model maps 'self state', 'external observations' and 'desired state' to 'control signals'

But, this can be simplistically acheived by :

*  Calibration : Perform given sequence of moves and capture basic dx, dy, timescale sensitivities
   +   Track location after each move and Wait for settle after each one (+/-1 pixel dwell for 100ms?)
   +   Perform move command, and then capture opencv output to timestamped series
   +   After each addition, check whether we should be in our next 'state'
   +   ?States will be 'wait until location stable', 'wait until not at()', etc...
   +   Or : Sequence of commands will be actions() which can include move commands and wait commands
   +   


{'fraction_non_alphanumeric': 0.09890776699029126, 'fraction_numerical': 0.009101941747572815, 'mean_word_length': 3.5164383561643837, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6493740', 'n_tokens_mistral': 1098, 'n_tokens_neox': 1036, 'n_words': 402}