[Armadillo:07389] lighttpdでCGIよりGPIOを制御するには

Ozawa/Sankyo email@hidden
2011年 7月 12日 (火) 11:24:01 JST


小澤と申します。
初めて参加させていただきますので不備がありましたら
ご指摘ください。

現在、A-420wlanを使用してwebサーバー上でCGIプログラムを
動作させ、CON9_28のpinをhigh/lowさせようとしています。

C言語でGPIOのvalueファイルの書き換えを行うプログラムを作り、
/www-data/内でも単独では動作出来ています。
しかし、CGIプログラムを作成しsystem()関数内で動作させると
動作しません。CGIプログラムは、その他表示内容を含め問題なく
ブラウザに表示してきますので動作しています。
system()関数の戻り値は、任意の整数値を返しエラー表示もありません。

CGIプログラム内のsystem()関数内でシェルコマンドpwd、ls-lを使うと
動作しますので関数は動いている感じがします。ただし、GPIOは動作
できていない状況です。

その他、echoコマンドでvalueファイルを書き変える方法も
/www-data内でも動作しますが、system()関数内ではGPIOを変更
できません。
また、LEDドライバでechoコマンドを使用して/brightnessファイルを
書き換える場合も同様の現象です。単純にファイルの書き換えが
lighttpd上の環境で許されていないのかもしれませんが。

まずどこをチェックしたらよいかご教授ください。
よろしくお願いいたします。




armadillo メーリングリストの案内