1Wire温度センサDS18B20の偽物を追え!
本来は"いろいろ試す"枠の内容ですがこれだけでかなりのボリュームなので
独立記事で行かせていただきます!
●DS18B20がぱちもん乱舞していた件
>AmazonとかAliexpressで売ってる激安DS18B20はまず偽物の件
マジですか…
>特にステンの筒に覆われたタイプの奴はほぼ100%ぱちもん
おいいいいいいいいいいいーーーー!!!
※Molexのコネクタはねむいさんがつけました。
しかも二つも!!!!!!!!
※Molexのコネクタはねむいさんがつけました。
なぜねむいさんはいつもぱちもんをつかんでしまうのか…orz
↑のねむいさんの買ったやつは2016年くらいにAliexpressで買ったやつです。
ちなみに中華製偽物半導体の記事を見てSTM32のぱちもん乱舞の
話から、もしや温度センサも…って話になって調べたら電子工作では
ポピュラーなDS18B20にもパチモンがあると知った次第です。
こちらの方のGithubアカウントに細かい分析が書かれており、
2019年以降でebay,aliexpress,Amazonとかで異常に安い値段で購入可能な
温度センサ"DS18B20"もしくはそれの使用をうたう製品はまず中華製の
クローンもしくは偽物ということです。
そういうわけでねむいさんも手持ちのパチモン疑惑のDS18B20のステンの
筒入りセンサの調査を行ってみました。
上記のgithubアカウントで提示されているArduino向けのぱちもん判定
スケッチをSTM32C0のプロジェクトに移植してみました。
上記の画像の通りプロジェクト中のds18x20.hの赤枠のコメントを外すと
ぱちもん判定モード&パラサイトパワーモードで動作します。
(※MAXIMの製品サイトより引用)
また、"本物"のDS18B20はVCCが内部でダイオードを介してデータ線に
接続されている構造となっておりストロングプルアップという操作によって
VCC不要でデータ線とGNDの2線だけで通信が可能な"パラサイトパワー"が
使用可能ともなっております。
パラサイトパワーを使う際はDS18B20の"VCCとGNDを直結"する必要があります。
こんな感じでパラサイトアダプターを作ってみました。
また、パラサイトパワーで測定を行うには温度測定の際に1.5mAの電流を
供給する必要(ストロングプルアップ)があります。
STM32は1.5mA程度ならGPIOから電流供給可能なので、温度測定コマンドの
時だけODからプッシュプルに変更することにより追加のGPIOの操作なしで
ストロングプルアップを実現しております。
ていうわけで勝負!!!!
(※写真では通常モードですが実験はパラサイトパワーモードでやってます)
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x28D39E2B060000A3
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0x5A014B467FFF0610A3
All Okay!
This is THE GENUINE DS18B20!!
あれ…?
通った…?
本物…?
じゃもう一つ
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x2813A92B060000E9
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0x53014B467FFF0D10E9
All Okay!
This is THE GENUINE DS18B20!!
あ…
これも本物だ…
まず大前提としてDS18B20のROMIDは28-XX-XX-XX-XX-00-00-CRC
(XXは任意のHEX値)が本物たる最初のハードルとなります。
今回のステン棒DS18B20はそれぞれ下記のROMIDだったので…
0x28D39E2B060000A3
0x2813A92B060000E9
ちゃんとパラサイトパワーで動いてるしその後のスクラッチパッド
チェックもすべて通過したので本物だったのでしょう…
ステンな君たちのこと疑って悪かったです…
●大昔にTaobaoで大量購入したDS18B20は!?
たしか東日本大震災の前後の超円高のころに大量に購入していたやつです。
骨董品のDS1820(DS18B20ではない)なんかも買って当時ちょこっと使って
それ以来ずっと寝かしていました。たしか150円くらいだったんですよね…
件のgithubの記事曰くレーザーマーキングから察するにねむいさんのは
2009年48週目製造のC4ウエハ、でROHS品であると言えます。
まとめて購入したので全部同じマーキングとなっておりました。
同じロットだったのでしょう。
簡単に抜き差しできるアダプターも作って5個ほど試してみます!!
いざ勝負!!
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x289C63850200009A
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0xAC014B467FFF041086
All Okay!
This is THE GENUINE DS18B20!!
1個目本物
おk
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x28976285020000AF
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0xBD014B467FFF0310FF
All Okay!
This is THE GENUINE DS18B20!!
2個目本物
おk
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x28C08985020000AE
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0xBB014B467FFF0510C6
All Okay!
This is THE GENUINE DS18B20!!
3個目本物
おk
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x286366850200001E
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0xB5014B467FFF0B10A3
All Okay!
This is THE GENUINE DS18B20!!
4個目本物
おk
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x28017D85020000BF
DS18B20 ROM ID Check Ok.
Scratchpad : 0x50054B467FFF0C101C
Read Default ScratchPad Check OK.
Scratchpad : 0x5005B4B91FFF0C1013
Exchange 9-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B463FFF0C10FC
Exchange 10-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x5005B4B95FFF0C10F3
Exchange 11-Bit Mode and Alarm Reg Check OK.
Scratchpad : 0x50054B467FFF0C101C
Write Modify ScratchPad Check OK.
Get Temperature Datas.
Scratchpad : 0xE5014B467FFF0B10BE
All Okay!
This is THE GENUINE DS18B20!!
5個目本物
おk
5個全部本物!やったね!
というわけでねむいさんが持ってたDS18B20はぜーんぶ本物で安心して
パラサイトパワーでもビシバシ使うことができます!めでたしめでたし!
…で終わるわけないでしょ!
●改めて偽物DS18B20を追え!
さて、じゃぁぱちもんDS18B20ってどんなんなの?って言う感じですが、
きわめて遺憾ではありますが、過去1年縛りでDS18B20でググってみると
ぱちもんと気づかず使用されている
かなりたくさんいることがわかりました…
ArduinoとかESP32とかラズパイ+Pythonとかのいわゆるファーストプロト
タイピングな人たち狙い撃ちされている感じでございますね…
私も自腹きって今の半導体高騰の相場では異常に安いやつを買ってあえて
試してみました!5個入りでステンのケース入りで1000円以下☆
普通に買ったら1個1000円以上するのにこの時点で本物のわけないだろうが
ぇーっ(ゴッゴッ
秋月でも860円になってて高くて買えないよぉ…
それは置いといてとりあえずパラサイトパワーモードで試してみます!
うっすらネタバレしてますけど!
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x0000000000000000
ROMID does NOT follow expected pattern 28-XX-XX-XX-XX-00-00-CRC!
はい
パラサイトパワーモードでマトモに動きません!
パチモンでしたーーー!!!やったぜ!
じゃなくてクソァ!!!
Welcome to STM32C031C6T6 test program !!
Version W.I.P!!
Build Date : Mar 21 2023
DS18B20 Genuine Checkers Start!
DS18B20 Device found!
ROM ID : 0x2818B85704493C61
ROMID does NOT follow expected pattern 28-XX-XX-XX-XX-00-00-CRC!
パラサイトじゃないモードでも動かしてみました!
最初のROMIDのパタンチェックすらクリアできてません!!
本物の偽物です!!!!!!おめでとう!!!!!!
なんでやねん!
ちなみにねむいさんのSTM32G0とSTM32C0のサンプルコードでは
パチモン判定モードではSTN液晶にちゃんと"ぱちもん"と表示して
そこから先に進めなくなる親切設計です☆
残り4個もどうせ偽物なので試す時間ももったいないのでさっさと産業ごみで
捨てる予定ですがとりあえずステンのケースぶっ壊して中の偽物を引きずり
出してやりましょう…!!
――――― 5分後 ―――――
はぁはぁ…ステンのケースは本物のステンのようでめっちゃ固い…
――――― 10分後 ―――――
なんと偽物DS18B20使ってるくせにそれ以外はいい仕事してやがって中まで
ぎっちり硬いエポキシが充填されておりました…なんでやねん!
というわけで"最近の異常に安く買えるDS18B20、特にステンのケースに
入ってる奴はまず偽物"説はマジだったのとねむいさんが持ってたステンの
奴は本物のDS18B20が使用されている貴重品なので大事に大事に使って
いこうとおもいます!
…こういうパチモンが狙う市場っていわゆるライトユーザー層なのかなと
思ってます。"とりあえず動いた(←温度がみえたっぽいから)"おっけーで
終わる人はまずこれをぱちもんと見抜けませんし気づきもしません。
ファーストプロトタイピングが当たり前になった現在、ハードウエア何も
知らなくても"プログラミング"を楽しめるようになったので中華の業者が
そいつらだましてそれで飯食えるくらい魅力のある"市場"になったって
ことなのでこれから先こんなんばっかりになりそうですね〜〜…。
偉そうに言ってるねむいさんもDS18B20のぱちもんの存在知ったの今年の
はじめです。STM32に限っては10年以上使ってきて細かいエラッタまで知り
尽くしてるから情報ばんばん取り込んでたので回避できてきましたが…
XMEGAとか思いくそ被弾しましたからね…猛省猛省。
これから先、電子工作するときは動いたからおっけーの気分で終わらせず、
電子デバイスの真贋の情報は常にアンテナ張って徹底収集、なおかつ
ちゃんとオシロスコープで波形を確認したりデータシートをよく読んで
齟齬がないかとか最低限のハードウエア確認はしていこうと思いまし、た!
でもパチモン掴んだらぶろぐのネタになっておいしいのでこれはこれで。
-
免責・連絡先は↑のリンクを
↓SNSもやってます↓
powered by まめわざ- ARM/STM32 (117)
- OpenOCD (27)
- ARM/NxP (34)
- ARM/Cypress (5)
- ARM/Others (3)
- ARM/Raspi (1)
- AVR (13)
- FPGA (4)
- GPS/GNSS (19)
- MISC (80)
- STM8 (2)
- Wirelessなアレ (16)
- おきぱ (1)
- ブラウザベンチマーク (28)
- 日本の自然歩道 (25)
- STM32U0はぢめました
⇒ ねむい (08/07) - STM32U0はぢめました
⇒ ひかわ (07/28) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (05/17) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - いろいろ試す61(と今年の反省会)
⇒ ねむい (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/01) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (12/31) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ひかわ (12/31)
- September 2024 (1)
- August 2024 (1)
- July 2024 (1)
- June 2024 (1)
- May 2024 (1)
- April 2024 (1)
- March 2024 (1)
- February 2024 (2)
- January 2024 (1)
- December 2023 (4)
- November 2023 (2)
- October 2023 (2)
- September 2023 (1)
- August 2023 (2)
- July 2023 (1)
- June 2023 (2)
- May 2023 (3)
- April 2023 (1)
- March 2023 (1)
- February 2023 (1)
- January 2023 (1)
- December 2022 (2)
- November 2022 (1)
- October 2022 (1)
- September 2022 (1)
- August 2022 (1)
- July 2022 (1)
- June 2022 (1)
- May 2022 (1)
- April 2022 (1)
- March 2022 (1)
- February 2022 (1)
- January 2022 (1)
- December 2021 (2)
- November 2021 (2)
- October 2021 (1)
- September 2021 (1)
- August 2021 (1)
- July 2021 (1)
- June 2021 (1)
- May 2021 (1)
- April 2021 (1)
- March 2021 (1)
- February 2021 (1)
- January 2021 (1)
- December 2020 (3)
- November 2020 (1)
- October 2020 (1)
- September 2020 (1)
- August 2020 (1)
- July 2020 (1)
- June 2020 (2)
- May 2020 (1)
- April 2020 (1)
- March 2020 (1)
- February 2020 (1)
- January 2020 (1)
- December 2019 (3)
- November 2019 (1)
- October 2019 (1)
- September 2019 (2)
- August 2019 (1)
- July 2019 (1)
- June 2019 (1)
- May 2019 (1)
- April 2019 (1)
- March 2019 (1)
- February 2019 (1)
- January 2019 (1)
- December 2018 (3)
- November 2018 (2)
- October 2018 (1)
- September 2018 (1)
- August 2018 (1)
- July 2018 (1)
- June 2018 (1)
- May 2018 (1)
- April 2018 (2)
- March 2018 (1)
- February 2018 (1)
- January 2018 (1)
- December 2017 (2)
- November 2017 (2)
- October 2017 (1)
- September 2017 (1)
- August 2017 (1)
- July 2017 (1)
- June 2017 (1)
- May 2017 (1)
- April 2017 (1)
- March 2017 (2)
- February 2017 (2)
- January 2017 (2)
- December 2016 (7)
- November 2016 (2)
- October 2016 (2)
- September 2016 (1)
- August 2016 (1)
- July 2016 (1)
- June 2016 (1)
- May 2016 (2)
- April 2016 (1)
- March 2016 (2)
- February 2016 (1)
- January 2016 (1)
- December 2015 (3)
- November 2015 (1)
- October 2015 (3)
- September 2015 (2)
- August 2015 (2)
- July 2015 (3)
- June 2015 (3)
- May 2015 (4)
- April 2015 (2)
- March 2015 (4)
- February 2015 (1)
- January 2015 (3)
- December 2014 (3)
- November 2014 (2)
- October 2014 (1)
- September 2014 (2)
- August 2014 (2)
- July 2014 (3)
- June 2014 (2)
- May 2014 (1)
- April 2014 (1)
- March 2014 (4)
- February 2014 (4)
- January 2014 (3)
- December 2013 (5)
- November 2013 (4)
- October 2013 (3)
- September 2013 (2)
- August 2013 (2)
- July 2013 (2)
- June 2013 (3)
- May 2013 (2)
- April 2013 (2)
- March 2013 (2)
- February 2013 (2)
- January 2013 (3)
- December 2012 (4)
- November 2012 (2)
- October 2012 (2)
- September 2012 (4)
- August 2012 (1)
- July 2012 (3)
- June 2012 (2)
- May 2012 (3)
- April 2012 (3)
- March 2012 (2)
- February 2012 (3)
- January 2012 (3)
- December 2011 (5)
- November 2011 (3)
- October 2011 (2)
- September 2011 (2)
- August 2011 (2)
- July 2011 (2)
- June 2011 (2)
- May 2011 (2)
- April 2011 (2)
- March 2011 (2)
- February 2011 (2)
- January 2011 (3)
- December 2010 (7)
- November 2010 (1)
- October 2010 (1)
- September 2010 (1)
- August 2010 (3)
- July 2010 (4)
- May 2010 (1)
- April 2010 (2)
- March 2010 (2)
- February 2010 (2)
- January 2010 (3)
- December 2009 (3)
- November 2009 (8)
- October 2009 (7)
- September 2009 (5)
- August 2009 (4)
- July 2009 (6)
- June 2009 (7)
- May 2009 (14)
- January 1970 (1)
Copyright(C) B-Blog project All rights reserved.