地デジのアンプ実験に必要なトランジスタ2SC3355の互換品が秋月さんから発売されました

下記の書籍に付属するプリント基板を使った地上デジタルテレビの受信用プリアンプの実験に必要なトランジスタが入手困難になっていましたが、秋月電子通商より互換品が発売されました。
この機会に書籍とともに購入していただければ幸いです。

発行者:CQ出版社
書 名:地デジTV用プリアンプの実験

関連ページ
/bokunimowakaru/design-cq.html

秋月のサイト
http://akizukidenshi.com/catalog/g/gI-09742/

Amazon
http://www.amazon.co.jp/gp/aw/d/4789812545/

by ボクにもわかるホームページ
https://bokunimo.net/

IchigoJam 内蔵 Raspberry Pi で Petit Ichigo Term を動かす。

IchigoJam 内蔵 Raspberry Pi を作成してみました。

まえがき:

ネットに繋げたIchigoJamを外出先からアクセスしたいと思っていたのですが、IchigoJamをサーバとして動かすのは危険です。IchigoJamサーバはESCコード一つでプログラムを停止させることが出来、さらに停止後はBASICのダイレクトモード(コマンド入力モード)に入ってしまいます。このため、IchigoJamを踏み台にした他のネットワーク機器への攻撃を受ける懸念が高いのです。そこで、ネットに接続したRaspberry Piを経由してIchigoJamにアクセスする方法が無難だと思うようになりました。

今日の実験:

今日のところは、IchigoJamとRaspberry Piがうまく会話できるかどうかを試してみました。ネットで拾ってきたTinyTermを「Petit Ichigo Term」という名前に変更し、実行してみました。

接続図:

[PC] —SSH—> [Raspberry Pi] —UART—> [IchigoJam]

実験の様子:

配線図:

設定

Configurationの「Serial」をDisableにする。
  または、下記のコマンドを実行し、
sudo raspi-config
  サブメニューA8:Serialの「NO」を選択する。

ソフトウェア(Petit Ichigo Term):

  最新版は、こちらから:
元となるソフトのUARTパラメータ(ボーレート、ローカルエコー、改行コード)をIchigoJam用に変更し、また簡単なタイムスタンプと「—」による終了、終了時にカノニカルモードに戻す機能などを追加しました。元のソフトでカノニカルとローカルエコーを否にしているのですが、そこは保留したまま(つまりは余計なものの追加)で対応しました。

今後の目標:

ハードウェア面では SSOPのマイコンを使ってIchigoJam内蔵が分からないくらいにしたいです。またIchigoJam BASICのファームのアップデートにも対応したいと思います。しかし、以下の課題で悩んでおり、しばらくはこのままかもしれません。

課題:

悩ましいのはIchigoJamをどう活かすかです。小型のPetit Ichigoマイコンを Raspberry Piに内蔵することで、 Raspberry Piに出来ない何かが出来れば良いのですが、今のところ「IchigoJam BASICを外出先から動かす」「しかもパソコン経由に比べて低消費電力!」くらいの用途しか見当たらないのが残念なところです。

参考資料:

ボクにもわかるIchigoJam:

その後の記事

接続方法の違いで以下の3つの記事を公開しています。
①ジャンパー線で接続する(このページ)
https://bokunimo.net/blog/raspberry-pi/174/
③Bluetoothで接続する
https://bokunimo.net/blog/ichigojam/164/

IchigoJam+ESP-WROOM-02 無線LANモジュール・サンプルプログラム

IchigoJam+ESP-WROOM-02 無線LANモジュールを使ったサンプルプログラム
秋月電子通商から発売されたばかりのESP-WROOM-02のDIP化キット(税込650円)をIchigoJamに接続し、「BASICからのATコマンド」で本モジュールを動かしてみました。
フロー制御の設定を使うことでIchigoJamとの通信が出来ることが分かったので、ハードウェアの製作方法のほか、サンプルプログラムとして①AP設定用のサンプル、②TELNETサーバ、③ワイヤレスでLチカを公開しています。
詳細ページはこちら:
by ボクにもわかる電子工作
https://bokunimo.net/

