SSHで接続できない

イメージ
 Ubuntuを24.04→26.04 時間があったので、メインマシンのUpgradeを実施。 とはいえ、とはいえ、システムディスク(/)とデータディスク(/home)を分けているのでクリーンなインストールを実施。 (1) USBでUbuntu26.04を起動 (2) /home/user → /home/user_old にリネーム (3) 26.04をインストール これで、/home/user_oldにこれまでの環境が残ったまま、新規userでインストールすれば完了。もともとのuserが使用していたuser_id:1000のままなので、どちらのフォルダも見ることができる。 あとは、使用するソフトをインストールし  /home/user_old 以下から、利用する設定ファイル等をコピーして動作確認するだけ。 Dropbox MEGA などは、先にコピーしてから、フォルダ同期設定をすることで、ダウンロードなどはチェックのみで完了する。 thunderbird brave browser vscode dbeaver-ce typora obsidian LMStudio ollama あたりを移行してほぼ終了 .sshはそのままコピーして完了。 と思っていたら、何故かサーバによっては接続できない場合があることに気づいた。 $ ssh vps 何も返ってこず、接続できない。 でこれまで接続できていたのに、うまく行かない?? 詳細を確認しながら、チェックすることに。 $ ssh -vv vps debug1: OpenSSH_10.2p1 Ubuntu-2ubuntu3.5, OpenSSL 3.5.5 27 Jan 2026 debug1: Reading configuration data /home/user/.ssh/config ︙ debug2: we sent a publickey packet, wait for reply debug1: Server accepts key: /home/user/.ssh/id_rsa RSA SHA256:n5ocPbCvMV4FGFof … … … … … pBuJ/8r/kHGANY explicit agent のように、 認証完了後にシェルが起動せず、応答がない状態になっている。 具体的には ...

Sketch の書き込みができた on Ubuntu

Arduinoでトラブルが続いていた

現在、Ubuntu(12.04-32bit)+ruby 1.8.7 + Arduino Mega2560という組み合わせで、開発を進めているのだけれども、先の記録にもあるように、予想以上に苦労している。

今回、Arduino IDEからMEGA2560へのsketchの書き込みが、エラーで出来なかったものを、工夫することで書き込みができることが分かったので、まとめておこうと思う。

まずは設定

普通にArduino IDEを起動して、書き込みを行うと図のようにエラーが発生する。
例では、スケッチの例にあるStandardFirmataを読み込んで、Arduino Megaに書き込もうとしている所。

すると、
avrdude: stk500v2_RecieveMessage(): timeout
なんてエラーが延々と出て書き込みが終了しない。

こんなエラー情報では、何もわからないので、詳細な情報を得られるようにしておく。

「ファイル」->「環境設定」->「より詳細な情報を表示する」の「書き込み」にチェックを入れておく。
コンパイルの情報を見たければ、チェックを入れればいいのだけれど、今回はコンパイルまで終了し、書き込みに失敗しているので、書き込みだけでOK。

具体的な手順

この状態で、コンパイル&書き込みを行うと、さっきより格段に細かい情報が得られるのが分かるはず。

これが右の図。
すると、どんなデータを書き込もうとした。上手くいったとか失敗したとか…。

この状態が最低限必須。

この状態で先に進んでも良いのだけれど、詳細なLOGを見ているうちに、どんどんエラーが増えていくし、エラーをたくさん見ても意味が無いので、起動方法を変更する。

コンソール(Terminal)から、手動で起動してやると、あとの処理が楽になる。
$ arduino もしくは $ /usr/bin/arduino
か、異なるバージョンを入れてたりするなら、そのディレクトリで
$ ./arduino
で起動するはず。

ここまで来たら、書き込みたいsketchを開いて、書き込みを実行する。
すると当然のことながら、先と同じエラーが発生する。

ここで慌てずに、コンソール(端末)で中断(control+C)を実行する。

$ arduino
コンパイル後のスケッチのサイズ:15,196バイト(最大容量258,048バイト)
/usr/share/arduino/hardware/tools/avrdude -C/usr/share/arduino/hardware/tools/avrdude.conf -v -v -v -v -patmega2560 -cwiring -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/build4946465769096413677.tmp/StandardFirmata.cpp.hex:i 
avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:41:10
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch
         System wide configuration file is "/usr/share/arduino/hardware/tools/avrdude.conf"
         User configuration file is "/home/satoshi/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping
         Using Port                    : /dev/ttyACM0
         Using Programmer              : wiring
         Overriding Baud Rate          : 115200
avrdude: wiring_open(): releasing DTR/RTS
avrdude: wiring_open(): asserting DTR/RTS
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14]
^C

この時点で、コンパイルは終了しているので、書き込みだけ上手く出来れば良いわけで、この画面に表示されているコマンドをそのまま実行してやる。(上の赤い部分)
$ /usr/share/arduino/hardware/tools/avrdude -C/usr/share/arduino/hardware/tools/avrdude.conf -v -v -v -v -patmega2560 -cwiring -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/build4946465769096413677.tmp/StandardFirmata.cpp.hex:i 
勝手に改行とかせずに、表示されている行をそのままコピーして貼り付け実行してやればOK。
すると、細かい表示をしながらも、プログレスバーが表示されて、無事書き込みが終了する。

これでエラーが起きること無く、書き込みが完了し、動作させることができる。

結局IDE側(java)の処理の問題のようだ。
単純にforkしてやれば良いような気がするのだけれど…。何か変な処理をしているんだろうな〜と勝手に推測しているんだけれど…。

これで、母艦のMacで書き込んだり、Windowsで書き込んだりせず、Ubuntu上から気持よくは無いけど、とりあえず書き込みができます。

追記


  • 「ARDUINO 1.0.4」 が 2013.03.11
  • 「ARDUINO 1.5.2 BETA」 が 2013.02.06

にリリースされていましたので、パッケージ管理でなくてもいいやって人は、使えます。

コメント

このブログの人気の投稿

MEGAにも弱点があった?

Ubuntu24.04 でGUIが死んだ

VirtualBoxでUSBを使う方法が分かった!