Raspberry 3 B+, A+ detection added

This commit is contained in:
Sebastian Hildebrandt 2019-01-31 18:48:10 +01:00
parent bfdb46e803
commit e0cf84836a
2 changed files with 46 additions and 42 deletions

View File

@ -312,29 +312,29 @@ function networkInterfaces(callback) {
}); });
if (_linux) { if (_linux) {
let iface = dev.split(':')[0]; let iface = dev.split(':')[0];
const cmd = `echo -n "addr_assign_type: "; cat /sys/class/net/${iface}/addr_assign_type 2>&1; const cmd = `echo -n "addr_assign_type: "; cat /sys/class/net/${iface}/addr_assign_type 2>/dev/null; echo;
echo -n "address: "; cat /sys/class/net/${iface}/address 2>&1; echo -n "address: "; cat /sys/class/net/${iface}/address 2>/dev/null; echo;
echo -n "addr_len: "; cat /sys/class/net/${iface}/addr_len 2>&1; echo -n "addr_len: "; cat /sys/class/net/${iface}/addr_len 2>/dev/null; echo;
echo -n "broadcast: "; cat /sys/class/net/${iface}/broadcast 2>&1; echo -n "broadcast: "; cat /sys/class/net/${iface}/broadcast 2>/dev/null; echo;
echo -n "carrier: "; cat /sys/class/net/${iface}/carrier 2>&1; echo -n "carrier: "; cat /sys/class/net/${iface}/carrier 2>/dev/null; echo;
echo -n "carrier_changes: "; cat /sys/class/net/${iface}/carrier_changes 2>&1; echo -n "carrier_changes: "; cat /sys/class/net/${iface}/carrier_changes 2>/dev/null; echo;
echo -n "dev_id: "; cat /sys/class/net/${iface}/dev_id 2>&1; echo -n "dev_id: "; cat /sys/class/net/${iface}/dev_id 2>/dev/null; echo;
echo -n "dev_port: "; cat /sys/class/net/${iface}/dev_port 2>&1; echo -n "dev_port: "; cat /sys/class/net/${iface}/dev_port 2>/dev/null; echo;
echo -n "dormant: "; cat /sys/class/net/${iface}/dormant 2>&1; echo -n "dormant: "; cat /sys/class/net/${iface}/dormant 2>/dev/null; echo;
echo -n "duplex: "; cat /sys/class/net/${iface}/duplex 2>&1; echo -n "duplex: "; cat /sys/class/net/${iface}/duplex 2>/dev/null; echo;
echo -n "flags: "; cat /sys/class/net/${iface}/flags 2>&1; echo -n "flags: "; cat /sys/class/net/${iface}/flags 2>/dev/null; echo;
echo -n "gro_flush_timeout: "; cat /sys/class/net/${iface}/gro_flush_timeout 2>&1; echo -n "gro_flush_timeout: "; cat /sys/class/net/${iface}/gro_flush_timeout 2>/dev/null; echo;
echo -n "ifalias: "; cat /sys/class/net/${iface}/ifalias 2>&1; echo -n "ifalias: "; cat /sys/class/net/${iface}/ifalias 2>/dev/null; echo;
echo -n "ifindex: "; cat /sys/class/net/${iface}/ifindex 2>&1; echo -n "ifindex: "; cat /sys/class/net/${iface}/ifindex 2>/dev/null; echo;
echo -n "iflink: "; cat /sys/class/net/${iface}/iflink 2>&1; echo -n "iflink: "; cat /sys/class/net/${iface}/iflink 2>/dev/null; echo;
echo -n "link_mode: "; cat /sys/class/net/${iface}/link_mode 2>&1; echo -n "link_mode: "; cat /sys/class/net/${iface}/link_mode 2>/dev/null; echo;
echo -n "mtu: "; cat /sys/class/net/${iface}/mtu 2>&1; echo -n "mtu: "; cat /sys/class/net/${iface}/mtu 2>/dev/null; echo;
echo -n "netdev_group: "; cat /sys/class/net/${iface}/netdev_group 2>&1; echo -n "netdev_group: "; cat /sys/class/net/${iface}/netdev_group 2>/dev/null; echo;
echo -n "operstate: "; cat /sys/class/net/${iface}/operstate 2>&1; echo -n "operstate: "; cat /sys/class/net/${iface}/operstate 2>/dev/null; echo;
echo -n "proto_down: "; cat /sys/class/net/${iface}/proto_down 2>&1; echo -n "proto_down: "; cat /sys/class/net/${iface}/proto_down 2>/dev/null; echo;
echo -n "speed: "; cat /sys/class/net/${iface}/speed 2>&1; echo -n "speed: "; cat /sys/class/net/${iface}/speed 2>/dev/null; echo;
echo -n "tx_queue_len: "; cat /sys/class/net/${iface}/tx_queue_len 2>&1; echo -n "tx_queue_len: "; cat /sys/class/net/${iface}/tx_queue_len 2>/dev/null; echo;
echo -n "type: "; cat /sys/class/net/${iface}/type 2>&1; echo -n "type: "; cat /sys/class/net/${iface}/type 2>/dev/null; echo;
echo -n "wireless: "; cat /proc/net/wireless \| grep ${iface}; echo -n "wireless: "; cat /proc/net/wireless \| grep ${iface};
echo -n "wirelessspeed: "; iw dev ${iface} link 2>&1 \| grep bitrate; echo;`; echo -n "wirelessspeed: "; iw dev ${iface} link 2>&1 \| grep bitrate; echo;`;
let lines = []; let lines = [];

View File

@ -52,11 +52,11 @@ function system(callback) {
result.sku = util.getValue(lines, 'sku number'); result.sku = util.getValue(lines, 'sku number');
// } // }
// Non-Root values // Non-Root values
const cmd = `echo -n "product_name: "; cat /sys/devices/virtual/dmi/id/product_name 2>&1; const cmd = `echo -n "product_name: "; cat /sys/devices/virtual/dmi/id/product_name 2>/dev/null; echo;
echo -n "product_serial: "; cat /sys/devices/virtual/dmi/id/product_serial 2>&1; echo -n "product_serial: "; cat /sys/devices/virtual/dmi/id/product_serial 2>/dev/null; echo;
echo -n "product_uuid: "; cat /sys/devices/virtual/dmi/id/product_uuid 2>&1; echo -n "product_uuid: "; cat /sys/devices/virtual/dmi/id/product_uuid 2>/dev/null; echo;
echo -n "product_version: "; cat /sys/devices/virtual/dmi/id/product_version 2>&1; echo -n "product_version: "; cat /sys/devices/virtual/dmi/id/product_version 2>/dev/null; echo;
echo -n "sys_vendor: "; cat /sys/devices/virtual/dmi/id/sys_vendor 2>&1;`; echo -n "sys_vendor: "; cat /sys/devices/virtual/dmi/id/sys_vendor 2>/dev/null; echo;`;
try { try {
lines = execSync(cmd).toString().split('\n'); lines = execSync(cmd).toString().split('\n');
result.manufacturer = result.manufacturer === '' ? util.getValue(lines, 'sys_vendor') : result.manufacturer; result.manufacturer = result.manufacturer === '' ? util.getValue(lines, 'sys_vendor') : result.manufacturer;
@ -102,7 +102,11 @@ function system(callback) {
result.version = result.version + ' - Rev. 1.2'; result.version = result.version + ' - Rev. 1.2';
} }
if (['a020d3'].indexOf(result.version) >= 0) { if (['a020d3'].indexOf(result.version) >= 0) {
result.model = result.model + ' - Pi 3 Model B'; result.model = result.model + ' - Pi 3 Model B+';
result.version = result.version + ' - Rev. 1.3';
}
if (['9020e0'].indexOf(result.version) >= 0) {
result.model = result.model + ' - Pi 3 Model A+';
result.version = result.version + ' - Rev. 1.3'; result.version = result.version + ' - Rev. 1.3';
} }
// Pi 2 Model B // Pi 2 Model B
@ -261,9 +265,9 @@ function bios(callback) {
result.releaseDate = util.parseDateTime(datetime).date; result.releaseDate = util.parseDateTime(datetime).date;
result.revision = util.getValue(lines, 'BIOS Revision'); result.revision = util.getValue(lines, 'BIOS Revision');
// Non-Root values // Non-Root values
const cmd = `echo -n "bios_date: "; cat /sys/devices/virtual/dmi/id/bios_date 2>&1; const cmd = `echo -n "bios_date: "; cat /sys/devices/virtual/dmi/id/bios_date 2>/dev/null; echo;
echo -n "bios_vendor: "; cat /sys/devices/virtual/dmi/id/bios_vendor 2>&1; echo -n "bios_vendor: "; cat /sys/devices/virtual/dmi/id/bios_vendor 2>/dev/null; echo;
echo -n "bios_version: "; cat /sys/devices/virtual/dmi/id/bios_version 2>&1;`; echo -n "bios_version: "; cat /sys/devices/virtual/dmi/id/bios_version 2>/dev/null; echo;`;
try { try {
lines = execSync(cmd).toString().split('\n'); lines = execSync(cmd).toString().split('\n');
result.vendor = !result.vendor ? util.getValue(lines, 'bios_vendor') : result.vendor; result.vendor = !result.vendor ? util.getValue(lines, 'bios_vendor') : result.vendor;
@ -355,11 +359,11 @@ function baseboard(callback) {
result.serial = util.getValue(lines, 'Serial Number'); result.serial = util.getValue(lines, 'Serial Number');
result.assetTag = util.getValue(lines, 'Asset Tag'); result.assetTag = util.getValue(lines, 'Asset Tag');
// Non-Root values // Non-Root values
const cmd = `echo -n "board_asset_tag: "; cat /sys/devices/virtual/dmi/id/board_asset_tag 2>&1; const cmd = `echo -n "board_asset_tag: "; cat /sys/devices/virtual/dmi/id/board_asset_tag 2>/dev/null; echo;
echo -n "board_name: "; cat /sys/devices/virtual/dmi/id/board_name 2>&1; echo -n "board_name: "; cat /sys/devices/virtual/dmi/id/board_name 2>/dev/null; echo;
echo -n "board_serial: "; cat /sys/devices/virtual/dmi/id/board_serial 2>&1; echo -n "board_serial: "; cat /sys/devices/virtual/dmi/id/board_serial 2>/dev/null; echo;
echo -n "board_vendor: "; cat /sys/devices/virtual/dmi/id/board_vendor 2>&1; echo -n "board_vendor: "; cat /sys/devices/virtual/dmi/id/board_vendor 2>/dev/null; echo;
echo -n "board_version: "; cat /sys/devices/virtual/dmi/id/board_version 2>&1;`; echo -n "board_version: "; cat /sys/devices/virtual/dmi/id/board_version 2>/dev/null; echo;`;
try { try {
lines = execSync(cmd).toString().split('\n'); lines = execSync(cmd).toString().split('\n');
result.manufacturer = !result.manufacturer ? util.getValue(lines, 'board_vendor') : result.manufacturer; result.manufacturer = !result.manufacturer ? util.getValue(lines, 'board_vendor') : result.manufacturer;
@ -481,11 +485,11 @@ function chassis(callback) {
sku: '', sku: '',
}; };
if (_linux || _freebsd || _openbsd) { if (_linux || _freebsd || _openbsd) {
const cmd = `echo -n "chassis_asset_tag: "; cat /sys/devices/virtual/dmi/id/chassis_asset_tag 2>&1; const cmd = `echo -n "chassis_asset_tag: "; cat /sys/devices/virtual/dmi/id/chassis_asset_tag 2>/dev/null; echo;
echo -n "chassis_serial: "; cat /sys/devices/virtual/dmi/id/chassis_serial 2>&1; echo -n "chassis_serial: "; cat /sys/devices/virtual/dmi/id/chassis_serial 2>/dev/null; echo;
echo -n "chassis_type: "; cat /sys/devices/virtual/dmi/id/chassis_type 2>&1; echo -n "chassis_type: "; cat /sys/devices/virtual/dmi/id/chassis_type 2>/dev/null; echo;
echo -n "chassis_vendor: "; cat /sys/devices/virtual/dmi/id/chassis_vendor 2>&1; echo -n "chassis_vendor: "; cat /sys/devices/virtual/dmi/id/chassis_vendor 2>/dev/null; echo;
echo -n "chassis_version: "; cat /sys/devices/virtual/dmi/id/chassis_version 2>&1;`; echo -n "chassis_version: "; cat /sys/devices/virtual/dmi/id/chassis_version 2>/dev/null; echo;`;
exec(cmd, function (error, stdout) { exec(cmd, function (error, stdout) {
let lines = stdout.toString().split('\n'); let lines = stdout.toString().split('\n');
result.manufacturer = util.getValue(lines, 'chassis_vendor'); result.manufacturer = util.getValue(lines, 'chassis_vendor');