IchigoJam でLEDをPWM点滅(Lチカ)

IchigoJam互換機の拡張端子ににブザーPB04-SE12SHPRとLEDを取り付けて、電球をリレーでON/OFFするようなイメージを再現してみました。LEDを秋月で販売されているGPL/W/A00002/FA/STに置き換えると、より電球っぽくなると思います。
今回、少し、こだわったのはリレーを駆動するような音です。使用したブザーは電圧をかけるだけで4kHzの音が鳴ります。このブザーを瞬間的にON/OFFすることで、ちょうどリレー駆動のような音を再現することが出来ました。ブザーを取り付けなくても動作します。
ブザーの接続=GND / OUT3 (極性に注意。OUT3が+側)
LEDの接続=GND / OUT5またはOUT2 (OUT5または2がアノード・LEDのリード線の長い方)
rem CC BY (C) Wataru KUNINO
1 LIST:'PWM LED
2 I=1:A=-1
100 'LOOP
110 I=I+A
120 PWM 2,1,1<<(I+2)
130 PWM 5,1,1<<(12-I)
140 WAIT 2
150 IF I=0 GOSUB 300
160 IF I=10 GOSUB 300
170 IF INKEY()=0 GOTO 100
180 OUT 2,0:OUT 5,0
190 END
300 'RELAY
310 IF A=1 OUT 2,0 ELSE OUT 5,0
320 A=-A
330 WAIT 30
340 OUT 3,1
350 REM NOP
360 REM NOP
370 REM NOP
380 OUT 3,0
390 RETURN
対応IchigoJam BASIC Version 1.1.0以降(β版含む)
IchigoJam互換機は、以前に投稿したものを使用しました。もちろん、純正のIchigoJamでも動作します。
また、プログラムには行番号300以降のリレー音をブザーで鳴らす部分を追加しました。
https://bokunimo.net/blog/ichigojam/182/
(追記)
Facebook IchigoJam-FAN グループの澤口勇治さんからのご意見「ついでに、フィラメントが切れる直前の一瞬明るくなるところを再現して」を追加しました。
rem CC BY (C) Wataru KUNINO
1 'PWM LED
2 I=9:A=1
100 'LOOP
110 I=I+A
130 PWM 5,1,1<<(I+2)
140 WAIT 2
150 IF I=0 GOSUB 300
160 IF I=10 GOSUB 300
170 IF INKEY()=0 GOTO 100
180 IF I<6 WAIT 20
200 'END
210 PWM 5,1,1<<I
220 I=I-1:WAIT 1:IF I>5 WAIT 1
230 IF I>=0 GOTO 210
240 OUT 5,1
250 WAIT 10:OUT 3,1:OUT 3,0
260 FOR I=0 TO 12:WAIT 1
270 PWM 5,1,1<<I
280 NEXT:OUT 5,0
290 END
300 'RELAY
310 IF A=1 OUT 5,0
320 A=-A
330 WAIT 60
340 OUT 3,1
350 REM NOP
360 REM NOP
370 REM NOP
380 OUT 3,0
390 RETURN
プログラムを停止するときは、キーボードのスペースキーやリターンキーを押してください。※[ESC]は押さないでください。
また、LEDをGPIOに、直接、接続しているので、一時的に大きな電流がLEDへ流れます。一般的な複数種類のLEDを使って、マイコンやLEDが壊れないことを十分に確認していますが、設計上、好ましくない回路となっています(本来、電流制限抵抗などでLEDへ大きな電流が流れないような回路にする必要があります。)。
by ボクにもわかるIchigoJam用マイコンボード

Petit Ichigo ∞ BASIC for Embedded

BASICパソコン IchigoJamの活用方法として、組み込み用途が考えられます。そこで、今日はIchigoJam BASICファームウェアを書き込んだマイコンLPC1114FDH28(TSSOPパッケージ)を実装可能なプリント基板「Petit Ichigo ∞ BASIC for Embedded 」を考えてみました。
背景

