<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[EMMC on 2440 - Smart Status UNKNOWN in widget]]></title><description><![CDATA[<p dir="auto">I installed an mSATA SSD in my 2440 and installed pfsense225 on it.  When I added the "SMART Status" dashboard widget, it looks like this<br />
<img src="https://monosnap.com/file/dUBQvdS91ndJmIQp8kXBYqTAx8oYFd.png" alt="" class=" img-fluid img-markdown" /></p>
<p dir="auto">The da0 device is the internal 4gb eMMC disk.  When I looked at the widget code, it looks like it runs smartctl -H /dev/da0 which doesn't work on this device.  It needs to be smartctl -d scsi -H /dev/da0</p>
<p dir="auto">e.g. when you run smartctl -H /dev/da0 you get</p>
<pre><code>/dev/da0: Unknown USB bridge [0x0424:0x2240 (0x198)]
Please specify device type with the -d option.

</code></pre>
<p dir="auto">but If I add "-d scsi" it works</p>
<pre><code>smartctl -d scsi -H /dev/da0
=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK

</code></pre>
<p dir="auto">Is there any way to make the widget run the proper commands for the "scsi" device to show its proper status? or just ignore it?</p>
]]></description><link>https://forum.netgate.com/topic/92679/emmc-on-2440-smart-status-unknown-in-widget</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 06:33:02 GMT</lastBuildDate><atom:link href="https://forum.netgate.com/topic/92679.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 07 Dec 2015 05:34:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to EMMC on 2440 - Smart Status UNKNOWN in widget on Tue, 08 Dec 2015 13:58:15 GMT]]></title><description><![CDATA[<p dir="auto">Awesome!  thanks again, works a treat</p>
]]></description><link>https://forum.netgate.com/post/589373</link><guid isPermaLink="true">https://forum.netgate.com/post/589373</guid><dc:creator><![CDATA[luckman212]]></dc:creator><pubDate>Tue, 08 Dec 2015 13:58:15 GMT</pubDate></item><item><title><![CDATA[Reply to EMMC on 2440 - Smart Status UNKNOWN in widget on Tue, 08 Dec 2015 07:55:02 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/luckman212">@<bdi>luckman212</bdi></a>:</p>
<blockquote>
<p dir="auto">Are you able to merge that code with the mainline?</p>
</blockquote>
<p dir="auto">You can use this URL with System Patches package for 2.2.x:</p>
<p dir="auto">https://github.com/doktornotor/pfsense/commit/119d9703ba232ecf97d9e58c742ceee9e376c57d.patch</p>
<p dir="auto">(There's <a href="https://github.com/pfsense/pfsense/pull/1841" target="_blank" rel="noopener noreferrer nofollow ugc">PR 1841</a> for 2.2.x, never been merged. I don't have a patch for 2.3 snapshots yet.)</p>
]]></description><link>https://forum.netgate.com/post/589289</link><guid isPermaLink="true">https://forum.netgate.com/post/589289</guid><dc:creator><![CDATA[doktornotor]]></dc:creator><pubDate>Tue, 08 Dec 2015 07:55:02 GMT</pubDate></item><item><title><![CDATA[Reply to EMMC on 2440 - Smart Status UNKNOWN in widget on Mon, 07 Dec 2015 22:38:31 GMT]]></title><description><![CDATA[<p dir="auto">Doktor - thank you, nice patch!  Looks just like the Services Status widget which has a similar filter. Are you able to merge that code with the mainline? (I'm old - when I manually patch things I always forget about it and wind up breaking things during upgrades etc.)</p>
]]></description><link>https://forum.netgate.com/post/589220</link><guid isPermaLink="true">https://forum.netgate.com/post/589220</guid><dc:creator><![CDATA[luckman212]]></dc:creator><pubDate>Mon, 07 Dec 2015 22:38:31 GMT</pubDate></item><item><title><![CDATA[Reply to EMMC on 2440 - Smart Status UNKNOWN in widget on Mon, 07 Dec 2015 07:46:16 GMT]]></title><description><![CDATA[<p dir="auto">This patch will let you hide it from the widget:</p>
<pre><code>
---
--- a/usr/local/www/widgets/widgets/smart_status.widget.php
+++ b/usr/local/www/widgets/widgets/smart_status.widget.php
@@ -32,7 +32,21 @@
 require_once("pfsense-utils.inc");
 require_once("functions.inc");
 require_once("/usr/local/www/widgets/include/smart_status.inc");
+
+if (isset($_POST['smartstatusfilter'])) {
+	$config['widgets']['smartstatusfilter'] = htmlspecialchars($_POST['smartstatusfilter'], ENT_QUOTES | ENT_HTML401);
+	write_config("Saved SMART Status Filter via Dashboard");
+	header("Location: ../../index.php");
+}
 ?&gt;
+
+
+	

&lt;form action="/widgets/widgets/smart_status.widget.php" method="post" name="iformd"&gt;
+		Comma separated list of drives to NOT display in the widget

+		
+		
+	&lt;/form&gt;

+

@@ -42,35 +56,50 @@

-$devs = array();
-## Get all adX, daX, and adaX (IDE, SCSI, and AHCI) devices currently installed
+/* Get all adX, daX, and adaX (IDE, SCSI, and AHCI) devices currently installed */
 $devs = get_smart_drive_list();
+/* Get list of drives to hide from the widget */
+$skipdrives = array();
+$skipdrives = explode(",", $config['widgets']['smartstatusfilter']);

-if(count($devs) &gt; 0)  {
-	foreach($devs as $dev)  {	## for each found drive do
-		$dev_ident = exec("diskinfo -v /dev/$dev | grep ident   | awk '{print $1}'"); ## get identifier from drive
-		$dev_state = trim(exec("smartctl -H /dev/$dev | awk -F: '/^SMART overall-health self-assessment test result/ {print $2;exit}
-/^SMART Health Status/ {print $2;exit}'")); ## get SMART state from drive
-		switch ($dev_state) {
-		case "PASSED":
-		case "OK":
-			$color = "#90EE90";
-			break;
-		case "":
-			$dev_state = "Unknown";
-			$color = "#C0B788";
-			break;
-		default:
-			$color = "#F08080";
-			break;
-		}
+if (count($devs) &gt; 0)  {
+	// For each found drive ...
+	foreach($devs as $dev)  {
+		// unless configured to be hidden ...
+		if ((!in_array($dev, $skipdrives))) {
+			$dev_ident = exec("diskinfo -v /dev/$dev | grep ident   | awk '{print $1}'"); // get identifier from drive
+			$dev_state = trim(exec("smartctl -H /dev/$dev | awk -F: '/^SMART overall-health self-assessment test result/ {print $2;exit}
+/^SMART Health Status/ {print $2;exit}'")); // get SMART state from drive
+			switch ($dev_state) {
+				case "PASSED":
+				case "OK":
+					$color = "#90EE90";
+					break;
+				case "":
+					$dev_state = "Unknown";
+					$color = "#C0B788";
+					break;
+				default:
+					$color = "#F08080";
+					break;
+			}
 ?&gt;
-		
-			
-			
-			
-		
-+			
+				
+				
+				
+			
++	}
 }
 ?&gt;

|  |  |    |
|  |  |    | 

+
+
+

</code></pre>
<p dir="auto">(No, I don't have any patch to add <em>-d scsi</em>.)</p>
]]></description><link>https://forum.netgate.com/post/589069</link><guid isPermaLink="true">https://forum.netgate.com/post/589069</guid><dc:creator><![CDATA[doktornotor]]></dc:creator><pubDate>Mon, 07 Dec 2015 07:46:16 GMT</pubDate></item></channel></rss>