09-23-2009

  • Quick taste of programming/communication (est 15-20 min)
    • Phase 1: Flash (human->computer)
      • Vertically tiled sections for each instrument (including flutophone)
      • Divides into beats, puts actions in array
      • Each instrument as a number (0-3), and each note has a letter (A-X, Z=rest)
      • Every beat (variable bpm) Flash sends an encoded serial output
        • Example ~0A~1Z~2C~3Z
        • Bassbot plays a hit, snare rests, xylophone plays 3rd lowest note, flutophone rests
    • Phase 2: Serial (computer->master)
      • Arduino master in a constant cycle
      • if it sees a ~ in serial, it looks at the intrument code, then sends it a play signal
    • Phase 3: Digital in/out (master->slave)
      • Master->Drumset
        • Two input pins (play bass, play snare)
        • Constant cycle looking for a signal on those pins
        • if it sees play bass it does the neccesary solenoid valve manipulations
        • if it sees play snare it activates the solenoid on the side that was not most recently played
      • Master->Xylobot
        • 4-bit binary encoding of note is always sent(only white keys)
        • 1 "hit" signal, which tells the xylobot to play
        • xylobot board decodes the current binary input when it sees a hit signal, then outputs to that solenoid
    • Flaws:
      • Timing from flash is sketch
      • Chords are impossible
      • there is no forthought: eg bassbot cant react to knowing it has a beat coming up.
      • Flash is difficult to get to serial (we use serproxy to turn xml into serial)
      • Flash code is poorly written and not easily expandable
  • List Short-Medium term objectives (est 40-45 min)
    • GIG: Late November, Skibo!
      • Incorporate humans
    • Existing Instruments: (est 5 min)
      • Finish Flutophone: JAYWOO KIM
      • Switch Xylobot to small arduino with mux; Nico
    • New Instruments: (est 25 min)
      • Deadline (mechanically functional): Friday Nov 6.
      • Decide on projects (remember feasibility) (est 15 min)
        • Rusty old Brass Instrument (year)
          • Lead: Jon
          • Meeting: Sunday@3PM roboclub
          • Groupies: Jon Alex
        • Whamola (6 week - year)
          • Lead: Doug
          • Meeting: Friday@3:30-?!? roboclub SHOP
          • Groupies: Doug Andrew Jay Katherine
        • Piano - already built - Ben made it
          • Lead: Nico
          • Meeting: TBD
          • Groupies: Nico Scott Rohan
        • High hat - bass/snare combo?
          • Lead: Andrew
          • Meeting: Tuesday@530 roboclub
          • Groupies: Andrew Katherine (Jay) Sandy Scott (Rohan) Jon
      • Assign leaders
      • Develop meeting times
      • Determine resources necessary
      • Develop timeline
    • Interface / Communication (est 10 min)
      • Set code team meeting times
        • MARKOV ALGORITHMS: Tuesday@?
        • New PARADIGM: Sunday@5:00 in roboclub
      • Develop new laptop-master-slave orchestration paradigm
      • Develop interface for implementing new paradigm
      • Develop simple composition interface and file standards