オリジナルの基板で一つ、CNC3シールドで一つ、OnStepシステムを作りました。OnStep製作はこの2台が初めてですが、昔からArduinoやRaspberry Piを使った電子工作しているので、その知識を活かして一番簡単な作り方を書きたいと思います。30分もあれば動作するところまではいけます、きっと。
やはり一番簡単に作る方法は、WeMos R32(ESP32 Arduino互換ボード)とCNC v3シールド(CNCや3Dプリンタ用拡張基板)を使う方法が、ハンダ付も2ヶ所のみで一番簡単です。ハンダ付2ヶ所だけにするには条件があります。WeMos R32にはロットによって内臓するDCDCコンバータに不具合があるようです。まずはそれを調べて問題がなければ、あっという間に完成します。
【追記】ステッパードライバにTMCxxxを使うと急に簡単ではなくなってしまいます。トラブルを回避するには、TMCxxxxは使わに事をおすすめします。DRV8825またはLV8729あたりが入手性も含め良いと思います。
WeMos R32の確認方法
まずは、WeMos R32のジャックに外部電源(8V〜14V)を接続します。一般的には12Vですね。

それから、テスターで電圧を測ります。マイナスはWemosのGNDピンにプラスは3.3Vピンに接続します。今回は、3.282Vでした。3.3Vにはちょっと足りませんが、問題ないでしょう。
3.3Vでは問題がないことが分かったので、ハンダ付は2ヶ所に決定。
この後もテスターは必要となります。テスターがないなら、この際買いましょう。安いのは1000円程度で買えます。
ここで3.3Vよりもかなり低い電圧だった場合は、他のサイトでも良く書かれていますが47K抵抗をハンダ付する必要があります。(写真がないので後日追記します。)低い場合は、Bluetoothなどの機能が不安定になるようです。
ハンダ付
WeMosからCNC3へ外部電源をそのまま引き込むコードをハンダ付します。

左がプラス、右がマイナスになります。コードを裂くときちょっと失敗して両方とも赤っぽくなってしまいました。ハンダ付はこれで終了(マイクロステップをソフト的に設定するためには、もうちょっとハンダ付けが必要です。)
CNC v3シールド
次にWeMosにCNCシールドを刺します。

CNCシールドは、中国製なので、ヘッダーピンが曲がってなかなかハマらないかもしれませんが、調整してはめ込みます。先ほどハンダ付したコードをCNCシールドのターミナルブロック(左下の青いブロックでネジが二つ付いたやつ)に極性を確認して差し込み、ネジで固定します。
10K抵抗をカットしましょう。ハンダこてで取っても良いですが、ニッパーでカットが一番簡単です。

【機械翻訳】CNC V3ステッパードライバーボードは、通常3Dプリンターの5Vデバイスに接続されていますが、OnStep望遠鏡コントローラは、3.3VデバイスであるWeMos D1 R32を使用しています。このため、1つの10K抵抗(ステッパードライバのENピンをHIGHにプルする)を切断するか、はんだ付けを解除して取り外す必要があります。
【追記】またESP32のGPIO12は、フラッシュチップに(VDD_SDIO)に電力を供給する内部レギュレーターの出力電圧を選択するためのブートストラップピンとして使用されています。Firmwareアップロード時にGPIO12ピンに何かが接続されているとアップロードに失敗する可能性が高いです。(例 A fatal error occured: MD5 of file does not match data in flash!)このGPIO12に何がつながっているかというと、この10K抵抗です。この意味でも清く10K抵抗はカットです!

EN端子をLow(電圧を0)にするとモータードライバがONになります。未接続の(抵抗をカットした)場合はIC内部でプルダウンされているためLowとなり、モータードライバが駆動できる状態となります。
EN端子をGNDに接続(TMCxxxxドライバを使う場合)
【追記】抵抗をカットしたあとTMC2208ドライバを使う場合にBluetoothが不安定になるとのコメントがありました。PulldownしないとENが不安定になっているのかもしれません。

