hardware access to 4G helmet camera DVR BW620E

Publish Time: 2025-07-28 10:10:27

系统接口使用说明

1. 串口扩展节点:

/dev/ttyS2

2. GPIO控制节点:

/sys/custom_gpio/gpiox

对应gpio序号16进制+状态控制高地电平

gpio65:指示灯,拉高点亮发送echo 4101 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 4100 > /sys/custom_gpio/gpiox

Gpio06:指示灯,拉高点亮发送echo 0601 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 0600 > /sys/custom_gpio/gpiox

gpio66:录像灯,拉高点亮发送echo 4201 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 4200 > /sys/custom_gpio/gpiox

gpio67:爆闪灯,拉高点亮发送echo 4301 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 4300 > /sys/custom_gpio/gpiox

gpio68:镭射灯,拉高点亮发送echo 4401 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 4400 > /sys/custom_gpio/gpiox

gpio73:照明灯,拉高点亮发送echo 4901 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 4900 > /sys/custom_gpio/gpiox

 

 

gpio31gpio32gpio33::近电感应预留

1F012001 2101

拉高点亮发送echo 1F01 > /sys/custom_gpio/gpiox

拉低关闭则发送echo 1F00 > /sys/custom_gpio/gpiox

gpio31            gpio32         gpio33

0                 0              0          220V

0                 0              1          10KV

0                 1              0          35KV

0                 1              1           110KV

近电检测口:

com.creator.android.KEYCODE_F9_DOWN          键值139 靠近感应com.creator.android.KEYCODE_F9_UP

com.creator.android.KEYCODE_F8_DOWN      键值138  无感应

com.creator.android.KEYCODE_F8_UP   

3. 按键广播说明:

com.creator.android.KEYCODE_POWER_DOWN        开关机键短按

com.creator.android.KEYCODE_POWER_UP               开关机键短按抬起

com.creator.android.KEYCODE_F1_DOWN                 PTT键短按

com.creator.android.KEYCODE_F1_UP                         PTT键短按抬起

com.creator.android.KEYCODE_F1_DOWNLONG       PTT键长按

com.creator.android.KEYCODE_F1_UPLONG              PTT键长按抬起

com.creator.android.KEYCODE_F2_DOWN                 LED键短按

com.creator.android.KEYCODE_F2_UP                         LED键短抬起

com.creator.android.KEYCODE_F2_DOWNLONG       LED键长按

com.creator.android.KEYCODE_F2_UPLONG              LED键长按抬起

com.creator.android.KEYCODE_F3_DOWN                 SOS键短按

com.creator.android.KEYCODE_F3_UP                         SOS键短按抬起

com.creator.android.KEYCODE_F3_DOWNLONG       SOS键长按

com.creator.android.KEYCODE_F3_UPLONG              SOS键长按抬起

4. 功能接口

充电状态灯:GPIO38

双距感STK3311:接近上报F11,远离上报F12

进入休眠模式,发送按键KEYCODE_SLEEP消息

任意键唤醒,同时会上报唤醒键值up事件

静默安装广播:com.android.silent.install.action

       附加属性 install_path 文件路径

静默卸载广播:com.android.silent.uninstall.action

       附加属性 uninstall_package_name 应用包名

5. 传感器接口:

气压:

package com.asr.asrsports;

 

import android.app.Activity;

import android.content.Context;

import android.view.View;

import android.hardware.Sensor;

import android.hardware.SensorEvent;

import android.hardware.SensorEventListener;

import android.hardware.SensorManager;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.TextView;

import android.util.Log;

 

public class TemperatureActivity extends Activity implements SensorEventListener{

    private SensorManager mSensorManager;

    private Sensor tempratureSensor;

    private TextView temperatureTextView;

    private TextView atmosphericPressureTextView;

    short temperatureShort;

    short atmosphericPressureShort;

 

    @Override

    protected void onResume() {

        super.onResume();

        mSensorManager.registerListener((SensorEventListener) this, tempratureSensor, SensorManager.SENSOR_DELAY_NORMAL);

    }

 

    @Override

    protected void onPause() {

        super.onPause();

        mSensorManager.unregisterListener(this);

    }

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_temperature);

        mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);

        tempratureSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE);

        temperatureTextView = (TextView)findViewById(R.id.temperature);

        atmosphericPressureTextView = (TextView)findViewById(R.id.atmospheric_pressure);

    }

 

    @Override

    public void onSensorChanged(SensorEvent event) {

        if(event.sensor.getType() == Sensor.TYPE_PRESSURE) {

            float combineFloat = event.values[0];

            int combineInt = Float.floatToIntBits(combineFloat);

            Log.v("TemperatureActivity", "Sensor Value is : " + Float.floatToIntBits(combineFloat));

            atmosphericPressureShort = (short)(combineInt & 0xFFFF);

            temperatureShort = (short)((combineInt >> 16) & 0xFFFF);

 

            float atmosphericPressureValue = atmosphericPressureShort;

            atmosphericPressureValue = atmosphericPressureValue/100;

 

            float temperatureValue = temperatureShort;

            temperatureValue = temperatureValue/100;

 

            temperatureTextView.setText("temperature: " + temperatureValue + " ");

            atmosphericPressureTextView.setText("atmospheric pressure: " + atmosphericPressureValue + " kPa");

        }

    }

 

    @Override

    public void onAccuracyChanged(Sensor sensor, int accuracy) {

    }

 

    @Override

    protected void onStop() {

        super.onStop();

    }

}

 

 

 

关机:

        Intent testIntent = new Intent("com.android.silent.shutdown.action");

           testIntent.addFlags(0x01000000);

           mContext.sendBroadcast(testIntent);