In a large bowl or zip-top bag, whisk together olive oil, soy sauce, honey, pineapple juice, vinegar, lime juice, ginger, pepper, and salt.
Add the chicken pieces to the marinade, mix to coat, cover or seal, and refrigerate for at least 1 hour (up to overnight).
Preheat grill to medium-high heat and oil the grates.
Thread the chicken, bell peppers, onion, and pineapple onto the skewers, alternating ingredients.
Grill the skewers for 10 to 15 minutes, turning every few minutes, until the chicken is cooked through and has nice grill marks.
Serve hot and enjoy!