Loud sound warning - question

Hello all

I damaged my hearing as a teenager. Too much listening with earphones.

As one of the last additions to the software before shipping, I have added this:

It is a mandatory part of the bootup, and defaults to earphone-safe’ish’ levels (what is safe depends too much on type of sound and earphones used). If you want to amplify beyond that, you have to explicitly choose to do so.

Any thoughts?


Any way to disable the message on future bootups? I would hate seeing if every time I turn on the device, especially if I never use the headphones.


I agree, the idea is sound but selecting everytime you boot would be obnoxious. Maybe if it would default after 2 seconds without pressing anything ? pressing any button would stop that timer and allow changing the setting.

I do feel it is not needed if a adult is using it since we are aware of the risks, but since it is also directed at kids it is a logical precaution.


I certainly would not like anybody, especially a kid, to have hearing damage because of Pokitto. At the same time I would love to see Pokitto to start immediately. That would be a wow-effect in itself !

How about detecting the connected earphone at bootup, and set the volume at default if it is “too high”(I suppose volume level is stored at eeprom )? Without any extra screens at startup. That warning could be shown to user when the volume is changed or the earphone is plugged in and the volume level is too high. Or could we just always allow changing the volume when the earphone is plugged-in or out?

1 Like

Once again thanks everyone for your valuable feedback. This is why I show these ideas here.

@crait Excellent idea. I will put a switch in EEPROM to turn off the warning for good, if you want to do so. Ditto for the compiler. When you do that, you will be making a conscious choice.

@Rakkachi I loathe the idea of making something obnoxious. Thanks for a very descriptive feedback.

@Hanski We will add a headphones detection circuit in next hardware revision


I agree with a lot of those points. It would be nice to have the warning as part of the normal bootup splash screen(s) but perhaps only need to dismiss it the first time you play a freshly loaded game, then every time after than have a 2 -5 second timer?

couldn’t this just be in the manual?
i think its fine that its in the option menu where you adjust the volume but at startup is a little overkill

if we have to open the book on health and safty, stuff like rsi also come to mind
and not playing in dimlit rooms and at least 60cm away from screen

So if there is no headphone detection circuit what’s happening when headphone attached? I can’t imagine how output selection works :sweat_smile:

1 Like

Its actually not so complicated. There is only 1 volume control. You just turn down the volume.

Edit: and I tried today with maximum sound from earphones. OK its loud but not deadly loudly:skull::grin:

Edit2: I am just now finetuning the way the volume control works. Left it to last minute, I admit.

1 Like

There doesn’t necessarily have to be programmical detection for the sound to be diverted away from the speakers and sent out the headphones, right?

To have 2 different amplification levels we do need detection of headphones, unless its a hardware dictated drop (aka resistor that drops the volume for the headphones)

But its not all that difficult to do. Next revision of board will have it.

It’s usually a physical switch within the headphone socket, the end of the headphone jack pushes a pin out of the way breaking the speaker connection.

Thats exactly what happens here as well. Speaker is not on when headphones are plugged in. But in order for the micro to know that this has happened, we need to wire the circuit back to an input pin in the micro. Then the micro can detect headphones/speaker and adjust level of amp accordingly. In hindsight this was a mistake on my part not to design in but if we now start fixing this it is going to delay us even more. So the earlybirds at least wont have this feature

If the eventual fix isn’t too difficult, perhaps the info can be added to the site somewhere as a project for people to complete. That is, if it’s as simple as soldering a wire between two parts of the board.


Thats a really good idea.

Though, if you’ve ever soldered a jumper wire to a 0.5mm pin pitch micro, you know it takes a steady hand and decent technique.

1 Like

Maybe wiring one of the header pin?

1 Like

Yes, that could be a workable hotfix.

I need to stress that this is not a “showstopper” - it is not something that will stop you from enjoying your Pokitto.

It is just a matter of convenience. You can adjust the volume anywhere, anytime. The volume control is hardwired to pressing c and left and right. because the trigger is in the interrupt code, no matter what software is running, you can adjust the volume.

Similarily, the volume blocker is in the low-level code now. So you can’t put silly values into the volume settings anymore.

I have been working on this for 2-3 days now and its beginning to be solved, and the “warning” is not as necessary as what it was when I began this thread.

bit late to this discussion but I really dont like the idea of seeing a message like this more than once.

you mention that c+ left/right controls the volume, this sounds similar to laptop special keys. How about having the headphone limit in place as normal (it wont go past the ‘safe’ limit no matter how many times you try), BUT…
also implement a hidden way to boost past the limit. eg. C + B + left/right. harder to do but its still possible.
(or for retro kicks, maybe a konami cheat code to unlock full volume. :wink: )
(up, up, down, down, left, right, left, right, b, a)

1 Like

came to the same conclusion. device boots at safe level, u can kick up the volume if u want

1 Like

Hi jonne, i really dont like the volume select at boot.
You mention it can be turned off in the EEPROM, can i do this myself ?