I am trying to use a Ublox ZED-F9P with an STM32 blue pill. I am connecting them using I2C. When I connect the one GPS, it works OK and send back position data without issue, but the other one refuses to send back anything. When I connect the other GPS, it rather sends back all zeros or it cannot be found. I have tried a total of 3 different STM32 boards and I get the same result. I am connecting them to I2C1 and I am using the Wire library. I am testing them using the provided example programs. It works perfectly with an Arduino UNO.
Hi EngStudent,
I am a bit confused by your wording here. Are you attempting to connect multiple ZED-F9P boards to the STM32 or just one? Are you using the [SparkFun Ublox Arduino Library? If so, the library is most likely not compatible with the STM32. We cannot guarantee our libraries work with every microcontroller out there without modifications. I am afraid since the board(s) work fine on an Uno, it sounds like you may need to modify the library or example code to get it working with your STM32.
I am afraid SparkFun Tech Support cannot help troubleshoot products we do not carry but other users on these forums may be able to help instead.](GitHub - sparkfun/SparkFun_Ublox_Arduino_Library: Library to control UBX binary protocol and NMEA over I2C on Ublox GPS modules)
Hello Mark,
I am trying to connect two GPS modules to the STM32. The STM32 has two I2C ports, so I am connecting one to each. I am using the SparkFun Ublox Arduino Library. Of the two modules I am trying to connect, one works OK, but the other does not. The problematic module works fine with an UNO, but will not work with the STM32, no matter which port I connect it to. I tried doing a firmware update, but it did nothing.
Thanks for clarifying how you’re trying to use the ZED-F9P’s. The SparkFun Ublox library is not set up to have two I2C buses running simultaneously, but it may be something you can adjust in the code and/or source files to have two I2C buses running. SparkFun Tech Support cannot assist you with customizing the code/library to get this working but following something like [this thread on the Arduino forums might help you get started here.](Which library to use for SDA1 and SCL1 (second I2C) Arduino Due - Arduino Due - Arduino Forum)