図のENとGNDを配線してはんだ付けし繋ぎます。TMC2208以外のドライバを使う場合でも不具合は出ません。
ステッパーモータドライバ
赤道儀としてだけなら、RA軸用、DEC軸用の2個のドライバで問題ありません。フォーカーサやローテータを使うならそれに合わせて必要です。選択肢は下記のものがあります。
- A4988(安い、手に入りやすい。動作音が大きい。)
- DRV8825(安い、マイクロステップが1/32まで使える。動作音がちょっとだけ気になる。)
- TMC2208(前出の2個よりちょっと高い。配送に時間がかかる(中国から)。マイクロステップは1/16まで使える。動作音が兎に角静か。)
- LV8729(前出の3個よりちょっと高い。配送に時間がかかる(中国から)。マイクロステップが1/128まで使える。実用的なのは1/32まで。動作音は静か。)
個人的には、静かなTMC2208かLV8729が好みです。ただTMC2208の電圧調整(後述)ノブが裏にあるので嵌めた状態では調整ができません。まあ調整は最初の一回だけなので、はめる外すを何回か繰り返せば問題ありません。その点他のドライバは、表面に調整ノブがあるので楽です。
マイクロステップの設定
次に選択したドライバに合わせて、マイクロステップをジャンパーピンで設定する必要があります。ステッパーモーターは、大抵200ステップで1回転します。よって1ステップで360/200=1.8度回転します。マイクロステップを設定するとより細かい刻みで回転します。1/16に設定すると1.8/16=0.1125度となり1ステップで0.1125度回転します。特に赤道儀など細かい精度が必要なときは必須だと思います。ただ細かいほうが良いとマイクロステップを1/128にすると驚くほどトルクが落ちますので気をつけて!
マイクロステップ/フルステップ | % 保持トルク/ステップ |
1 | 100.00% |
2 | 70.71% |
4 | 38.27% |
8 | 19.51% |
16 | 9.80% |
32 | 4.91% |
64 | 2.45% |
128 | 1.23% |
256 | 0.61% |

例えば、DRV8825で説明するとマイクロステップを1/16にしたい場合は、LOW-LOW-HIGHですからMS3をジャンパーピンで繋ぎます。(HIGHの部分をジャンパーで繋ぎます)。TMC2208で1/16に設定する場合は、HIGH-HIGH-LOWなのでMS1とMS2をジャンパーします。

丸の中がAxis名です。CNCや3Dプリンターでの呼び名ですね。XがRA軸、YがDEC軸となります。XとYにはTMC2208を使います。1/16としますので、MS1とMS2をジャンプします。Zはフォーカーサー用でDRC8825で1/16としますのでMS3をジャンプします。フォーカーサーをもう一つ、またはローテーター用にAを使う場合は写真の左2か所をジャンプします。
※本家サイトの説明では、Z軸とA軸が入れ替わっています。説明の方をZとAを入れ替えて解釈すると良いと思います。
ソフト側でマイクロステップ設定できるようにする場合
ハンダ付が苦にならないのであれば、下記のようにコードを繋げばソフト側でマイクロステップを設定することもできます。この場合はジャンパーピンは不要です。Config.hで変更できるようになります。ただしソフト側で設定できるのはAxis X と Axis Yのみで、Axis Z と Axis Aは依然ジャンパーピンで設定する必要があります。

ハンダ付けする場合の配線の説明をします。上記の図とはちょっと違いますが、一箇所に2本の線をハンダ付けするのは難易度が高いので、簡単になるように変更しました。

黄色-32、緑-33、茶色-15、青-0となります。

黄色、緑、茶色を上記のようにハンダ付けします。

こんな感じになります。青は裏側なのでCNCシールドをWemosにセットしてからハンダ付けします。

