diff --git a/lib/ansible/modules/network/meraki/meraki_mx_l3_firewall.py b/lib/ansible/modules/network/meraki/meraki_mx_l3_firewall.py
index b45badac918..0ebda7a16d1 100644
--- a/lib/ansible/modules/network/meraki/meraki_mx_l3_firewall.py
+++ b/lib/ansible/modules/network/meraki/meraki_mx_l3_firewall.py
@@ -301,20 +301,24 @@ def main():
         else:
             payload = dict()
         update = False
-        if meraki.params['syslog_default_rule']:
+        if meraki.params['syslog_default_rule'] is not None:
             payload['syslogDefaultRule'] = meraki.params['syslog_default_rule']
+            # meraki.fail_json(msg='Payload', payload=payload)
         try:
             if len(rules) - 1 != len(payload['rules']):  # Quick and simple check to avoid more processing
                 update = True
-            if meraki.params['syslog_default_rule']:
+            if meraki.params['syslog_default_rule'] is not None:
                 if rules[len(rules) - 1]['syslogEnabled'] != meraki.params['syslog_default_rule']:
                     update = True
             if update is False:
+                del rules[len(rules) - 1]  # Remove default rule for comparison
                 for r in range(len(rules) - 1):
-                    if meraki.is_update_required(rules[r], payload[r]) is True:
+                    if meraki.is_update_required(rules[r], payload['rules'][r]) is True:
                         update = True
         except KeyError:
             pass
+            # if meraki.params['syslog_default_rule']:
+            #     meraki.fail_json(msg='Compare', original=rules, proposed=payload)
         if update is True:
             response = meraki.request(path, method='PUT', payload=json.dumps(payload))
             if meraki.status == 200:
diff --git a/test/integration/targets/meraki_mx_l3_firewall/tasks/main.yml b/test/integration/targets/meraki_mx_l3_firewall/tasks/main.yml
index 731ecca47db..8739c0f5081 100644
--- a/test/integration/targets/meraki_mx_l3_firewall/tasks/main.yml
+++ b/test/integration/targets/meraki_mx_l3_firewall/tasks/main.yml
@@ -4,37 +4,37 @@
 # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
 ---
 - block:
-  - name: Test an API key is provided
-    fail:
-      msg: Please define an API key
-    when: auth_key is not defined
+  # - name: Test an API key is provided
+  #   fail:
+  #     msg: Please define an API key
+  #   when: auth_key is not defined
     
-  - name: Use an invalid domain
-    meraki_organization:
-      auth_key: '{{ auth_key }}'
-      host: marrrraki.com
-      state: present
-      org_name: IntTestOrg
-      output_level: debug
-    delegate_to: localhost
-    register: invalid_domain
-    ignore_errors: yes
+  # - name: Use an invalid domain
+  #   meraki_organization:
+  #     auth_key: '{{ auth_key }}'
+  #     host: marrrraki.com
+  #     state: present
+  #     org_name: IntTestOrg
+  #     output_level: debug
+  #   delegate_to: localhost
+  #   register: invalid_domain
+  #   ignore_errors: yes
     
-  - name: Disable HTTP
-    meraki_organization:
-      auth_key: '{{ auth_key }}'
-      use_https: false
-      state: query
-      output_level: debug
-    delegate_to: localhost
-    register: http
-    ignore_errors: yes
+  # - name: Disable HTTP
+  #   meraki_organization:
+  #     auth_key: '{{ auth_key }}'
+  #     use_https: false
+  #     state: query
+  #     output_level: debug
+  #   delegate_to: localhost
+  #   register: http
+  #   ignore_errors: yes
 
-  - name: Connection assertions
-    assert:
-      that:
-        - '"Failed to connect to" in invalid_domain.msg'
-        - '"http" in http.url'
+  # - name: Connection assertions
+  #   assert:
+  #     that:
+  #       - '"Failed to connect to" in invalid_domain.msg'
+  #       - '"http" in http.url'
 
   - name: Create network
     meraki_network:
@@ -146,6 +146,45 @@
   - assert:
       that:
         - query.data.1.syslogEnabled == True
+        - default_syslog.changed == True
+
+  - name: Disable syslog for default rule
+    meraki_mx_l3_firewall:
+      auth_key: '{{ auth_key }}'
+      org_name: '{{test_org_name}}'
+      net_name: TestNetAppliance
+      state: present
+      rules:
+        - comment: Deny to documentation address
+          src_port: any
+          src_cidr: any
+          dest_port: 80,443
+          dest_cidr: 192.0.1.1/32
+          protocol: tcp
+          policy: deny        
+      syslog_default_rule: no
+    delegate_to: localhost
+    register: disable_syslog
+
+  - debug:
+      msg: '{{disable_syslog}}'
+
+  - name: Query firewall rules
+    meraki_mx_l3_firewall:
+      auth_key: '{{ auth_key }}'
+      org_name: '{{test_org_name}}'
+      net_name: TestNetAppliance
+      state: query
+    delegate_to: localhost
+    register: query
+
+  - debug:
+      msg: '{{query.data.1}}'
+
+  - assert:
+      that:
+        - query.data.1.syslogEnabled == False
+        - disable_syslog.changed == True
 
   always:
   - name: Delete all firewall rules