int main(int argc, char *argv[]) { monome_t *monome; uint x, y; /* open the monome device */ if( !(monome = monome_open(MONOME_DEVICE, "8000")) ) return -1; monome_clear(monome, MONOME_CLEAR_OFF); /* initialize the grid (all off) */ for( x = 0; x < 16; x++ ) for( y = 0; y < 16; y++ ) grid[x][y] = 0; /* register our button press callback */ monome_register_handler(monome, MONOME_BUTTON_DOWN, handle_press, NULL); /* wait for presses! */ monome_event_loop(monome); monome_close(monome); return 0; }
int main(int argc, char **argv) { monome_t *monome; unsigned int w, h, y, s; uint16_t buf; if( !(monome = monome_open(MONOME_OSC, "8000")) ) { fprintf(stderr, "couldn't open monome\n"); exit(EXIT_FAILURE); } w = WIDTH; h = HEIGHT; for(s = 0;; s = !s) for( y = 0; y < h; y++ ) { buf = ((1 << y)) - s; monome_led_row(monome, y, w / 8, y, (uint8_t *) &buf); monome_led_set(monome, w - 1, y, random() & 1); random_chill(); } }
int main(int argc, char **argv) { monome_t *monome; int i; i =0; if( !(monome = monome_open((argc == 2 ) ? argv[1] : DEFAULT_MONOME_DEVICE, "8000")) ) return -1; test_led_ring_set(monome); return 0; monome_led_all(monome, 0); for( i = 0; i < 2; i++ ) { test_led_row_8(monome, 1); test_led_col_8(monome, 1); } for( i = 0; i < 2; i++ ) { test_led_row_16(monome, 1); test_led_col_16(monome, 1); } test_led_col_16(monome, 0); test_led_on_off(monome); test_led_map(monome); chill(4); test_mode(monome); fade_out(monome); monome_led_all(monome, 0); monome_led_intensity(monome, 0x0F); return 0; }
int main(int argc, char *argv[]) { char c, *device, *sport, *aport, *ahost; monome_rotate_t rotate = MONOME_ROTATE_0; int i; struct option arguments[] = { {"help", no_argument, 0, 'h'}, {"device", required_argument, 0, 'd'}, {"server-port", required_argument, 0, 's'}, {"application-port", required_argument, 0, 'a'}, {"application-host", required_argument, 0, 'o'}, {"rotation", required_argument, 0, 'r'} }; device = DEFAULT_MONOME_DEVICE; sport = DEFAULT_OSC_SERVER_PORT; aport = DEFAULT_OSC_APP_PORT; ahost = DEFAULT_OSC_APP_HOST; while( (c = getopt_long(argc, argv, "hd:s:a:o:r:", arguments, &i)) > 0 ) { switch( c ) { case 'h': usage(argv[0]); return 1; case 'd': device = optarg; break; case 's': if( is_numstr(optarg) ) sport = optarg; else printf("warning: \"%s\" is not a valid server port.\n", optarg); break; case 'a': if( is_numstr(optarg) ) aport = optarg; else printf("warning: \"%s\" is not a valid application port.\n", optarg); break; case 'o': ahost = optarg; break; case 'r': switch(*optarg) { case 'l': case '0': rotate = MONOME_ROTATE_0; break; case 't': case '9': rotate = MONOME_ROTATE_90; break; case 'r': case '1': rotate = MONOME_ROTATE_180; break; case 'b': case '2': rotate = MONOME_ROTATE_270; break; } break; } } if( optind == argc ) state.lo_prefix = m_strdup(DEFAULT_OSC_PREFIX); else state.lo_prefix = m_strdup(argv[optind]); if( !(state.monome = monome_open(device)) ) { printf("failed to open %s\n", device); return EXIT_FAILURE; } if( !(state.server = lo_server_new(sport, lo_error)) ) return EXIT_FAILURE; state.outgoing = lo_address_new(ahost, aport); monome_register_handler(state.monome, MONOME_BUTTON_DOWN, monome_handle_press, state.lo_prefix); monome_register_handler(state.monome, MONOME_BUTTON_UP, monome_handle_press, state.lo_prefix); register_osc_methods(state.lo_prefix, state.monome); monome_set_rotation(state.monome, rotate); monome_led_all(state.monome, 0); printf("monomeserial version %s, yay!\n\n", VERSION); printf("initialized device %s at %s, which is %dx%d\n", monome_get_serial(state.monome), monome_get_devpath(state.monome), monome_get_rows(state.monome), monome_get_cols(state.monome)); printf("running with prefix /%s\n\n", state.lo_prefix); /* main_loop() returns 1 if the monome was disconnected */ if( main_loop() ) printf("%s disconnected, monomeserial exiting.\nsee you later!\n\n", monome_get_devpath(state.monome)); monome_close(state.monome); unregister_osc_methods(state.lo_prefix); m_free(state.lo_prefix); lo_address_free(state.outgoing); lo_server_free(state.server); return EXIT_SUCCESS; }