multiChannel implementation

needs work