diff --git a/README.md b/README.md
index 431b4723c9..0e58ae3901 100644
--- a/README.md
+++ b/README.md
@@ -132,6 +132,7 @@ Community Maintained Cars and Features
| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below |
| ----------| ------------------------------| ------------------| -----------------| -------------------| -------------|
+| Audi | A3 2015 | Driver Assistance | Stock | 0mph | 0mph |
| Buick | Regal 20181 | Adaptive Cruise | openpilot | 0mph | 7mph |
| Cadillac | ATS 20181 | Adaptive Cruise | openpilot | 0mph | 7mph |
| Chevrolet | Malibu 20171 | Adaptive Cruise | openpilot | 0mph | 7mph |
diff --git a/selfdrive/car/volkswagen/interface.py b/selfdrive/car/volkswagen/interface.py
index 63da6672ba..24c078d7ad 100644
--- a/selfdrive/car/volkswagen/interface.py
+++ b/selfdrive/car/volkswagen/interface.py
@@ -25,7 +25,7 @@ class CarInterface(CarInterfaceBase):
# VW port is a community feature, since we don't own one to test
ret.communityFeature = True
- if candidate == CAR.GOLF:
+ if candidate in [CAR.GOLF, CAR.AUDI_A3]:
# Set common MQB parameters that will apply globally
ret.carName = "volkswagen"
ret.radarOffCan = True
diff --git a/selfdrive/car/volkswagen/values.py b/selfdrive/car/volkswagen/values.py
index d99d781026..361383ca89 100644
--- a/selfdrive/car/volkswagen/values.py
+++ b/selfdrive/car/volkswagen/values.py
@@ -47,14 +47,18 @@ MQB_LDW_MESSAGES = {
class CAR:
GOLF = "VOLKSWAGEN GOLF"
+ AUDI_A3 = "AUDI A3"
FINGERPRINTS = {
CAR.GOLF: [
# 76b83eb0245de90e|2019-10-21--17-40-42 - jyoung8607 car
{64: 8, 134: 8, 159: 8, 173: 8, 178: 8, 253: 8, 257: 8, 260: 8, 262: 8, 264: 8, 278: 8, 279: 8, 283: 8, 286: 8, 288: 8, 289: 8, 290: 8, 294: 8, 299: 8, 302: 8, 346: 8, 385: 8, 418: 8, 427: 8, 668: 8, 679: 8, 681: 8, 695: 8, 779: 8, 780: 8, 783: 8, 792: 8, 795: 8, 804: 8, 806: 8, 807: 8, 808: 8, 809: 8, 870: 8, 896: 8, 897: 8, 898: 8, 901: 8, 917: 8, 919: 8, 949: 8, 958: 8, 960: 4, 981: 8, 987: 8, 988: 8, 991: 8, 997: 8, 1000: 8, 1019: 8, 1120: 8, 1122: 8, 1123: 8, 1124: 8, 1153: 8, 1162: 8, 1175: 8, 1312: 8, 1385: 8, 1413: 8, 1440: 5, 1514: 8, 1515: 8, 1520: 8, 1600: 8, 1601: 8, 1603: 8, 1605: 8, 1624: 8, 1626: 8, 1629: 8, 1631: 8, 1646: 8, 1648: 8, 1712: 6, 1714: 8, 1716: 8, 1717: 8, 1719: 8, 1720: 8, 1721: 8
}],
+ CAR.AUDI_A3: [
+ {64: 8, 134: 8, 159: 8, 173: 8, 178: 8, 253: 8, 257: 8, 260: 8, 262: 8, 278: 8, 279: 8, 283: 8, 285: 8, 286: 8, 288: 8, 289: 8, 290: 8, 294: 8, 299: 8, 302: 8, 346: 8, 427: 8, 779: 8, 780: 8, 783: 8, 792: 8, 804: 8, 806: 8, 807: 8, 808: 8, 809: 8, 870: 8, 901: 8, 917: 8, 919: 8, 949: 8, 958: 8, 960: 4, 981: 8, 987: 8, 988: 8, 991: 8, 997: 8, 1019: 8, 1122: 8, 1123: 8, 1124: 8, 1153: 8, 1175: 8, 1312: 8, 1385: 8, 1413: 8, 1440: 5, 1520: 8, 1600: 8, 1601: 8, 1603: 8, 1624: 8, 1629: 8, 1631: 8, 1646: 8, 1648: 8, 1712: 6, 1714: 8, 1716: 8, 1719: 8, 1720: 8, 1721: 8}],
}
DBC = {
CAR.GOLF: dbc_dict('vw_mqb_2010', None),
+ CAR.AUDI_A3: dbc_dict('vw_mqb_2010', None),
}
diff --git a/selfdrive/test/test_car_models.py b/selfdrive/test/test_car_models.py
index 2279374db0..464297f07a 100755
--- a/selfdrive/test/test_car_models.py
+++ b/selfdrive/test/test_car_models.py
@@ -433,6 +433,10 @@ routes = {
'carFingerprint': VOLKSWAGEN.GOLF,
'enableCamera': True,
},
+ "07667b885add75fd|2021-01-23--19-48-42": {
+ 'carFingerprint': VOLKSWAGEN.AUDI_A3,
+ 'enableCamera': True,
+ },
"3c8f0c502e119c1c|2020-06-30--12-58-02": {
'carFingerprint': SUBARU.ASCENT,
'enableCamera': True,