今後、ますますマイコン内蔵機器が増えると思います。例えば、これまでパソコンすら使ったことの無かった小さな町工場でマイコン内蔵機器を開発する様なことも考えられます。また、現在、50代~60代の年齢の方々の中には過去にBASICでプログラミングを学んだことのある人も多いはずです。その方々が定年退職を迎え、新たな趣味や仕事としてBASICを使った機器を開発するようなことも考えられるでしょう。
概要
下図に組み込み向けを想定したIchigoJam用プリント基板の構想図を示します。BASICが無限に続く言語となることを意図して「∞」と「8ピン」にこだわっています。もちろん、組み込み用として広がった8ピンPICも意識しました。

課題と対応方法

8ピンソケットに入れようと思うと5mmほどの幅に部品を実装しなければなりませんが、このICだけで6mmほどあります。そこで、基板用リードフレームを7.6mmほどの間隔で使うことを考えました。実際にCAD設計してみると、若干、7.6mmを超えるかもしれませんが、フレームの付け根部分で吸収できると思います。

また、BASICを使うメリットのひとつは開発環境がそれ自身に含まれることです。そこで、本基板をモジュールとして取り外し、ベースステーションからビデオやキーボードに接続できる形態も考慮する必要があると考えました。赤文字で書かれたピン名の開発用端子は、そのための考慮です。8ピンソケットの外側に位置するように配置したので、試作時は細ピンヘッダを取り付け、量産時はピンヘッダを外せばよいのです。
さらに、余った4隅にはIOとGNDを追加しました。入出力が足りない場合やデバッグ用に使うことが可能です。
BTN信号は1005サイズの0Ω抵抗でGNDに落としてほしいと思います。IchigoJamに保存したプログラムを自動実行させるためです。また、このチップ抵抗を外し、1MΩのプルアップと1uFのコンデンサをGNDに対して追加することで、BTN端子をアナログ入力端子として使うことも可能になります。ただし、使用方法に制限があり、また状態によっては自動実行機能が安定しないことがあります。

なお、IchigoJamの最大の利点はビデオ出力とキーボードです。これらを使わない用途というのは始めから「無駄」を前提にしています。また、BASICの組み込み用途は(市場性などにおいて)とてもリスクの高い領域にあります。これらのリスクも考慮したうえで基板製作に挑戦してみようという方が居ましたら、参考にしていただければと思います。

ボクにもわかるIchigoJam用マイコンボード

参考資料
 Facebook IchigoJam FANグループへの投稿資料

 IchigoJam 関連資料 (jig.jp社)

モバイルでIchigoJam用キーホルダーを使う

