Chi-square or binomial logistic regression? I am unsure about which statistical test suits my needs, in particular I wonder whether chi-square should be used or not. The responses I get from my experiments are not continuous, but discrete, specifically taking the values of 0 or 1. I need to compare 3 groups. Here the details:
I performed 3 experiments, each experiment tested a different system, and each experiment involved a distinct group of subjects. In total there where 25 participants (7 for the first system, 7 for the second, 11 for the third). Subjects were asked to identify a stimulus (i.e. a vibration provided by a haptic device).
Recognition was measured as 1 = correct identification, 0 = incorrect identification. Stimuli where repeated, each stimulus receive 0 or 1 as measurement of participants' responses to it.
The stimuli where different for each system. Still I want to test whether participants using one system performed better than the participants using other systems.
My goal is only to assess the statistical differences between the 3 groups.
Based on my understanding, an alternative to chi-square could also be a binomial logistic regression, but I am unsure. 
If chi-square is the right way to go, can I compare 3 groups using 3 separate tests (A vs B, B vs C, A vs C) without affecting the alpha? If I have to correct it, what is the right value for 3 groups?
Can anyone please suggest the right function to be used in R?
 A: Chi-square have H0 that the distribution among all groups is the same. So it will be significant if just one group is different, but you won't know which.
Logistic regression will be more informative, since it will create a set of dummy variables for each group and run test whether coefficients for each dummy variable is statistically significantly differ from 0.
Some code
library(tidyverse)
data_frame(a = sample(c(0, 1), 20, prob = c(0.4, 0.6), replace = TRUE),
           b = sample(c(0, 1), 20, prob = c(0.6, 0.4), replace = TRUE),
           c = sample(c(0, 1), 20, prob = c(0.8, 0.2), replace = TRUE)) %>% 
   gather(var, value, a:c) ->
   df

fit <- glm(value ~ var, data = df, family = "binomial")
summary(fit)

df %>% 
  count(var, value) %>% 
  spread(value, n) ->
  df

chisq.test(df[,-1])

UPDATE
If you want to compare all three groups you could relevel the var variable, using factors.
df$var <- factor(df$var, levels = c("b", "c", "a")) # now b will be a reference point
fit_2 <- glm(value ~ var, data = df, family = "binomial")
summary(fit_2)