隙間から青コードを出して、図のようにGPIO0にハンダ付けします。これでジャンパーを使わずソフト的にマイクロステップを設定できるようになります。Slew時にマイクロステップを使わない設定もできるので、Slew時のパワーを上げることができます。
ドライバのvref調整
CNCシールドのジャンパーが済んだら、ドライバを嵌めます。次に行うのはドライバのvref調整です。Wemosに外部電源(12V)を供給します。

テスターのマイナス側は、ドライバのGNDピンでもいいですし、ボード上のGNDであればどこでも大丈夫です。CNCシールドの右端の黒いヘッダーピンは全部GNDなので、今回はそこにワニクリップで固定しました。

A4988、DRV8825、LV8729は、テスターのプラスを調整ノブ(表面のネジ、可変抵抗)に当てます。TMC2208だけは3個並んだホールの左のホールに当てます。写真のものは左がハンダで埋まっています。(調整ノブは裏側!怒)ネット上には沢山vrefの計算について書かれたサイトがあります。正確に計算されたい方は、ネットで検索して下さい。設定はモーターを接続する前に行います。想定以上の電圧がかかりモーターを壊す可能性があるからです。
僕は計算が苦手なので、いつも0.6Vくらいに設定します。その後実際モーターを動かしてみて、モーターの動きやトルク、発熱を見ながら微調整しています。電圧が低過ぎる場合はパワー不足になるため負荷がかかると脱調(空回り、異音、バイブレーション)が起こります。電圧が高すぎる場合は異常な発熱が起こります。モーターの寿命を縮める可能性があると思います。必要なトルクを出せる最低の電圧もしくは多少多めにした電圧に設定します。
調整が終わったら、ステッパーモーターを接続します。

写真の青四角からそれぞれのステッパーモーターに接続して完成です。
ファームウェアのアップロードについては割愛します。ファームウェアをアップロードしたら、すぐに動作します。一番簡単な動作確認は、AndroidスマホまたはタブレットにGoogle PlayストアよりOnStepアプリをインストールします。
システム設定でBluetoothペアリングをします。Config.hで変更していなければ、OnStepと表示されるはずです。
ペアリングが終わったら、OnStepアプリに戻り右上のメニューからConnectionを選びます。ペアリングしたOnStepデバイスが表示されるので、それを選択します。接続されるとメニューのBluetoothアイコンの左右に髭が生えます。また「OnStep x.xx Ready」と表示されます。今後はアプリを立ち上げると自動で接続されます。


Guide/Focusを選択してNESW(東西南北)ボタンを押すとモーターが動きます。でも初めての人は動かないと思うはずです。超微動しているから気づかないのです。メニューより48x – Fastまたは1/2 Max – VFastを選ぶと動くことを確認出来るはずです。

自分はiPhoneユーザーなので、中古ショップで激安Androidスマホを購入してOnStep Bluetoothコントローラとして使用しています。最新のAndroidにはまだ未対応のようなので、中古のAndroidがちょうど良いと思います。iPhoneにもOnStepアプリ(Gotomote)がありますが、Bluetooth接続ができないので、今回のシステムでは使えません。
あとは、好みのケースに入れたり、3Dプリンターでケースを作ったりどうぞご自由に。モーターへの配線はモーター付属のケーブルを使っても良いし(一番安全で簡単)、mini DIN端子や航空プラグを使って取り回しの良いケーブルに変えても良いと思います。
自分がデザインしたケースのデータをこちらにアップします。もし良かったらどうぞ・・・

安心の航空プラグGX-12を利用しました。不意に抜けたりは絶対しません。また、暗闇での抜き差しもminiDIN端子より圧倒的に簡単です(溝が大きいので)。

12V出力ジャックを追加しました。(CNCのターミナルブロックから配線するだけです。)下部にファインダー用Arimizoプレートを取り付けるネジ穴があります(インサートナットが必要です)。


GX12を利用してKeen-Oneに繋げる場合は上記のように配線します。因みに一般的なステッパーモーターのディフォルトの配線は、上図の向きで言うと左から黒 – 緑 – 青 – 赤となります。青と赤を入れ替えているのは物理的にモーターの回転を反転させたかったからです。ソフト的に変更できるので、そのまま接続する方が簡単ですね。