先日、製作した「キーホルダー型IchigoJam用パソコン」(https://bokunimo.net/blog/ichigojam/180/)をモバイル用ノートパソコンに接続した様子です。
L字型のUSBコネクタ(ミニ→標準)を使って、IchigoJamユーザであることをアピールしてみました。
もちろん、お飾りではありません。
ちゃんと、BASICが動作するパソコンです。
IchigoJamとの通信にはtarosayさんが作成した「IJKB(https://github.com/tarosay/IJKB)」というソフトを使用します。
このソフトを使えば、WindowsパソコンのキーボードをIchigoJamのキーボードの代わりにすることができます。さらに、Windowsパソコン上にモニター画面も表示することが出来ます。
モバイルIchigoJamには欠かせないソフトウェアですね。
今日の記事は、今日から始めたツイッターにも投稿してみようと思います。
ボクは、ブログ、ツイッター、Facebook、どれもうまく使いこなせておらず、いまだに手書きのHTMLが中心です。しかし、インターネットのユーザは既にPCではなくスマホが中心。こういったツールが必須になりつつあり、すでに乗り遅れている世界に追い付こうと頑張っております。
by ボクにもわかるIchigoJam用マイコンボード

IchigoJam用 レベルメーター

半導体部品の追加なしにLEDレベルメータを試作してみました。
IchigoJamには出力端子(OUTピン)が6本しかありません(LEDは10個)。このような場合、通常、レベルメータ専用ICなどを使いますが、ここでは専用ICを使わずに、ダイナミック点灯という方法を用いました。
ダイナミック点灯とは、LEDを高速に点滅させ、あるLEDが消灯している間に、他のLEDを点灯させることで、少ないピン数で多くのLEDを制御する方法です。またLEDの極性を利用して切り替えスイッチを不要にしています。

これにより個々のLEDの自由な点灯(1024通りの表示パターン)を行うことが出来ますので、単にレベルを表示するだけでなく、LEDだけを使った簡単なゲームへの応用も可能です。
ただし、IchigoJamの場合はBASICの速度が遅いのでLED点滅による「ちらつき」が生じる欠点もあります。キーボードの「V」キーを押すとビデオ表示が止まり、ちらつきを改善することができます(9/13 追記)。また、なるべく明るいLEDを使用したほうが、点滅が目立ちにくくなるようです。
写真の上部のジャンパーワイヤーのIchigoJamとの配線は、一番左から順に、OUT6、OUT1、OUT2、OUT3、OUT4、OUT5です。VCCやGNDには接続しません。
IchigoJamのOUT1~5を抵抗経由して5個のLEDに接続します。これら5個のLEDの反対側の端子5つを束ねてOUT6に接続します。写真では束ねるためのジャンパー線が抵抗の下にあって分かりにくいですが、ブレッドボード位置a~eの16~20番の5端子をショートし、OUT6に接続します。
残りの5個のLEDについてはLEDの極性が反対になるように接続します。こちらはブレッドボード位置f~jの11~15番をOUT6に接続します。
以下はサンプルプログラムです。行番号110の部分でダイナミック点灯の制御を実行しています。
サンプルプログラム:
1 'LED10
2 'L=LED M=MX N=Number
10 L=#3FF :M=0: N=10
20 V=1:'VIDEO
30 ?"Usage:";
40 ?"Press Num/Arrow/V/Q key"
100 'LOOP
110 ifmoutl&31elseoutl>>5&31^31+32
120 m=!m:i=inkey():ifi=0goto110
200 'KEY
210 IF I>47 AND I<58 LET N,I-48
220 IF I=30 AND N<10 LET N,N+1
230 IF I=31 AND N>0 LET N,N-1
240 IF I=86 LET V,!V:VIDEO V
250 IF I=81 VIDEO 1:END
260 L=1<<N-1
270 ? HEX$(N,1),BIN$(L,10),I
280 GOTO 100
                                                       '(2015/9/13 修正)
このハードウェアをIchigoJam用の拡張基板で作成すれば、例えば、aitendoのai.shuttle.Jam(参考:https://bokunimo.net/ichigojam/solderingAi.html )での、打ち上げ遊び(参考:http://d.hatena.ne.jp/shiro0922/20150904/1441365326)も出来るかもしれません。
by ボクにもわかるIchigoJam

キーホルダー型IchigoJam用パソコン

小型IchigoJam用マイコンボードをキーホルダーに入れてみました。
USBシリアルICを内蔵しているので、USBケーブルを差せば、IchigoJam BASICが起動し、超小型パソコンとして使用することが出来ます(ただし、母艦となるパソコンが必要です。)。
キーホルダーの筐体にはソーラーLEDライトの筐体を(中身を取り出して)使用しました。
部品が干渉する部分は少し筐体を掘ったり削ったりしました(下の写真の右の筐体を参照してください。)。
サイドスイッチはもともとのLEDライトに付属していたものです。このスイッチをISPピンへ、タクトスイッチをBTNピンへ、LEDをLEDピンへそれぞれ接続しました。
タクトスイッチ(ボタン)はプラスチック部を削って、筐体との高さをギリギリにしてあります。まずはニッパで少し高めの位置で切断し、その後、外部から窓の部分を抑えると、ちょうどクリックできる程度に少しずつヤスリで削って調整しました。
窓の部分にはスモークの入ったプラスチック版で蓋をしました。厚みは0.8mm程度のものです。似たようなグリーン色のプラ版も試したのですが、透け具合が良くなかったので写真のような白色のものに変更しました。
小型IchigoJam用マイコンボードの製作
by ボクにもわかるIchigoJam

小型 IchigoJam 用マイコンボード

こどもパソコンIchigoJamのBASICファームウェアを書き込んだ 小型のIchigoJam用マイコンボードです。
ICの裏側に小さな基板を実装しました。
赤い部分にはGPIO制御可能なLEDが実装されています。(BASICで制御可能)

基板は自分でCAD設計したものです。しかし、この目的専用に作ったものでは無いので、余分なパターンや不足があります。
基板にある小さなICはUSB・シリアル変換IC FT231XS です。
単価210円と、他のシリアル変換ICに比べて安価です。しかも信頼のFTDI製。
レギュレータも本IC内蔵のものを使用しているので外付け回路が少なくて済みます。
オレンジのシートはポリイミドテープです。絶縁性だけでなく耐熱性もあるので、半田付け時に溶けないのが良いです。
ICのピンは、とがった先端だけを残して切断しました。軽くヤスリをかけています。一見してマイコンICだとわかる形状にこだわりました。
by ボクにもわかるIchigoJam用マイコンボード

aitendo製のai.Jamの基板の裏面に部品を実装しました。

aitendo製のai.Jamの基板の裏面に部品を実装しました。
ただし、普通に実装すると部品の極性が反転し、動作しません。
そこで、ここでは以下のように製作しました。

 ・マイコンの足を180°折り曲げて反転させます。
 ・キーボードの配線も入れ替えます。表面のパターンを一部、
  切断し、目立たないように赤色のビニール線を使って配線します。
 ・レギュレータの型番表示面を表面の図の切欠きとは反対に向けます。
 ・その他、極性のある部品には十分に注意しましょう。

裏面はこんな感じです。

もちろん、ちゃんと動きます。

スイッチやLEDが裏面にあるので、このままでは利用しにくいです。
そこで、立ててみることにしました。
インテリアとしても使えそうです。


縦置きIchigoJamで棚からボタ餅
ふざけて作ったai.Jam(部品は裏面実装)ですが、その後、飾り棚に置いておきたいほど気に入ってしまいました。また、メリットも分かってきましたので、(真面目に)まとめておこうと思います。
(1) 表面に他の部品が無いので追加した部品が一目瞭然です。
(2) 部品でパターンが邪魔されないので、基板だけで回路図が分かります。
(3) テレビを横に並べることも出来るのでデモにも良い。
(4) 写真を撮るときにマイコンボードとテレビの両方にピントが合う。
(5) 見せたい部品だけを表に実装するなど、色んな応用が出来そう。
今日は飾り棚に入れるのに相応しいLチカ(LEDの点滅)をやってみました。2系統のPWM出力でLEDを点滅させるだけですが、例えば明るさや温度に応じて点滅周期を変えるといった応用が出来そうです。
なお、ずっと動かしっぱなしにする場合は、LEDに抵抗を入れたほうが良いでしょう。(PWMが止まるとLEDの定格を超える電流が流れてしまう恐れがあります。)
既に何台も製作し、そろそろ普通のIchigoJamの半田付けに飽きてきた方は挑戦してみてはいかがでしょう?

1 ?"PWM"
10 I=10
20 A=0
100 'LOOP
110 PWM 2,1,1<<I
120 PWM 5,1,1<<(12-I)
130 IF A THEN I=I+1 ELSE I=I-1
140 IF I<=2 THEN A=1
150 IF I>=10 THEN A=0
200 'WAIT
210 WAIT 2
220 IF INKEY()=0 GOTO 100
230 OUT 2,0:OUT 5,0
240 END

ボクにもわかるIchigoJamのホームページは、こちらです。