(Community contribution by Kilian Krause)

aaa authentication dot1x "campus-ap-dot1x"
!
aaa profile "campus-ap"
authentication-dot1x "campus-ap-dot1x"
dot1x-default-role "authenticated"
(warning)dot1x-server-group "upstream"                                   # server group needs to be defined
enforce-dhcp
!
wlan hotspot anqp-venue-name-profile "hotspotname"
(warning)venue-group educational                                         # repeats beacon info (see below) in ANQP
(warning)venue-type educational-university # repeats beacon info (see below) in ANQP
(warning)venue-lang-code "eng" # a descriptive name for the venue in English language

!
wlan hotspot anqp-roam-cons-profile "openroaming"
roam-cons-oi "5A03BA0000"
!
wlan hotspot h2qp-operator-friendly-name-profile "ust"
op-lang-code "ger"
!
(warning)wlan hotspot h2qp-wan-metrics-profile "bandwidth" # adapt details to actual upstream bandwidth
wan-metrics-link-status link_up
symm-link
at-capacity
uplink-speed 40000000
downlink-speed 40000000
uplink-load 1
downlink-load 1
load-dur 5
!
(warning)wlan hotspot h2qp-conn-capability-profile "services" # adapt details to actual available services
icmp
tcp-ssh
tcp-http
tcp-tls-vpn
tcp-pptp-vpn
udp-ike2-500
udp-ike2-4500
esp
!
wlan hotspot h2qp-op-cl-profile "ust"
!
wlan hotspot anqp-ip-addr-avail-profile "addresses"
!
wlan hotspot anqp-domain-name-profile "ownrealm"
(warning)domain-name "uni-stuttgart.de" # change to own realm/domain name
!
wlan hotspot advertisement-profile "openroaming"
anqp-venue-name-profile "hotspotname"
anqp-roam-cons-profile "openroaming"
anqp-ip-addr-avail-profile "addresses"
h2qp-wan-metrics-profile "bandwidth"
h2qp-operator-friendly-name-profile "ust"
h2qp-conn-cap-profile "services"
h2qp-op-cl-profile "ust"
anqp-domain-name-profile "ownrealm"
!
wlan hotspot hs2-profile "openroaming"
hotspot-enable
advertisement-profile "openroaming"
internet
access-network-type private
hotspot-roam-cons-oi-1 "5A03BA0000"
(warning)venue-group educational # adjust to the classification of your hotspot
(warning)venue-type educational-university # adjust to the classification of your hotspot
time-zone name "CET" hours 1
radius-cui
radius-loc-data
!
wlan ssid-profile "OpenRoaming"
essid "OpenRoaming"
opmode wpa3-aes-ccm-128
mcast-rate-opt
qbss-load-enable
advertise-ap-name
!
wlan virtual-ap "OpenRoaming"
aaa-profile "openroaming"
hs2-profile "openroaming"
ssid-profile "OpenRoaming"
dynamic-mcast-optimization
fdb-update-on-assoc
!
(warning)ap-group "APs-for-OpenRoaming" # change to hotspot group name
virtual-ap "OpenRoaming"
!