Topic: STM32F103C

Any chance of supporting the STM32F103C "Blue Pill" boards?  they have 3 hard serial ports, but their pins are named different than the Arduino Megas.  I searched around in the Arduino Library, but couldn't find where you define the pin numbers for Hardware serial.  STM32s don't support Software Serial.

This is a really sad point for me as I really like the RemoteXY setup, but I am moving away from Arduino.


Re: STM32F103C

So in my digging through the code, I've been trying to find where the Arduino Mega hardware serial is set up.  From the web interface you have 4 choices Serial 0 - 3, each with their own set of pins defined.

Serial,   pins 0(RX) and 1(TX)
Serial1,  pins 19(RX) and 18(TX)
Serial2,  Pins 17(RX) and 16(TX)
Serial3,  Pins 15(RX) and 14(TX)

I selected Hardware 3 just to see what the code looked like to see if it was just a matter of changing the Pin names in the sketch.  The Software pin names are defined in the sketch itself.


#include <RemoteXY.h>

// RemoteXY connection settings 
#define REMOTEXY_SERIAL Serial3

In this it seems that somewhere in the library Serial3 would define the Pin names.  As opposed to softserial:

#include <SoftwareSerial.h>

#include <RemoteXY.h>

// RemoteXY connection settings 

I have tried defining the pin names with Hardware Serial, but get an error.  I was hoping the error would lead my to a place in the library where I could modify it enough to accept the pin names for RX and TX, but alas that is a deep and dark rabbit hole and I am but a novice programmer.

What I am really hoping to be able to set up for the STM32F103c is simply the pin names to see if at that point I can use RemoteXY with my new choice of boards:

Pin Names

TX1   pin = PA9
RX1   pin = PA10

TX2   pin = PA2
RX2   pin = PA3

TX3   pin = PB10
RX3   pin = PB11

Is it possible to include these names somewhere within the library to call them in Hard Serial?

I would really like to keep using RemoteXY to design bluetooth interfaces for my projects.  I recently setup 2100 WS2812B LEDs on an Art Car and had 2 different bluetooth interfaces for them.  This meant the person I completed the project for purchased the full version of RemoteXY.  I have one project pending that uses the STM32 board because it has more memory and an internal RTC.  There are many patterns and color variants the user can select via bluetooth.  The full version RemoteXY makes that all possible and easy to create.  It would be GREAT to be able to use it with the STM32F103c board. 

I know if worse comes to worse I can throw in an Arduino Nano to handle the RemoteXY and then send commands over to the STM32 board, but it would be so much nicer to just have one board considering how much more capable the STM32 boards are.


Re: STM32F103C


In the editor the pin names are only relevant if you use an arduino mega... It has nothing to do with the configuration of RemoteXY, which only use an instance of the HardwareSerial class, set with #define REMOTEXY_SERIAL. You are responsible for providing a working HardwareSerial instance to RemoteXY by using that #define, because unlike with SoftwareSerial, RemoteXY will not create that instance for you.


Re: STM32F103C

Guillaume wrote:


You are responsible for providing a working HardwareSerial instance to RemoteXY by using that #define...

So evidently the core libraries for the STM board did exactly that.  I tried With Serial1 for the pins I was connected to and was able to get the interface to show up on my phone.  I had no functionality programmed in yet, but even seeing the few "Junk" buttons show up makes me feel as iff this will be compatible!

Thank you for pointing in the right direction!!!

5 (edited by Guillaume 2018-06-26 23:52:59)

Re: STM32F103C


Also I suggest you increase the serial speed, you can try 921600 or even more if it works reliably.


Re: STM32F103C

I have a similar problem, in that I want to use the Teensy 3.2 board (I already have them) because I need 3 interrupts mon my latest project.

I don't feel at all confident I can modify the library to support these boards, but it must be possible to do ....

Has anyone got a Teensy to work with RemoteXY ???

Everything works with smoke - if you let it out, things stop working....