Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
2.96 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.08 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\EntryComment {#1369
  +user: Proxies\__CG__\App\Entity\User {#1370 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "askelectronics@discuss.tchncs.de"
    +title: "askelectronics"
    +description: """
      **For questions about component-level electronic circuits, tools and equipment.**\n
      \n
      Rules\n
      -----\n
      \n
      1: Be nice.\n
      \n
      2: Be on-topic (eg: *Electronic*, not *electrical*).\n
      \n
      3: No commercial stuff, buying, selling or valuations.\n
      \n
      4: Be safe.\n
      \n
      ---
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 154
    +entryCommentCount: 1230
    +postCount: 1
    +postCommentCount: 4
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729413608 {#321
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 11
    +apId: "askelectronics@discuss.tchncs.de"
    +apProfileId: "https://discuss.tchncs.de/c/askelectronics"
    +apPublicUrl: "https://discuss.tchncs.de/c/askelectronics"
    +apFollowersUrl: "https://discuss.tchncs.de/c/askelectronics/followers"
    +apInboxUrl: "https://discuss.tchncs.de/inbox"
    +apDomain: "discuss.tchncs.de"
    +apPreferredUsername: "askelectronics"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727247714 {#322
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#316
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    Something weird happened... So I edited my comment: Ive used those exact relays, 3 in a single prototype that I was tinkering with quite a lot, so what worked best for me in the end was mounting a DIN rail into my enclosure (Any box would probably work for you? I needed IP65 so I used a proper box with glands for incoming wires.) And then the relay boards were hot glued to DIN rail mounts... (The relay boards are then lined perpendicular to the DIN rail) That ensured that I could add or remove the rails as needed.\n
    \n
    The rest of my circuit is also mounted on another DIN rail... Also allowing me to swap out main boards as I programmed/ upgraded them with minimal effort.\n
    \n
    This was all connected by DIY 'ribbon cable' so that plugging and unplugging was also a breeze..\n
    \n
    Granted this all might be overkill for you? Ive also have had projects that still live in shoeboxes and they work but obviously it all depends on your use cases?\n
    \n
    Just remember, if you go the box route, to make your life easier, make sure the box is big enough to work in if anything is to be mounted permanently. Its a massive headache trying to feed one wire past all the others into the hole if you are working 20mm from the edge of your box.\n
    \n
    Hope this helps!\n
    \n
    (Second edit):\n
    \n
    I read like my arse... If youre installing inside the switchboard and already have din rails, then a rail mount would be the most convienient solution
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1692108458 {#1605
    date: 2023-08-15 16:07:38.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@WhyAUsername_1@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1371 …}
  +nested: Doctrine\ORM\PersistentCollection {#1379 …}
  +votes: Doctrine\ORM\PersistentCollection {#2446 …}
  +reports: Doctrine\ORM\PersistentCollection {#1891 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2409 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2358 …}
  -id: 25989
  -bodyTs: "'..':145 '20mm':226 '3':14 'add':93 'allow':113 'alreadi':250 'also':106,112,142,155 'anoth':109 'anyth':200 'ars':242 'best':30 'big':194 'board':69,79,119 'box':45,59,182,192,232 'breez':144 'cabl':135 'case':175 'circuit':104 'comment':8 'connect':131 'convieni':262 'could':92 'depend':171 'din':39,74,86,110,252 'diy':133 'easier':188 'edg':229 'edit':6,237 'effort':127 'enclosur':43 'end':35 'enough':195 'ensur':89 'exact':12 'feed':212 'gland':61 'glu':72 'go':180 'grant':146 'happen':3 'headach':209 'help':235 'hole':221 'hope':233 'hot':71 'incom':63 'insid':246 'instal':245 'ip65':53 'ive':9,154 'life':187 'like':240 'line':82 'live':161 'lot':26 'main':118 'make':185,189 'massiv':208 'might':149 'minim':126 'mount':37,76,107,204,257 'need':52,99 'obvious':168 'one':213 'other':218 'overkil':151 'past':215 'perman':205 'perpendicular':83 'plug':138 'probabl':47 'program':122 'project':158 'proper':58 'prototyp':18 'quit':24 'rail':40,75,87,97,111,253,256 'read':239 'relay':13,68,78 'rememb':177 'remov':95 'rest':101 'ribbon':134 'rout':183 'second':236 'shoebox':163 'singl':17 'solut':263 'someth':1 'still':160 'sure':190 'swap':116 'switchboard':248 'tinker':22 'tri':210 'unplug':140 'upgrad':123 'use':10,56,174 'weird':2 'wire':64,214 'work':29,48,166,197,225 'would':46,258 'your':244"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmyrs.org/comment/836609"
  +editedAt: DateTimeImmutable @1692109175 {#1945
    date: 2023-08-15 16:19:35.0 +02:00
  }
  +createdAt: DateTimeImmutable @1692108458 {#1368
    date: 2023-08-15 16:07:38.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\EntryComment {#1369
  +user: Proxies\__CG__\App\Entity\User {#1370 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "askelectronics@discuss.tchncs.de"
    +title: "askelectronics"
    +description: """
      **For questions about component-level electronic circuits, tools and equipment.**\n
      \n
      Rules\n
      -----\n
      \n
      1: Be nice.\n
      \n
      2: Be on-topic (eg: *Electronic*, not *electrical*).\n
      \n
      3: No commercial stuff, buying, selling or valuations.\n
      \n
      4: Be safe.\n
      \n
      ---
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 154
    +entryCommentCount: 1230
    +postCount: 1
    +postCommentCount: 4
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729413608 {#321
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 11
    +apId: "askelectronics@discuss.tchncs.de"
    +apProfileId: "https://discuss.tchncs.de/c/askelectronics"
    +apPublicUrl: "https://discuss.tchncs.de/c/askelectronics"
    +apFollowersUrl: "https://discuss.tchncs.de/c/askelectronics/followers"
    +apInboxUrl: "https://discuss.tchncs.de/inbox"
    +apDomain: "discuss.tchncs.de"
    +apPreferredUsername: "askelectronics"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727247714 {#322
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#316
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    Something weird happened... So I edited my comment: Ive used those exact relays, 3 in a single prototype that I was tinkering with quite a lot, so what worked best for me in the end was mounting a DIN rail into my enclosure (Any box would probably work for you? I needed IP65 so I used a proper box with glands for incoming wires.) And then the relay boards were hot glued to DIN rail mounts... (The relay boards are then lined perpendicular to the DIN rail) That ensured that I could add or remove the rails as needed.\n
    \n
    The rest of my circuit is also mounted on another DIN rail... Also allowing me to swap out main boards as I programmed/ upgraded them with minimal effort.\n
    \n
    This was all connected by DIY 'ribbon cable' so that plugging and unplugging was also a breeze..\n
    \n
    Granted this all might be overkill for you? Ive also have had projects that still live in shoeboxes and they work but obviously it all depends on your use cases?\n
    \n
    Just remember, if you go the box route, to make your life easier, make sure the box is big enough to work in if anything is to be mounted permanently. Its a massive headache trying to feed one wire past all the others into the hole if you are working 20mm from the edge of your box.\n
    \n
    Hope this helps!\n
    \n
    (Second edit):\n
    \n
    I read like my arse... If youre installing inside the switchboard and already have din rails, then a rail mount would be the most convienient solution
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1692108458 {#1605
    date: 2023-08-15 16:07:38.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@WhyAUsername_1@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1371 …}
  +nested: Doctrine\ORM\PersistentCollection {#1379 …}
  +votes: Doctrine\ORM\PersistentCollection {#2446 …}
  +reports: Doctrine\ORM\PersistentCollection {#1891 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2409 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2358 …}
  -id: 25989
  -bodyTs: "'..':145 '20mm':226 '3':14 'add':93 'allow':113 'alreadi':250 'also':106,112,142,155 'anoth':109 'anyth':200 'ars':242 'best':30 'big':194 'board':69,79,119 'box':45,59,182,192,232 'breez':144 'cabl':135 'case':175 'circuit':104 'comment':8 'connect':131 'convieni':262 'could':92 'depend':171 'din':39,74,86,110,252 'diy':133 'easier':188 'edg':229 'edit':6,237 'effort':127 'enclosur':43 'end':35 'enough':195 'ensur':89 'exact':12 'feed':212 'gland':61 'glu':72 'go':180 'grant':146 'happen':3 'headach':209 'help':235 'hole':221 'hope':233 'hot':71 'incom':63 'insid':246 'instal':245 'ip65':53 'ive':9,154 'life':187 'like':240 'line':82 'live':161 'lot':26 'main':118 'make':185,189 'massiv':208 'might':149 'minim':126 'mount':37,76,107,204,257 'need':52,99 'obvious':168 'one':213 'other':218 'overkil':151 'past':215 'perman':205 'perpendicular':83 'plug':138 'probabl':47 'program':122 'project':158 'proper':58 'prototyp':18 'quit':24 'rail':40,75,87,97,111,253,256 'read':239 'relay':13,68,78 'rememb':177 'remov':95 'rest':101 'ribbon':134 'rout':183 'second':236 'shoebox':163 'singl':17 'solut':263 'someth':1 'still':160 'sure':190 'swap':116 'switchboard':248 'tinker':22 'tri':210 'unplug':140 'upgrad':123 'use':10,56,174 'weird':2 'wire':64,214 'work':29,48,166,197,225 'would':46,258 'your':244"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmyrs.org/comment/836609"
  +editedAt: DateTimeImmutable @1692109175 {#1945
    date: 2023-08-15 16:19:35.0 +02:00
  }
  +createdAt: DateTimeImmutable @1692108458 {#1368
    date: 2023-08-15 16:07:38.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\EntryComment {#1369
  +user: Proxies\__CG__\App\Entity\User {#1370 …}
  +entry: App\Entity\Entry {#1810 …}
  +magazine: App\Entity\Magazine {#313
    +icon: Proxies\__CG__\App\Entity\Image {#294 …}
    +name: "askelectronics@discuss.tchncs.de"
    +title: "askelectronics"
    +description: """
      **For questions about component-level electronic circuits, tools and equipment.**\n
      \n
      Rules\n
      -----\n
      \n
      1: Be nice.\n
      \n
      2: Be on-topic (eg: *Electronic*, not *electrical*).\n
      \n
      3: No commercial stuff, buying, selling or valuations.\n
      \n
      4: Be safe.\n
      \n
      ---
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 154
    +entryCommentCount: 1230
    +postCount: 1
    +postCommentCount: 4
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729413608 {#321
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#285 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
    +entries: Doctrine\ORM\PersistentCollection {#228 …}
    +posts: Doctrine\ORM\PersistentCollection {#186 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
    +bans: Doctrine\ORM\PersistentCollection {#165 …}
    +reports: Doctrine\ORM\PersistentCollection {#151 …}
    +badges: Doctrine\ORM\PersistentCollection {#129 …}
    +logs: Doctrine\ORM\PersistentCollection {#119 …}
    +awards: Doctrine\ORM\PersistentCollection {#108 …}
    +categories: Doctrine\ORM\PersistentCollection {#95 …}
    -id: 11
    +apId: "askelectronics@discuss.tchncs.de"
    +apProfileId: "https://discuss.tchncs.de/c/askelectronics"
    +apPublicUrl: "https://discuss.tchncs.de/c/askelectronics"
    +apFollowersUrl: "https://discuss.tchncs.de/c/askelectronics/followers"
    +apInboxUrl: "https://discuss.tchncs.de/inbox"
    +apDomain: "discuss.tchncs.de"
    +apPreferredUsername: "askelectronics"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1727247714 {#322
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#316
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +parent: null
  +root: null
  +body: """
    Something weird happened... So I edited my comment: Ive used those exact relays, 3 in a single prototype that I was tinkering with quite a lot, so what worked best for me in the end was mounting a DIN rail into my enclosure (Any box would probably work for you? I needed IP65 so I used a proper box with glands for incoming wires.) And then the relay boards were hot glued to DIN rail mounts... (The relay boards are then lined perpendicular to the DIN rail) That ensured that I could add or remove the rails as needed.\n
    \n
    The rest of my circuit is also mounted on another DIN rail... Also allowing me to swap out main boards as I programmed/ upgraded them with minimal effort.\n
    \n
    This was all connected by DIY 'ribbon cable' so that plugging and unplugging was also a breeze..\n
    \n
    Granted this all might be overkill for you? Ive also have had projects that still live in shoeboxes and they work but obviously it all depends on your use cases?\n
    \n
    Just remember, if you go the box route, to make your life easier, make sure the box is big enough to work in if anything is to be mounted permanently. Its a massive headache trying to feed one wire past all the others into the hole if you are working 20mm from the edge of your box.\n
    \n
    Hope this helps!\n
    \n
    (Second edit):\n
    \n
    I read like my arse... If youre installing inside the switchboard and already have din rails, then a rail mount would be the most convienient solution
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1692108458 {#1605
    date: 2023-08-15 16:07:38.0 +02:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@WhyAUsername_1@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#1371 …}
  +nested: Doctrine\ORM\PersistentCollection {#1379 …}
  +votes: Doctrine\ORM\PersistentCollection {#2446 …}
  +reports: Doctrine\ORM\PersistentCollection {#1891 …}
  +favourites: Doctrine\ORM\PersistentCollection {#2409 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2358 …}
  -id: 25989
  -bodyTs: "'..':145 '20mm':226 '3':14 'add':93 'allow':113 'alreadi':250 'also':106,112,142,155 'anoth':109 'anyth':200 'ars':242 'best':30 'big':194 'board':69,79,119 'box':45,59,182,192,232 'breez':144 'cabl':135 'case':175 'circuit':104 'comment':8 'connect':131 'convieni':262 'could':92 'depend':171 'din':39,74,86,110,252 'diy':133 'easier':188 'edg':229 'edit':6,237 'effort':127 'enclosur':43 'end':35 'enough':195 'ensur':89 'exact':12 'feed':212 'gland':61 'glu':72 'go':180 'grant':146 'happen':3 'headach':209 'help':235 'hole':221 'hope':233 'hot':71 'incom':63 'insid':246 'instal':245 'ip65':53 'ive':9,154 'life':187 'like':240 'line':82 'live':161 'lot':26 'main':118 'make':185,189 'massiv':208 'might':149 'minim':126 'mount':37,76,107,204,257 'need':52,99 'obvious':168 'one':213 'other':218 'overkil':151 'past':215 'perman':205 'perpendicular':83 'plug':138 'probabl':47 'program':122 'project':158 'proper':58 'prototyp':18 'quit':24 'rail':40,75,87,97,111,253,256 'read':239 'relay':13,68,78 'rememb':177 'remov':95 'rest':101 'ribbon':134 'rout':183 'second':236 'shoebox':163 'singl':17 'solut':263 'someth':1 'still':160 'sure':190 'swap':116 'switchboard':248 'tinker':22 'tri':210 'unplug':140 'upgrad':123 'use':10,56,174 'weird':2 'wire':64,214 'work':29,48,166,197,225 'would':46,258 'your':244"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmyrs.org/comment/836609"
  +editedAt: DateTimeImmutable @1692109175 {#1945
    date: 2023-08-15 16:19:35.0 +02:00
  }
  +createdAt: DateTimeImmutable @1692108458 {#1368
    date: 2023-08-15 16:07:38.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED edit
App\Entity\Magazine {#313
  +icon: Proxies\__CG__\App\Entity\Image {#294 …}
  +name: "askelectronics@discuss.tchncs.de"
  +title: "askelectronics"
  +description: """
    **For questions about component-level electronic circuits, tools and equipment.**\n
    \n
    Rules\n
    -----\n
    \n
    1: Be nice.\n
    \n
    2: Be on-topic (eg: *Electronic*, not *electrical*).\n
    \n
    3: No commercial stuff, buying, selling or valuations.\n
    \n
    4: Be safe.\n
    \n
    ---
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 154
  +entryCommentCount: 1230
  +postCount: 1
  +postCommentCount: 4
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729413608 {#321
    date: 2024-10-20 10:40:08.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#285 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#281 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#270 …}
  +entries: Doctrine\ORM\PersistentCollection {#228 …}
  +posts: Doctrine\ORM\PersistentCollection {#186 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#248 …}
  +bans: Doctrine\ORM\PersistentCollection {#165 …}
  +reports: Doctrine\ORM\PersistentCollection {#151 …}
  +badges: Doctrine\ORM\PersistentCollection {#129 …}
  +logs: Doctrine\ORM\PersistentCollection {#119 …}
  +awards: Doctrine\ORM\PersistentCollection {#108 …}
  +categories: Doctrine\ORM\PersistentCollection {#95 …}
  -id: 11
  +apId: "askelectronics@discuss.tchncs.de"
  +apProfileId: "https://discuss.tchncs.de/c/askelectronics"
  +apPublicUrl: "https://discuss.tchncs.de/c/askelectronics"
  +apFollowersUrl: "https://discuss.tchncs.de/c/askelectronics/followers"
  +apInboxUrl: "https://discuss.tchncs.de/inbox"
  +apDomain: "discuss.tchncs.de"
  +apPreferredUsername: "askelectronics"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1727247714 {#322
    date: 2024-09-25 09:01:54.0 +02:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1687144409 {#316
    date: 2023-06-19 05:13:29.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details