Revision history for perl module UAV::Pilot

1.0 2014-06-05

- Bump version number.  Really, that's it.

1.0_1 2014-06-04

- Allow loading of other modules in Commands packages

1.0_0 2014-06-04

- No longer use share/ method of loading Command shell modules.  Instead, 
  use a specific namespace with some @INC magic.

0.11 2014-05-29

- Port build to Dist::Zilla
- Actually fix regression bug of FileDump taking a filehandle

0.10 2014-04-27

- Fix regression bug of FileDump taking a filehandle
- UAV::Pilot::Command calls uav_module_quit() when it's about to exit

0.9 2014-02-16

- Breakoff parts into new dists

0.8 2013-12-28

- Unicast implemented for Parrot AR.Drone navdata
- WumpusRover implemented
- Decoupled interface in bin/uav and share/*.uav libaries to support more than 
  just the AR.Drone
- Decoupled SDL Joystick interface from AR.Drone
- UAV::Pilot::SDL::JoystickConverter deleted as unnecessary
- Change ARDrone::Control::Event interface to take an existing condvar rather 
  than creating and returning a new one
- Fixed a crash where the AR.Drone's navdata was sending NaN floats

0.7 2013-10-24

- Cleanup a bunch of bad tests and dependencies from 0.6

0.6 2013-10-15

[EventHandler Interface]
- UAV::Pilot::SDL::EventHandler moved to UAV::Pilot::EventHandler
- UAV::Pilot::Events based on previous UAV::Pilot::SDL::Events, except it 
  doesn't do anything for SDL
- UAV::Pilot::SDL::Events changed to an EventHandler
- All other EventHandler objects and bin/uav* scripts updated to reflect this 

[Controller and Driver Interface]
- Rename UAV::Pilot::Driver::ARDrone to UAV::Pilot::ARDrone::Driver
- Rename UAV::Pilot::Control::ARDrone to UAV::Pilot::ARDrone::Control
- All the other modules under those namespaces were renamed accordingly

[Other Changes]
- In UAV::Pilot::Control, change the 'sender' param to 'driver'
- Stack handlers passed to UAV::Pilot::Video::H264Decoder.  Note the API change 
  of 'display' to 'displays'
- Stack handlers passed to UAV::Pilot::Driver::ARDrone::Video.  Note the API 
  change of 'handler' to 'handlers'
- 'uav' shell handles dumping video to file while displaying it at the same time
- Implement 'NavCollector' to receive nav packets as they're read from the driver
- SDLNavDisplay implemented as a NavCollector rather than an EventHandler
- When we get a bad PaVE header on the video stream, fast forward to the next
  one.  This helps recover the video stream gracefully.  The video will be 
  messed up until the next keyframe, but at least it keeps going.

0.5 2013-07-31

- Real-time video implemented (this is the big one)
- VideoHandler and FileDump moved into UAV::Pilot::Video namespace.  Handler 
  role now named "H264Handler".
- Joystick buttons can be mapped to actions
- Joystick module can take a path to a conf file
- bin/uav gets an --iface option for a network interface for binding

0.4 2013-07-04

- Dump video to file
    - If using mplayer to show the file, set the FPS manually with 
      "mplayer -fps 30 /path/to/file.h264"
- Rename anything that starts an event loop to init_event_loop()
- Joystick to UAV control number conversion decoupled from ARDrone specifics
- Add methods to UAV::Pilot::Control::ARDrone for userbox nav data and picture 

0.3 2013-06-17

- Event-based interface
- Joystick control

0.2 2013-06-02

- Device renamed to Control
- Sender renamed to Driver
- Fetch demo navigation data

0.1 2013-05-09

- Piloting commands work

Hosting generously
sponsored by Bytemark