If using wooden skewers, soak them in water for at least 30 minutes to prevent burning.
In a large bowl, whisk together soy sauce, honey, olive oil, garlic, ginger, black pepper, and red pepper flakes.
Add the chicken cubes to the marinade, ensuring they are well coated. Cover and refrigerate for at least 30 minutes, or up to 2 hours for more flavor.
Preheat your grill to medium-high heat.
Thread the marinated chicken, pineapple, bell pepper, and onion onto the skewers, alternating between each ingredient.
Place the skewers on the grill and cook for 10-12 minutes, turning occasionally, until the chicken is cooked through and reaches an internal temperature of 165°F.
Remove from the grill and let rest for a few minutes before serving.