2020年5月18日月曜日

Alpine Linux:Package Manager の情報のありか

起動パーティションの cache/APKINDEX.adfa7ceb.tar.gz にあるっぽい。

gcc コンパイル環境を作るために apk del でパッケージをアンインストールした後、このファイルを復元しただけで、元の状態に戻った。

Raspberry Pi ZERO 上の Alipine Linux で RTKLIB をコンパイルする方法

 一年ぶりぐらい Raspberry Pi ZERO 上の Alipine Linux で RTKLIB をコンパイルしようとしたら、ちょっと手間取ったのでメモ。

  • 'rc-service <util> stop' で使っていないサービスを止める
  • 'df'で '/' の使用量を確認。Use% が 50 以上なら、以下の方法で 50 を切るまで減らす
    • 最初に SD カードのバックアップを取る
    • 'apk info' で、インストールされているパッケージのリストを表示し、コンパイルに必要なさそうなパッケージをアンインストールする
  • 'apk add gcc'、'apk add strlib', 'apk add libc-dev' でコンパイルするのに必要なパッケージをインストール
  • ftp で開けるディレクトリに sd card 上の drive を mount
  • mount したドライブ上に rtklib のソースを展開
  • カレントディレクトリを 'app/<program>/gcc' に移動して 'make'
  • エラーが出たら、'apk add xxxx' で必要そうなパッケージを追加'

2020年5月16日土曜日

LPC810 ディスコンか...

苦労して LPC812 が使えるようになった。そういえば、LPC 81x には dip 8pin があったなぁ、あれ、自由に使えると便利なんだよなぁ... と思っていたら 8Pin バージョンの LPC810 は ディスコンだって... orz

LPC812:固定機能 PIN に別な機能を割り当てる方法

 タイトルの日本語が少しおかしいが、半日ほど試行錯誤してやっとやり方を見つけたので。

 SWM_SetFixedPinSelect() を使えば OK

2020年5月14日木曜日

3Dプリンター:Me Creator 2 メモ

エクストルーダーのステッピングモーターの軸についているギアを固定するビスを回す六角レンチのサイズ 1.5mm ※穴が小さめで入りにくいことがあり、この場合は強めに押し込まないと入らない。

2020年5月13日水曜日

LPC812:LPC-Link と SWD で接続

今動いている状況は、

Pin15 VDD 3.3V
Pin16 VSS  GND
Pin3   PIO0_12 - 3.3V
Pin4   nRESET - 10KΩでプルアップ
Pin6   SWCLK - JTAG_TCLK_SWCLKX
Pin7   SWDIO - JTAG_TMS_SWDIOX

VDD と VSS の間は、0.1μF x 2

2020年5月10日日曜日

LPC812:シリアル通信を115200bps でする方法

 結論から書くとメインクロックが 12MHz ではダメ。24MHz にすれば OK。

 LPCXpressoBoard OM13053 + MCUXpresso IDE の組み合わせで、MCUXpresso
SDK のサンプルプログラム lpcxpresso812max_usart_transfer_ring_buffer をベースに開発を行っているのだが、オリジナルのボーレート 9600bps を 115200bps に変更すると動かない。具体的には fsl_usart.c の USART_SetBaudRate() 内の

assert((((srcClock_Hz >> 4U) / brgval) - baudrate_Bps) < ((baudrate_Bps / 100) * 3));
 が例外を吐いてプログラムを止める(JTAG デバッガ万歳!!)

2020年5月3日日曜日

LPC812:秋月の LPCXpressoBoard OM13053 は MCUXpresso IDE で使えそう

 結論から書くと、MCUXpresso IDE を普通にインストールして、Instaled SDKs で LPCXpresso812MAX を指定して、Quickstart Panel -> Create or Import a project -> Import SDK examples(s)... でも LPCXpresso812MAX を指定。Project Explorer でサンプルプログラムの lpcxpresso812max_led_blinky を選択して Quickstart Panel の Debug Your project -> Debug をクリックすると、普通にビルドできて LPCXpressoBoard OM13053 にインストールされ LED が赤で点滅した。
 
 ただし、Eclipse の経験がそれなりにないと相当苦労するかも。

3Dプリント:縦に長いモノの出力

 画像のような、底面が対角距離13mm の六角形、高さ 130mm のナットを出力した。

プリンタ FLSUN QQ-S
フィラメント  SUNLU PAL+ 茶箱
データ   https://www.thingiverse.com/thing:4181423
スライサー Slic3r
フィラメント温度   210
ベッド温度   75(first) -> 70
Layer Height 0.4mm(first) -> 0.2mm
brim  15mm
speed
 Perimeters  30mm/s
 Infill 80mm/s
 Travel 60mm/s
 First 15mm/s
----
 最初ベッドを 65->50 、brim を 5mm で出力したら、途中でベッドから外れてしまって失敗。4回目でようやく成功。ベッド温度 70 は、プリンタ付属のテストデータの値。

 ちなみにベッドの温度を 65->50 としたのは、ベッドとの接地面積が多い造形物の場合、70℃だと反りがきつくなるため温度を下げていた。