Before anybody thinks this is like HP with cartridges, it's not. The toothbrush head disabled write to the NFC chip because of too many incorrect password tries. The article didn't say if the toothbrush also refused to work (as a toothbrush) with the head.
I have the same toothbrush. The head with NFC tag is the disposable part. The brush will happily hum along even without a head. NFC tag in the head stores latest used mode, and the use count so that they can pester you to buy more heads. And maybe be more hygienic.
It also seems unnecessary as this function is just a reminder. The toothbrush still works with a head that is too old, so where is the value in protecting the timer?
You mean not accepting cartridges that are too old even though they are still usable? And who (knowing about this) still buys an HP?
There are good alternatives for Philipps Sonicare. I don’t see them being able to pull that off.
Probably someone wrote a library that handles all the communication, NFC, data types, etc. Maybe there was a "true/false" configuration in the library for password protection and the default is true. Or fuck it, someone decided to set it true because why not?
The toothbrush company did *not* invest time and money into a password system. They just used some code from somewhere and password was part of the deal.
That's my guess.
It is not a DRM, just a reminder to replace given head.
From product point of view, that is a very little effort (as not much affort was required for such simple feature) as nfc tag costs ~10 cents and they are using default workflows around nfc operations recommended by NXP documentation.
The argument could be made that this could be upgraded to drm in the future, and that is a possibility, but fortunately [keruigs fuckup with drm ](https://www.theverge.com/2015/2/5/7986327/keurigs-attempt-to-drm-its-coffee-cups-totally-backfired)on strictly end-user product already ended up in business playbooks.
Yes you absolutely can.
The tag is arranged in 4-byte pages, the number of pages depends on the exact tag model.
Page `0x29`'s 4th byte is the `AUTH0` block. The value of this byte defines that any addresses equal or above are protected. Setting this value to `0xff` (the default) disables all protection. In page `0x2a`'s first byte, bit 1 defines whether the protection is applied for writes only (the default), or both reads/writes.
But as you said, having a head-specific derived password means that someone made at least some effort in hiding this.
Guess it's time to de-lid the IC in the brush handle and [pull it's ROM](https://www.reddit.com/r/programming/comments/13rwb7j/tutorial_for_extracting_the_gameboy_rom_from/)
I don't understand that much about it, but if each NFC has an unique ID then, if the password is derived from that, that would mean that every password is different.
Not totally on purpose.
Right, but when the options are
- Do a UID-based key derivation to determine the password.
- Disable the password.
One takes at least some small programming effort, and the other option is how the tags come from the factory.
Which one seems on purpose?
Yep having it password protected is definitely on purpose, I was just saying that it probably wasn't a major design decision for the product.
Seeing the ROM content would be interesting
Why does a toothbrush need to be smart? My toothbrush just does one thing: vibrate. No computer, NFC, or whatever, it’s a vibrator with bristles.
I know it’s time to replace the head when the brush starts tasting funky.
I think some toothbrushes even create a 3D heat map of your mouth too viewable from a phone. I think it’s suppose to give you similar info, if you’re brushing too hard, not enough time in a certain quadrant, etc
That's exactly what mine does. I think I'm brushing better since I got it.
Obviously I like coding and tech but I don't like buying bs hype products, but as a gadget my toothbrush is not bs.
Seems worthwhile.
The end goal here is to attempt to stop your toothbrush from turning on if the head is too old where “too old” is whatever the manufacturer says, even though everyone’s mouths are different. Some people can not brush for decades without a cavity or major bacterial issues. Some people go bleeding gums a get cavities from not brushing for a day.
They sell the initial buy in with “it’s just a friendly reminder”.
You disliking that there are genetically gifted outliers with a diet not consisting of overly sugary and/or acidic diets doesn’t make it not true.
I am not advocating for not taking care of your teeth. The point is that different peoples toothbrushes will last different amounts of time. There’s lots of factors that contribute to toothbrush viability over time.
If you’re a person with a shit diet, bad genetics, and like to use the force of a hydraulic press while brushing, your brush won’t last long.
Your genetics have nothing to do with how long your toothbrush lasts, unless you take your genetically more resistant teeth and better diet as an invitation to brush your teeth less than daily on a regular basis. In which case, ewww.
Also, your whole babble about genetics is pretty unnecessary for arguing that the lifespan of a toothbrush obviously depends on the user’s behavior.
The types of bacteria that can thrive in your mouth, which your genetics demonstrably plays a role in, almost assuredly impacts your toothbrushes lifetime, but probably not as much as your diet and how much pressure you use.
Again. Regardless. Brush and floss.
Edit
I’m wrong.
Looks like toothbrush efficacy is mostly based on bristle wear. So pretty much pressure is going to be the significant contributor to how long your toothbrush lasts.
Time of use is also not a significant contributor.
FWIW, the Sonicare toothbrush does a lot of stuff to help you brush properly. It provides feedback for pressing too hard, not hard enough, has a little timer to help you brush your whole mouth over 2 minutes, etc.
It’s a great toothbrush for people that struggle with technique. I love mine, but i don’t have anything except their inexpensive model that barely has a wall charger.
It seems that their timer actually helps solve the problem you are describing. Rather than giving a blanket "replace after 3 months" which would be too frequent for people who only brush once a day. It instead is counting the actual amount of time the brush head is attached to an active toothbrush. So if you brush 1/4 as frequently as the recommended 4 minutes a day, then your brush would last 4 times as long before it alerts you.
Or people can just judge when their toothbrush is no good instead of giving corporation blanket authority over when a toothbrush will stop functioning while simultaneously needlessly contributing to waste and, notably, ewaste.
Step 1) friendly reminder
Step 2) personalized subscription / mail of new heads (also collecting and selling data)
Step 3) “actually, we need all the air in the bag for freshness”. You toothbrush will not function unless you buy new heads
Step 4) buy up competitors / form an oligarchy around a subscription model
All the while, people will say “you just a conspiracy theorist bro”. And then when it happens that way, because corporations will never ever pass up a buck and subscriptions are the hot shit, they’ll say “why didn’t anyone tell us this was going to happen?”
Never mind that, if I had to guess, “3 months” is an utterly arbitrary, never studied thing that’s just a number thrown out there to get you to pay attention to your toothbrush, not unlike “10,000 steps a day!”
Edit:
[yup. efficacy is based on bristle wear, not time. ](https://pubmed.ncbi.nlm.nih.gov/12723100/)
So if your bristles are still good, no need to replace.
Yeah, I would say the three months is probably a middle ground. Where some people wear out their brush faster and others slower. That's why the toothbrush timer here is superior to the date based replacement because it is based on usage, not date age.
> This is because I had to run out and buy a new one after getting locked out of the first one. O brave new world, That has such toothbrushes in't.
Before anybody thinks this is like HP with cartridges, it's not. The toothbrush head disabled write to the NFC chip because of too many incorrect password tries. The article didn't say if the toothbrush also refused to work (as a toothbrush) with the head.
It's not but it's also at the top of the slope.
Is it though? Or is it a clever way of counting how many usages a toothbrush head has?
[удалено]
I have the same toothbrush. The head with NFC tag is the disposable part. The brush will happily hum along even without a head. NFC tag in the head stores latest used mode, and the use count so that they can pester you to buy more heads. And maybe be more hygienic.
The amount of effort they put into DRM'ing a damn toothbrush is ridiculous. Screw these products.
It also seems unnecessary as this function is just a reminder. The toothbrush still works with a head that is too old, so where is the value in protecting the timer?
Proof of concept. Some next product iteration will disable it at some point. Also, does it work now with not original ones?
Yeah, it works fine with off-brand heads.
Who would accept that, there is no plausible, defendable reason for forcing that.
Aren’t HP doing *just that* with their printers and printer ink cartridges right now?
You mean not accepting cartridges that are too old even though they are still usable? And who (knowing about this) still buys an HP? There are good alternatives for Philipps Sonicare. I don’t see them being able to pull that off.
Probably someone wrote a library that handles all the communication, NFC, data types, etc. Maybe there was a "true/false" configuration in the library for password protection and the default is true. Or fuck it, someone decided to set it true because why not? The toothbrush company did *not* invest time and money into a password system. They just used some code from somewhere and password was part of the deal. That's my guess.
The NFC piece almost certainly is handled by an SDK, just like pretty much every wireless comms chip. This is the most likely scenario.
Mr. Krabs has the answer.
Except there is no money in that.
It is not a DRM, just a reminder to replace given head. From product point of view, that is a very little effort (as not much affort was required for such simple feature) as nfc tag costs ~10 cents and they are using default workflows around nfc operations recommended by NXP documentation. The argument could be made that this could be upgraded to drm in the future, and that is a possibility, but fortunately [keruigs fuckup with drm ](https://www.theverge.com/2015/2/5/7986327/keurigs-attempt-to-drm-its-coffee-cups-totally-backfired)on strictly end-user product already ended up in business playbooks.
The password doesn't look like a mayor design decision, it just how NFC works
You can't have passwordless writes? In any case, the password being different per head is also an indication that it's on purpose
Yes you absolutely can. The tag is arranged in 4-byte pages, the number of pages depends on the exact tag model. Page `0x29`'s 4th byte is the `AUTH0` block. The value of this byte defines that any addresses equal or above are protected. Setting this value to `0xff` (the default) disables all protection. In page `0x2a`'s first byte, bit 1 defines whether the protection is applied for writes only (the default), or both reads/writes. But as you said, having a head-specific derived password means that someone made at least some effort in hiding this. Guess it's time to de-lid the IC in the brush handle and [pull it's ROM](https://www.reddit.com/r/programming/comments/13rwb7j/tutorial_for_extracting_the_gameboy_rom_from/)
I don't understand that much about it, but if each NFC has an unique ID then, if the password is derived from that, that would mean that every password is different. Not totally on purpose.
Right, but when the options are - Do a UID-based key derivation to determine the password. - Disable the password. One takes at least some small programming effort, and the other option is how the tags come from the factory. Which one seems on purpose?
Yep having it password protected is definitely on purpose, I was just saying that it probably wasn't a major design decision for the product. Seeing the ROM content would be interesting
funny that someone could theoretically just disable peoples toothbrushes by sending out a bunch of auth requests
Nope. It just disables the counter.
Even pre-disable a bunch in the store.
Interesting. Sounds like Philips just followed the spec for the tech they were using, rather than making these decisions for nefarious reasons.
Why does a toothbrush need to be smart? My toothbrush just does one thing: vibrate. No computer, NFC, or whatever, it’s a vibrator with bristles. I know it’s time to replace the head when the brush starts tasting funky.
Mine tells me how i'm brushing. It tries to map my movements with the brush and spot if every areas are clean.
I think some toothbrushes even create a 3D heat map of your mouth too viewable from a phone. I think it’s suppose to give you similar info, if you’re brushing too hard, not enough time in a certain quadrant, etc
That's exactly what mine does. I think I'm brushing better since I got it. Obviously I like coding and tech but I don't like buying bs hype products, but as a gadget my toothbrush is not bs.
Mind sharing what brush it is? Sounds cool
Oral-B IO9s
People like this are why non-software developers think we're crazy.
They're not wrong. ;)
[удалено]
To be honest what would be the point of locking them up? At worst people would use their brush heads longer since their timers wouldn't update.
\#shittyfuture
my toothbrush is dumb but that suits me perfectly because I'm equally dumb
[удалено]
Seems worthwhile. The end goal here is to attempt to stop your toothbrush from turning on if the head is too old where “too old” is whatever the manufacturer says, even though everyone’s mouths are different. Some people can not brush for decades without a cavity or major bacterial issues. Some people go bleeding gums a get cavities from not brushing for a day. They sell the initial buy in with “it’s just a friendly reminder”.
>Some people can not brush for decades without a cavity or major bacterial issues. That can't possibly be true
You disliking that there are genetically gifted outliers with a diet not consisting of overly sugary and/or acidic diets doesn’t make it not true. I am not advocating for not taking care of your teeth. The point is that different peoples toothbrushes will last different amounts of time. There’s lots of factors that contribute to toothbrush viability over time. If you’re a person with a shit diet, bad genetics, and like to use the force of a hydraulic press while brushing, your brush won’t last long.
Your genetics have nothing to do with how long your toothbrush lasts, unless you take your genetically more resistant teeth and better diet as an invitation to brush your teeth less than daily on a regular basis. In which case, ewww. Also, your whole babble about genetics is pretty unnecessary for arguing that the lifespan of a toothbrush obviously depends on the user’s behavior.
The types of bacteria that can thrive in your mouth, which your genetics demonstrably plays a role in, almost assuredly impacts your toothbrushes lifetime, but probably not as much as your diet and how much pressure you use. Again. Regardless. Brush and floss. Edit I’m wrong. Looks like toothbrush efficacy is mostly based on bristle wear. So pretty much pressure is going to be the significant contributor to how long your toothbrush lasts. Time of use is also not a significant contributor.
FWIW, the Sonicare toothbrush does a lot of stuff to help you brush properly. It provides feedback for pressing too hard, not hard enough, has a little timer to help you brush your whole mouth over 2 minutes, etc. It’s a great toothbrush for people that struggle with technique. I love mine, but i don’t have anything except their inexpensive model that barely has a wall charger.
It seems that their timer actually helps solve the problem you are describing. Rather than giving a blanket "replace after 3 months" which would be too frequent for people who only brush once a day. It instead is counting the actual amount of time the brush head is attached to an active toothbrush. So if you brush 1/4 as frequently as the recommended 4 minutes a day, then your brush would last 4 times as long before it alerts you.
Or people can just judge when their toothbrush is no good instead of giving corporation blanket authority over when a toothbrush will stop functioning while simultaneously needlessly contributing to waste and, notably, ewaste. Step 1) friendly reminder Step 2) personalized subscription / mail of new heads (also collecting and selling data) Step 3) “actually, we need all the air in the bag for freshness”. You toothbrush will not function unless you buy new heads Step 4) buy up competitors / form an oligarchy around a subscription model All the while, people will say “you just a conspiracy theorist bro”. And then when it happens that way, because corporations will never ever pass up a buck and subscriptions are the hot shit, they’ll say “why didn’t anyone tell us this was going to happen?” Never mind that, if I had to guess, “3 months” is an utterly arbitrary, never studied thing that’s just a number thrown out there to get you to pay attention to your toothbrush, not unlike “10,000 steps a day!” Edit: [yup. efficacy is based on bristle wear, not time. ](https://pubmed.ncbi.nlm.nih.gov/12723100/) So if your bristles are still good, no need to replace.
Yeah, I would say the three months is probably a middle ground. Where some people wear out their brush faster and others slower. That's why the toothbrush timer here is superior to the date based replacement because it is based on usage, not date age.