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 …}
}
0.27 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.03 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\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +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 {#299
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -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 {#293
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#292
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "A-nightlight-with-orientation-control"
  +title: "A nightlight with orientation control"
  +url: null
  +body: """
    So I wanted to design a children's toy, where the electronics could last 100 years (ignoring mechanical abuse). I figured some people here might be interested.\n
    \n
    I settled on a CR2032-powered night light, using an attiny10 microcontroller, where the flash is rated for 100 years unless you're writing to it (which I am not). I did some pretty heavy power optimization. The firmware is hand-optimized assembly.\n
    \n
    When you turn it upside-down, a tilt switch toggles an LED @ 3mA via a pretty intense debouncing routine.\n
    \n
    A watchdog timer has it auto power off in 30 minutes.\n
    \n
    When off, it consumes less than 1 uA. So it has about 25 years of standby time, although the battery is only rated for 10 years (it is replaceable though).\n
    \n
    If a child uses it every day, then the battery should last about 4.5 months.\n
    \n
    I made custom boards for it -- I kept is simple with few components as possible (resistor is for scale):\n
    \n
    ![](https://voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)\n
    \n
    I kept assembly simple. A better design would snap right in to the pins of the CR2032 holder, but that's an addition I'll make another day. I also should have added one more ground pad to solder to, but forgot. Still, an OK result I think.\n
    \n
    ![](https://voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)\n
    \n
    I used some spay-on lacquer to protect the traces a bit after assembly.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 0
  +favouriteCount: 9
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688202678 {#1861
    date: 2023-07-01 11:11:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 638
  -titleTs: "'control':5 'nightlight':2 'orient':4"
  -bodyTs: "'/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':170 '/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':221 '1':110 '10':128 '100':15,47 '25':116 '30':102 '3ma':86 '4.5':147 'abus':19 'ad':203 'addit':193 'also':200 'although':121 'anoth':197 'assembl':72,173,236 'attiny10':39 'auto':98 'batteri':123,143 'better':176 'bit':234 'board':152 'child':136 'children':7 'compon':161 'consum':107 'could':13 'cr2032':33,187 'cr2032-powered':32 'custom':151 'day':140,198 'debounc':91 'design':5,177 'electron':12 'everi':139 'figur':21 'firmwar':67 'flash':43 'forgot':212 'ground':206 'hand':70 'hand-optim':69 'heavi':63 'holder':188 'ignor':17 'intens':90 'interest':27 'kept':156,172 'lacquer':228 'last':14,145 'led':85 'less':108 'light':36 'll':195 'made':150 'make':196 'mechan':18 'microcontrol':40 'might':25 'minut':103 'month':148 'night':35 'ok':215 'one':204 'optim':65,71 'pad':207 'peopl':23 'pin':184 'possibl':163 'power':34,64,99 'pretti':62,89 'protect':230 'rate':45,126 're':51 'replac':132 'resistor':164 'result':216 'right':180 'routin':92 'scale':167 'settl':29 'simpl':158,174 'snap':179 'solder':209 'spay':226 'spay-on':225 'standbi':119 'still':213 'switch':82 'think':218 'though':133 'tilt':81 'time':120 'timer':95 'toggl':83 'toy':9 'trace':232 'turn':75 'ua':111 'unless':49 'upsid':78 'upside-down':77 'use':37,137,223 'via':87 'voltage.vn':169,220 'voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':168 'voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':219 'want':3 'watchdog':94 'would':178 'write':52 'year':16,48,117,129"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1688220678
  +visibility: "visible             "
  +apId: "https://voltage.vn/post/5961"
  +editedAt: DateTimeImmutable @1688202832 {#75
    date: 2023-07-01 11:13:52.0 +02:00
  }
  +createdAt: DateTimeImmutable @1688202678 {#2415
    date: 2023-07-01 11:11:18.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"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\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +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 {#299
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -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 {#293
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#292
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "A-nightlight-with-orientation-control"
  +title: "A nightlight with orientation control"
  +url: null
  +body: """
    So I wanted to design a children's toy, where the electronics could last 100 years (ignoring mechanical abuse). I figured some people here might be interested.\n
    \n
    I settled on a CR2032-powered night light, using an attiny10 microcontroller, where the flash is rated for 100 years unless you're writing to it (which I am not). I did some pretty heavy power optimization. The firmware is hand-optimized assembly.\n
    \n
    When you turn it upside-down, a tilt switch toggles an LED @ 3mA via a pretty intense debouncing routine.\n
    \n
    A watchdog timer has it auto power off in 30 minutes.\n
    \n
    When off, it consumes less than 1 uA. So it has about 25 years of standby time, although the battery is only rated for 10 years (it is replaceable though).\n
    \n
    If a child uses it every day, then the battery should last about 4.5 months.\n
    \n
    I made custom boards for it -- I kept is simple with few components as possible (resistor is for scale):\n
    \n
    ![](https://voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)\n
    \n
    I kept assembly simple. A better design would snap right in to the pins of the CR2032 holder, but that's an addition I'll make another day. I also should have added one more ground pad to solder to, but forgot. Still, an OK result I think.\n
    \n
    ![](https://voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)\n
    \n
    I used some spay-on lacquer to protect the traces a bit after assembly.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 0
  +favouriteCount: 9
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688202678 {#1861
    date: 2023-07-01 11:11:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 638
  -titleTs: "'control':5 'nightlight':2 'orient':4"
  -bodyTs: "'/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':170 '/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':221 '1':110 '10':128 '100':15,47 '25':116 '30':102 '3ma':86 '4.5':147 'abus':19 'ad':203 'addit':193 'also':200 'although':121 'anoth':197 'assembl':72,173,236 'attiny10':39 'auto':98 'batteri':123,143 'better':176 'bit':234 'board':152 'child':136 'children':7 'compon':161 'consum':107 'could':13 'cr2032':33,187 'cr2032-powered':32 'custom':151 'day':140,198 'debounc':91 'design':5,177 'electron':12 'everi':139 'figur':21 'firmwar':67 'flash':43 'forgot':212 'ground':206 'hand':70 'hand-optim':69 'heavi':63 'holder':188 'ignor':17 'intens':90 'interest':27 'kept':156,172 'lacquer':228 'last':14,145 'led':85 'less':108 'light':36 'll':195 'made':150 'make':196 'mechan':18 'microcontrol':40 'might':25 'minut':103 'month':148 'night':35 'ok':215 'one':204 'optim':65,71 'pad':207 'peopl':23 'pin':184 'possibl':163 'power':34,64,99 'pretti':62,89 'protect':230 'rate':45,126 're':51 'replac':132 'resistor':164 'result':216 'right':180 'routin':92 'scale':167 'settl':29 'simpl':158,174 'snap':179 'solder':209 'spay':226 'spay-on':225 'standbi':119 'still':213 'switch':82 'think':218 'though':133 'tilt':81 'time':120 'timer':95 'toggl':83 'toy':9 'trace':232 'turn':75 'ua':111 'unless':49 'upsid':78 'upside-down':77 'use':37,137,223 'via':87 'voltage.vn':169,220 'voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':168 'voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':219 'want':3 'watchdog':94 'would':178 'write':52 'year':16,48,117,129"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1688220678
  +visibility: "visible             "
  +apId: "https://voltage.vn/post/5961"
  +editedAt: DateTimeImmutable @1688202832 {#75
    date: 2023-07-01 11:13:52.0 +02:00
  }
  +createdAt: DateTimeImmutable @1688202678 {#2415
    date: 2023-07-01 11:11:18.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"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\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +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 {#299
      date: 2024-10-20 10:40:08.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -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 {#293
      date: 2024-09-25 09:01:54.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1687144409 {#292
      date: 2023-06-19 05:13:29.0 +02:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "A-nightlight-with-orientation-control"
  +title: "A nightlight with orientation control"
  +url: null
  +body: """
    So I wanted to design a children's toy, where the electronics could last 100 years (ignoring mechanical abuse). I figured some people here might be interested.\n
    \n
    I settled on a CR2032-powered night light, using an attiny10 microcontroller, where the flash is rated for 100 years unless you're writing to it (which I am not). I did some pretty heavy power optimization. The firmware is hand-optimized assembly.\n
    \n
    When you turn it upside-down, a tilt switch toggles an LED @ 3mA via a pretty intense debouncing routine.\n
    \n
    A watchdog timer has it auto power off in 30 minutes.\n
    \n
    When off, it consumes less than 1 uA. So it has about 25 years of standby time, although the battery is only rated for 10 years (it is replaceable though).\n
    \n
    If a child uses it every day, then the battery should last about 4.5 months.\n
    \n
    I made custom boards for it -- I kept is simple with few components as possible (resistor is for scale):\n
    \n
    ![](https://voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)\n
    \n
    I kept assembly simple. A better design would snap right in to the pins of the CR2032 holder, but that's an addition I'll make another day. I also should have added one more ground pad to solder to, but forgot. Still, an OK result I think.\n
    \n
    ![](https://voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)\n
    \n
    I used some spay-on lacquer to protect the traces a bit after assembly.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 0
  +favouriteCount: 9
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1688202678 {#1861
    date: 2023-07-01 11:11:18.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 638
  -titleTs: "'control':5 'nightlight':2 'orient':4"
  -bodyTs: "'/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':170 '/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':221 '1':110 '10':128 '100':15,47 '25':116 '30':102 '3ma':86 '4.5':147 'abus':19 'ad':203 'addit':193 'also':200 'although':121 'anoth':197 'assembl':72,173,236 'attiny10':39 'auto':98 'batteri':123,143 'better':176 'bit':234 'board':152 'child':136 'children':7 'compon':161 'consum':107 'could':13 'cr2032':33,187 'cr2032-powered':32 'custom':151 'day':140,198 'debounc':91 'design':5,177 'electron':12 'everi':139 'figur':21 'firmwar':67 'flash':43 'forgot':212 'ground':206 'hand':70 'hand-optim':69 'heavi':63 'holder':188 'ignor':17 'intens':90 'interest':27 'kept':156,172 'lacquer':228 'last':14,145 'led':85 'less':108 'light':36 'll':195 'made':150 'make':196 'mechan':18 'microcontrol':40 'might':25 'minut':103 'month':148 'night':35 'ok':215 'one':204 'optim':65,71 'pad':207 'peopl':23 'pin':184 'possibl':163 'power':34,64,99 'pretti':62,89 'protect':230 'rate':45,126 're':51 'replac':132 'resistor':164 'result':216 'right':180 'routin':92 'scale':167 'settl':29 'simpl':158,174 'snap':179 'solder':209 'spay':226 'spay-on':225 'standbi':119 'still':213 'switch':82 'think':218 'though':133 'tilt':81 'time':120 'timer':95 'toggl':83 'toy':9 'trace':232 'turn':75 'ua':111 'unless':49 'upsid':78 'upside-down':77 'use':37,137,223 'via':87 'voltage.vn':169,220 'voltage.vn/pictrs/image/7251a080-676e-413d-b9d7-277388f7c8ea.jpeg)':168 'voltage.vn/pictrs/image/c89f001b-7f44-4d5b-9e9c-f1da5e97dae0.jpeg)':219 'want':3 'watchdog':94 'would':178 'write':52 'year':16,48,117,129"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1688220678
  +visibility: "visible             "
  +apId: "https://voltage.vn/post/5961"
  +editedAt: DateTimeImmutable @1688202832 {#75
    date: 2023-07-01 11:13:52.0 +02:00
  }
  +createdAt: DateTimeImmutable @1688202678 {#2415
    date: 2023-07-01 11:11:18.0 +02:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"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 {#289
  +icon: Proxies\__CG__\App\Entity\Image {#270 …}
  +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 {#299
    date: 2024-10-20 10:40:08.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#261 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
  +entries: Doctrine\ORM\PersistentCollection {#204 …}
  +posts: Doctrine\ORM\PersistentCollection {#162 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
  +bans: Doctrine\ORM\PersistentCollection {#141 …}
  +reports: Doctrine\ORM\PersistentCollection {#127 …}
  +badges: Doctrine\ORM\PersistentCollection {#105 …}
  +logs: Doctrine\ORM\PersistentCollection {#95 …}
  +awards: Doctrine\ORM\PersistentCollection {#84 …}
  +categories: Doctrine\ORM\PersistentCollection {#71 …}
  -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 {#293
    date: 2024-09-25 09:01:54.0 +02:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1687144409 {#292
    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