user66858: I have an MKR WiFi 1010 and an MKR GPS Shield. When I connect my GPS Shield using the I2C cable, it works fine.
This works perfectly (the bottom is the MKR Motor Carrier):

However, when I use it as a shield (hat?) using the pins, it doesn't.
This doesn't work. The code blocks somewhere (I suspect GPS.available()):

My question, should it work the same whether it is cabled or put on with the pins? Or should I change my code somehow?

user37622: From the shop page:

It interfaces with Arduino boards either through a serial interface, when used with headers and put on top of a MKR board, or through an I2C interface and a dedicated ESLOV cable supplied as bundle.

From Arduino_MKRGPS library reference:
begin() Parameters:

GPS_MODE_I2C to use the MKR GPS with the I2C cable (default setting),
GPS_MODE_SHIELD if using the MKR GPS as a shield.


66858: <p>I have an MKR WiFi 1010 and an MKR GPS Shield. When I connect my GPS Shield using the I2C cable, it works fine.</p>
<p>This works perfectly (the bottom is the MKR Motor Carrier):</p>
<p><a href="https://i.stack.imgur.com/kcKGu.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/kcKGu.jpg" alt="enter image description here" /></a></p>
<p>However, when I use it as a shield (hat?) using the pins, it doesn't.</p>
<p>This doesn't work. The code blocks somewhere (I suspect <code>GPS.available()</code>):</p>
<p><a href="https://i.stack.imgur.com/S5wPC.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/S5wPC.jpg" alt="enter image description here" /></a></p>
<p>My question, should it work the same whether it is cabled or put on with the pins? Or should I change my code somehow?</p>
 37622: <p>From <a href="https://store.arduino.cc/collections/shields/products/arduino-mkr-gps-shield" rel="nofollow noreferrer">the shop page</a>:</p>
<blockquote>
<p>It interfaces with Arduino boards either through a serial interface, when used with headers and put on top of a MKR board, or through an I2C interface and a dedicated ESLOV cable supplied as bundle.</p>
</blockquote>
<p>From Arduino_MKRGPS library <a href="https://www.arduino.cc/reference/en/libraries/arduino_mkrgps/begin/" rel="nofollow noreferrer">reference</a>:</p>
<p><code>begin()</code> Parameters:</p>
<ul>
<li>GPS_MODE_I2C to use the MKR GPS with the I2C cable (default setting),</li>
<li>GPS_MODE_SHIELD if using the MKR GPS as a shield.</li>
</ul>
