Thank you for looking into the issue, I've used taulabs_next_20140222_021634_233afad32e_win32.
I'm still quite certain that the necessary values are not yet initialized, which is done in that struct I mentioned.
Let me explain:
The sbus code snippet looks like this:
(*cfg->gpio_clk_func)(cfg->gpio_clk_periph, ENABLE); // not defined for RevoMini
if (cfg->inv.gpio != NULL)
{
GPIO_Init(cfg->inv.gpio, (GPIO_InitTypeDef*)&cfg->inv.init);
...
basically if the functor is zero and the gpio is null the inverter is not enabled. These two values are enabled in the struct I mentioned and are defined in
pios_sbus_cfg in https://github.com/TauLabs/TauLabs/blob/41b3774acb57880b18c50708769009eafc8b3c09/flight/PiOS/inc/pios_sbus_priv.h
This values in the struct are defined [1] for the coptercontrol and the old revolution target. Both have hardware inverters onboard.
Without the definition the hw inverter does not work and the sbus won't work.
[1] https://github.com/TauLabs/TauLabs/search?q=gpio_clk_periph&ref=cmdform
That's why I'm quite certain that it is necessary RevoMini target to define something like this, which is currently missing
.gpio_clk_func = RCC_AHB1PeriphClockCmd,
.gpio_clk_periph = RCC_AHB1Periph_GPIOB,
Thanks again,
Torni