対面する端子の配線を同じにしましたので、間をつなぐケーブルはクロスにする必要があります。

配線はクロスケーブルとします。端子が対面しますので、左右が逆になります。緑-赤、黒-青がクロスします。
【その他必要なもの】
M2.5 12mm Screw & Nut x 4 (WeMosをケースに固定するため)
M2 10mm Screw & Nut x 4 (蓋を固定するため)
ついでにKeen-One EQ用の薄型ファインダーArimizoアタッチメントも一緒にアップしました。

部品の入手ですが、時間に余裕があるなら、これなんか超お得です。
42 モーター 17HS4401S キット 4 リード + cnc シールド v3 + usb ケーブル + 4 ドライバ拡張ボード uno R3
このような初心者向けの記事、とても助かります。チャレンジする気になりました。
ところで、モーターの選定はどのようにすれば良いのかまだ解っていません。もし次に何か記事を書いてくださるタイミングがあれば、是非お教えください。
コメントありがとうございます。
今日か明日の夜にでもステッパーモーターについて追記しときます。
選定基準は、トルク(どれくらいパワーが必要か)です。
はじめて、ハーモニックといい、on-stepの記事といい、マニアックな私にはワクワクするんですか記事ばかりです。
初めまして!お越しいただきありがとうございます。私もかなりなオタクと言われいます(笑 と言うかドン引きされています。
初めまして。
サイクロイド赤道儀が公開された頃から拝見しています。
本記事中にリンクが貼られているケースのモデルデータですが、現時点でも404のエラーコードが返ってきて、掲載ページにたどり着けません。
アドレスが間違っているとかはないでしょうか。
お手数ですが一度ご確認いただけるとありがたいです。
はじめまして、クマさん!
確認しましたが問題なさそうです。ただThingiversは良く不具合があるので・・・
https://www.thingiverse.com/thing:5500596
念の為違うダウンロードリンクを載せますね。
iPadで開いてみたら、たしかに404になりました。
ここは開きますでしょうか?
https://www.thingiverse.com/kenichi_aihara/designs
Thank you for this write up! I had so much trouble finding a nice write up on how to build a simple Onstep board.
ご回答ありがとうございます。
Dropboxへのアップもありがとうございました。先ほどダウンロードさせていただきました。
Keen-One EQ本体の時も似たようなことがあったみたいですが、Thingiverseは投稿者が見ているページと我々が見ているページには、タイムラグがあるのかもしれませんね。
Keen-One EQ本体の詳細説明ページへの追記はすでに反映されているので、プレビュー生成とかの順番待ちなのかなとも思いましたが、すでに2日以上たっているので、いくらなんでも遅いなとは思います。
2つ目にコメントいただいた、KENさんの投稿一覧も以前から何度か見させてもらっておりましたが、やはり表示されていません。
Dropboxにアップしていただいたデータを出力しつつ、気長に待ちたいと思います。
最近Thingiverseにおいてトラブル続きで愛想が尽きました。
Prusa運営のPrintableにプラットフォームを変更することにしました。こちらの方が圧倒的に安定していて操作もスムーズでした。もっと早く移行していればよかったです。
https://www.printables.com/social/362850-mrdeepaddicted/models
Hi Ken,
first of all thank you for making all of this available.
I;m almost complete with assembly, but stuck on getting motors to work.
what vref did you eventually use to make the motors work. I have gone as high as .8v and still the motors wont turn. I have even tried other stepper motors 4988 and 8729 and no results.
I’m thinking it might be a not enough vref voltage, but i’m scared as to how high i can go
Hi Dom,
Sorry for my late reply.
Even if the vref value is low, the motor makes some kind of sound or vibration. If the motor does not run at all, you should suspect something other than vref.
Anyway, in my environment, vref is about 0.55 to 0.65.
For LV8729 you should check the resistors on the stepstick and caculate the vref.
look this link for help:https://onstep.groups.io/g/main/message/6821
I set the vref to 1.3v for the LV8729 and working well.
はじめまして。
本ブログの3Dプリンター赤道儀の記事を拝見してから、3Dプリンターを購入し、自分でも作り始めてみました。
新しい赤道儀も楽しみにしています。
WeMos R32とCNCv3シールドを使用してONSTEPシステムを作成しているのですが、TMC2208を使用すると、bluetooth接続ができなくなる事象が起きてます。そのようなことは起きていませんでしょうか?
DECとRAに接続しているのですが、TMC2208を挿し込んだ状態ですとペアリング対象にも表示されず、TMC2208を外すと表示されるようになります。
ペアリング後にTMC2208を挿し込むと動作するといった状況です。DRV8825ではそのようなことは起きていません。
もじゃまるさん、すいません。ブログ放置してました。私も同じ症状が出ています。多分TMC2208の消費電力が大きくモーター動作時にBluetoothチップの電力不足が起きているのでは考えています。WeMos以外でも起きているのでTMC2208の癖によるものだと思います。LV8729も問題なく動作しますので、最近はLV8729を使うことにしています。
ご返信ありがとうございます。
同じ症状が出ているとのことでLV8729のほうがよいのかもしれません。
この質問を書き込んだ後に、「CNCの抵抗取り外し後のEN端子とGND端子を接続する」という記事を見かけ、試したところTMC2208でも安定してbluetoothが接続されるようになりました。なぜかはわかっておりませんが、ひとまず繫がるようになり安心しています。
Keen-One EQについて、このような赤道儀を自作できることに感動しました。ありがとうございます。
こちらについても質問がございます。
何度か組み直しているうちにWaveGenerator部品が音を立てながら空回りし、Output部分が動かなくなる事象か起きています。もし対処方法に見当がつくようであれば教えていただきたいです。
緩みそうな部品を交換してみたりもしましたが改善されず、原因不明のため、1ユニットをまるっと再印刷して組み直そうとしています。
音を立てて空回り・・・
多分ドライバからの電流が不足しているのでは?ドライバのvrefを回転するまで上げてみては?
ご回答ありがとうございます。
bluetoothだけが気になりvrefの調整ができておりませんでした。失礼いたしました。ドライバのvrefを変更して試してみます。
DECとRAとして2ユニットを作成し、片方は同じvrefでも静かに動作しています。同じモーターを使っているのですが個体差や相性などもあるのかもしれません。
ご助言いただいたようにvrefを調整したところスムーズに動作するようになりました。ありがとうございました。(1.0Vくらいでした)
vrefが低いとこのような症状が出るという勉強にもなりました。
晴れた日に撮影試してみます。
ハーモニックドライブ赤道儀を自作は出来るスキルが無いので、アリエクでJuwei-17を購入しました。
Onstepのアプリもasiairも天体を指定すると、
DECが全く別方向に動作します。
天頂付近の天体(NGC7000)だと、北の水平線に向きをかえます。
販売店からは音信不通な状態です。
お伺いしたいのは、原因はハード又はファームウェアのどちらの可能性が高いと思われますか?
治せるか分からないですが、原因を特定していきたいと思います。
ぶしつけなコメントで申し訳ありません。
宜しくお願い致します。
仕事が忙しくブログに目を通していませんでした。申し訳ない。
原因はファームウェアです。多分出荷時の書き込みで間違いが合ったのだと思います。
直し方は2つあります。
Arduino IDEなどでファームウェアの書き換えをする。ただし初期設定の内容が分からないので、減速比などの設定を正しく設定し直す必要があります。ファームウェアが公開されているなら、config.hの中の #define AXIS2_DRIVER_REVERSE OFF// のOFFまたはONを逆にすると直ります。
ファームウェアの書き換えが難しいのであれば、DEC側のモーターの配線を反転すると回転が逆になります。4線あるので、そのままひっくり返すイメージです。ただ端子が何を使われているかわかりませんが、ひっくり返すと刺さらないので工作が必要になります。
はじめまして
コンパイルは正常で書き込みエラーが出ました。
最大1310720バイトのフラッシュメモリのうち、スケッチが1318478バイト(100%)を使っています。
最大327680バイトのRAMのうち、グローバル変数が60040バイト(18%)を使っていて、ローカル変数で267640バイト使うことができます。
スケッチが大きすぎます。https://support.arduino.cc/hc/en-us/articles/360013825179 には、小さくするコツが書いてあります。
text section exceeds available space in board
Compilation error: text section exceeds available space in board
と怒られました。どこか削除できるのか、IDEをダウングレードすればいいのか、あるいは余計なものが入っているのでせうか?
以下私の環境
コンピュータ: 2022MacBookAir20(AppleSiM2),OS:15.4.1
ArduinoIDE: 2.3.6
board: Wemos D1Mini用Arduino用UNOR3 D1 R32 ESP32WIFIワイヤレスBluetooth開発ボードCH3404Mメモリ1(3.3Vは正常でした)
CNC: KKHMF 2個 V3 彫刻 シールド 3D プリンタ 拡張ボード(ボードとCNCはamazon2025年購入)
ドライバ: A4988 NEMA17 RepRap RAMPS 1.4(amazon2017年購入)
OnStepX:10.25.X6
経緯
以前からOnStepに興味あるも、できる気がせず悶々としていたら「輝星」の高槻さんが完成品を販売したのに飛びつき、ポルタでちゃんと動作しました。
https://tentai.asablo.jp/blog/2024/12/02/9736436
これならできる、2号機はパーツから作るぞと検索し『一番簡単なOnStepシステムの作り方』にたどり着きました。なんと「そのまんまじゃん」と。最初は高槻さん仕様のTMC2208を試すもコンパイルエラー。
2208はドライバのメニューにもなかったので手元にあった4988に入れ替えたら書き込みできました。(upload speedは460800に変更)(OnStepXの使い方(その3)通りに作業)
この時は
最大1310720バイトのフラッシュメモリのうち、スケッチが1119238バイト(85%)を使っています。
最大327680バイトのRAMのうち、グローバル変数が57992バイト(17%)を使っていて、ローカル変数で269688バイト使うことができます。
となっていました。
WiFiができないので『OnStepXの使い方(その1)』の後半『Website Plugin for OnStepXをインストールします。』の通りに作業したら、書き込み時に冒頭のメッセージでした。
よろしくお願いいたします。
田中さん、はじめまして。
すいません、コメントに気づくのが遅くなってしました。
対処方法ですが、Arduino IDEのツールメニューからPartition SchemeをDefaultからNo OTA (Large APP)に変更するとサイズの問題は解決すると思います。
TMC2208をCNC3で使う場合は、TMC2208Sと設定する必要があります。これは最近仕様が変わったようです。OnStepXの使い方(その1)を書き直さねば・・・
KENさん、適切なアドバイス、ありがとうございました。
4988についてはコンパイル、書き込み、動作(ハンドセットとアプリの東西南北マニュアル動作)が正常にできました。
2208の方はSをつけてコンパイル、書き込みはできました。が、まだ動かずです。明日、もう少しtypoがないか確認してみます。
コンパイルできて良かったですね!
2208が動かない理由は、CNC3で抵抗をカットしたと思いますが、そのカットした一方をGNDにつなげる必要があります。このページに書いてあります。あとはジャンパーが間違っている可能性があります。でも間違っていたとしても動くんですけどね。
KENさん、迅速な回答、ありがとうございます。
ENをGNDに落としましたがやはり動かずです。WiFiの時は不要と思ってショートはしてませんでしたし、高槻さんのボードもショートしていませんでした。
電源入れるとモータには電流が流れたみたいで十分な静止トルクがあります。ジャンパーはショート/ショート/オープンの16分割で正常。
Vrefは0.35くらいですが、高槻ボードの設定のまま(この2208は高槻ボードからの差替えで正常だった実績あり)。ちなみにALTだけ0.6Vにしてみましたが静止状態の振動が増えただけでハンドコントローラもアプリからも動作しない状態のままです。ベルトも外して無負荷状態です。実験用可変電源をモバイルバッテリ(12V/3A)に替えてみましたが状況は同じでした。また、プラネタリウムアプリ(SySafari7pro)を立ち上げると望遠鏡とのWiFI接続でできるも操作はできませんでした。
田中さん
A4988で動作しているとのことですが、A4988のファームウェアのままで、ジャンパーもそのままでTMC2208に置き換えてみたら、どのような動作しますでしょうか。ソフト的には問題なく動くはずなのですが・・・。
ここまで来ると問題の切り分けをしていかないと何が問題なのか何とも言えないです。ハードの問題なのか、ソフトの問題なのか?
KENさん、ありがとうございました。
アドバイスの通りやってみました。ジャンパーは全てTMC2208で1/16=6400の設定のまま。
どうもソフトのバグみたいな感じです。CNC3(EN-GNDショート)モバイルアプリはiPadでWiFi使用。OK/NGはアプリもハンドコントローラも同じでした。
ドライバ 設定 step/deg 結果
A4988 A4988 3200 OK
TMC2208 A4988 3200 OK
TMC2208 TMC2208S 6400 NG
TMC2208 TMC2208S 3200 NG
TMC2208 TMC2208 3200 コンパイルエラー
TMC2208 OFF 3200 NG
TMC2208 TMC2209 3200 コンパイルエラー
TMC2208 TMC2209S 3200 NG
TMC2208 DRV8825 3200 OK
TMC2208 LV8729 3200 OK
別TMC2208 LV8729 3200 OK
別のCNC3(EN-GNDショートなし)と別のWEMOS_LOLIN32を使って、
ドライバ 設定 step/deg 結果
A4988 A4988 3200 OK
TMC2208 A4988 3200 OK
別TMC2208 A4988 3200 OK
別TMC2208 A4988 6400 OK
上記の最後の基板と設定でSkySafari7ProでGOTO OK(室内で画面上ですが)
別の質問ありますが、日を改めて別のスレッドで書きます。
ありがとうございました。最悪の事態を想定してDRV8825とLV8729も発注しましたので届いたら試してご報告します。
多分そのうち修正されると思います。あとのために書いておきます。今回のOnStepXバージョンは
// Firmware version —————————————————————————————————————-
#define FirmwareName “On-Step”
#define FirmwareVersionMajor 10
#define FirmwareVersionMinor 25 // minor version 00 to 99
#define FirmwareVersionPatch “x” // for example major.minor patch: 10.03c
#define FirmwareVersionConfig 6 // internal, for tracking configuration file changes
田中さん、検証ご苦労さまです。
どうも一貫性が見つけられませんね。別のCNC3で動くということは基板個別の問題かもしれませんね。
KENさん、
色々ありがとうございました。
>別のCNC3で動くということは基板個別の問題
私の書き方が不適切だったやも(他の人が誤解するといけないので補足します)。
2枚のCNC3基板とも動作は同じでした。TMC2208を使うときはA4988やDRV8825、LV8729などの他の基板ですとConfig.h上「ウソ」を書いてあげないと動作しないということでした。これは別の2208をつけても、別のWEMOS基板でも同じ(全ての組み合わせはやってませんが)。(間違えてファーム書き換えてしまった)高槻さんから購入したWEMOS+TMC2208のオリジナルのファームはiPadのアプリ上ではOnStep10.23aと表示されており、書き換える前はTMC2208で動いてましたがコードになんと記述されていたかは不明です。(この時は正常だったのかあるいはすでにバグあって「うそ」を書いていたのか)
高槻さんにOnStepを提供しているmasaさんとも良く連絡を取り合っています。高槻さんから最近提供されているWebサーバの日本語化も手伝わせていただきました。
OnStepは、細かいバージョンアップ毎に試していますが、最近は目立つバグはないと思います。一度Config.hをここにコピペしていただけませんか。問題がわかるかもしれません。
https://www.dropbox.com/scl/fo/j2nhb7e91pf6fcm8ah5l2/AGROa7NQ2sxRg4uQthclHFU?rlkey=jznzm2ltt4u98e5szyo355xr0&st=huo1xafv&dl=0
KENさん、
ありがとうございます。DropBoxのリンク貼り付けましたが見えますでせうか?Condif.hはA4988と「うそ」を記入してTMC2208で動いた状態のものです。よろしくお願いいたします。
ダウンロード出来ました。Config.hの中身確認しましたが、A4988用としては全く問題ありませんでした。
masaさんに頼んで、もともとのconfig.hファイルをいただけるよう依頼していみます。
masaさんから、返答もらいました。やはり2208ではエラーが出るので、4988でコンパイルして書き込んでいたそうです。エラーの原因を知りたいので今夜CNC3と2208で試してみます。
解決しました!
今CNC3で、最新のOnStepX10.25.y6の環境でA4988とTMC2208のコンパイルをしてみました。A4988は問題なくコンパイル出来ました。TMC2208ではエラーがでました。SoftwareSerialエラーでした。
TMC2208だとシリアル通信でマイクロステップを設定するモードになります。最後にSをつけてTMC2208Sとすると従来通りのM1,M2でマイクロステップを設定するモードになります。CNC3は後者なので、TMC2208Sが正しい設定です。
この辺の変更は、最近だと思いますので僕のブログもちょっと古くなっていました。
KENさん、ありがとうございます。しつこくってごめんなさい。
私のは10.25.x6でした。TMC2208ではコンパイルエラー。TMC2208Sではコンパイル正常、動作せず、でした。
OnStepX10.25.y6で修正されたということですね?ダウンロードしてやってみます。
田中さん、すいません、問題がなんだったか忘れて、回答が繰り返しになっていましたね。
昨日は、移動中にコンパイルだけ出来たので、大丈夫と思ってしまいました。
今夜、CNC3とTMC2208で実際に組んでみます。
コードの中身を確認しましたが、問題確認出来ず。やはり実機での確認お待ち下さい。
KENさん、
OnStepX10.25.y6でやってみましたが症状は変わらずでTMC2208SでコンパイルOK、動作せず。
当面Config.hはA4988と書いておくこととします。
こんばんは、田中さん
先ほど、最新のOnStepXをCNC3に書き込んで動作確認しました。
ドライバはTMC2208Sで書き込みましたが、問題なく動作しました。OnStepXのバグではなさそうです。
改めて田中さんに送ってもらったConfig.hを見てみましたが、間違いを見つけました。
ジャンパーで設定したマイクロステップをここで設定する必要があります。田中さんのConfig.hではOFFになっていました。
#define AXIS1_DRIVER_MICROSTEPS 16
#define AXIS2_DRIVER_MICROSTEPS 16
OFFになっていても、モーターは回転するはずなので、直接の原因ではないかもしれません。
因みにTMC2208のバージョンは、v1.2でした。
因みにTMC2208のバージョンは、v1.2でした。
KENさん、
ありがとうございます。マイクロステップを設定したら動作しました。(TMC2208のバージョンは確認方法を知りません。捺印は1817 45530というロットナンバーでした)
これで解決です。それにしてもA4998と「ウソ」書いてあげるとマイクロステップOFFでも動作するって不思議ですが、デバイスごとの特性ですね。
タカチのSW-100に入れてコンパクトに仕上がりました。高槻さんのキットではハンドセットが別になっていたのを内蔵化できました。
きめ細かいサポートをありがとうございました。