Opened 7 months ago

Last modified 2 months ago

#1839 new patch

Request to Add SQFlash Information to Smartmontools Database

Reported by: Wade Cheng Owned by:
Priority: minor Milestone: undecided
Component: drivedb Version:
Keywords: ssd Cc: Wade Cheng

Description

Dear Smartmontools Development Team,

My name is Wade, and I am an Application Engineer at Advantech, specifically with the SQFlash team.
We develop and support a range of SSD products under the SQFlash brand, which are widely used in various industrial and embedded applications.

We have been utilizing Smartmontools for monitoring and maintaining the health of our SSDs, and we greatly appreciate the comprehensive and robust features your tool provides.
To enhance the compatibility and accuracy of Smartmontools with our products, we would like to request the inclusion of detailed information about our SQFlash SSDs into the Smartmontools database.

We are happy to provide any further technical details, datasheets, or samples of our SSDs to facilitate this process. Our goal is to ensure that users of our SQFlash SSDs can leverage the full capabilities of Smartmontools for optimal performance and reliability.

Please let us know the best way to proceed with this request. We are eager to collaborate and support your team in any way necessary to integrate SQFlash SSD information into Smartmontools.

Thank you for your time and consideration. We look forward to your positive response.

Best Regards,

Wade Cheng
Application Engineer
Embedded SQFlash
Tel: +886 2 7732-3399 ext.9246
No. 27, Wende Road, Guishan District, Taoyuan City, Taiwan (ROC) 333

Attachments (10)

SQFlash SATA.h (1.5 KB ) - added by Wade Cheng 7 months ago.
SQFlash SATA_new.h.h (1.8 KB ) - added by Wade Cheng 6 months ago.
syntax error.png (63.7 KB ) - added by Wade Cheng 6 months ago.
smartctl_output (1.5 KB ) - added by Wade Cheng 6 months ago.
smartctl_P_showall.txt (1.2 KB ) - added by Wade Cheng 3 months ago.
smartctl_SQFSSD_1.txt (9.1 KB ) - added by Wade Cheng 3 months ago.
smartctl_SQFSSD_2.txt (9.1 KB ) - added by Wade Cheng 3 months ago.
smartctl_P_showal_SQF-S25C9-960GDCGE.txt (1.3 KB ) - added by Wade Cheng 3 months ago.
smartctl_x_a_test_SQF-S25C9-960GDCGE.txt (9.1 KB ) - added by Wade Cheng 3 months ago.
SQFlash_SATA.h (4.0 KB ) - added by Wade Cheng 3 months ago.

Download all attachments as: .zip

Change History (24)

by Wade Cheng, 7 months ago

Attachment: SQFlash SATA.h added

comment:1 by Christian Franke, 7 months ago

Component: alldrivedb
Keywords: ssd added
Milestone: undecided
  • Please provide sample smartctl -x -a outputs for some of the matched devices, at least one from a device with identify string like SQFlash 830 Series and one with a short one like SAFMA2A3.
  • Shorten the regex by combining names, for example SQFlash (6[456]0|830|840( FIPS)?) Series or SAFM(A2A3|02A[3-6]).
  • Comment out all -v options which are covered by the DEFAULT entry. See other drivedb.h entries for examples.
  • Testing is mandatory: Please fix the syntax errors (trailing | in regex, spaces instead of '_' in attribute names, ...) and then test the entry, see options -B and -P showall 'MODEL' on smartctl man page.

by Wade Cheng, 6 months ago

Attachment: SQFlash SATA_new.h.h added

by Wade Cheng, 6 months ago

Attachment: syntax error.png added

comment:2 by Wade Cheng, 6 months ago

Hi Christian

I have edited my header file, but still have some syntax error.
Could you give me some advices how to fix this error.

I have put a screenshot as attachment.

Thanks
Best Regards
Wade Cheng

comment:3 by Christian Franke, 6 months ago

...but still have some syntax error.

  • Missing warningmsg field (see comments on top of drivedb.h)
  • Trailing comma.

Apply these changes...

  • .h

    old new  
    22  "SQFlash SATA SSDs", // See SQFlash SMART ID Definition(SATA)_v1.5.1_Y2024.pdf
    33  "SQFlash (6[456]0|830|840( FIPS)?) Series|SAFM(A2A3|02A[3-6])|SBFM(A611|A612|A613|A614|A615|AH12|AU12|AU13|A011|A012|A013)|SCEM(H2A3|H2A4|H2A5|12A3|12A4|12A5|13A4|MP3A0|I15A1|I15A2|I15A3|IH5A3|IP5A0)|SHFB(A221|A222|A223)|SHFM(A211|A212|A213|A231|A232)|S23A05S|SCPB13.0",
    44  "",
     5  "",
    56  // Comment out DEFAULT-covered attributes
    67  "-v 1,raw48,Uncorrectable_ECC_Count " // Not covered by DEFAULT
    78  "-v 9,raw48,Power_On_Hours " // Covered by DEFAULT
     
    2425  "-v 241,raw48,Total_Host_Write_(Sector) " // Not covered by DEFAULT
    2526  "-v 242,raw48,Total_Host_Read_(Sector) " // Not covered by DEFAULT
    2627  "-v 244,raw48,Average_Erase_Count " // Not covered by DEFAULT
    27   "-v 245,raw48,Max_Erase_Count ", // Not covered by DEFAULT
     28  "-v 245,raw48,Max_Erase_Count " // Not covered by DEFAULT
    2829},

... and then run smartctl -B SQFlash_SATA_new-fixed.h -P showall.

  • Fix the reported Attribute name too long errors.
  • Actually comment out (//-v ...) options covered by DEFAULT entry. See drivedb.h for many examples. Remove all these // ... by DEFAULT comments.
  • Provide various sample smartctl -x -a outputs. This is mandatory for each new entry.
  • Avoid excess long lines. The regex could further shortened and split into multiple lines.

PS:

by Wade Cheng, 6 months ago

Attachment: smartctl_output added

comment:4 by Wade Cheng, 6 months ago

Hi Christian

I have uploaded a new version of SQFlaf_SATA.h without Sntax error.
And, check it with smartctl -B SQFlash_SATA_new-fixed.h -P showall,
output as smartctl_output

Thank you
Besr Regard
Wade

comment:5 by Wade Cheng, 5 months ago

Hi Christian

Could you check if my header file meets the requirement to upload to your database?

Thank you
Best Regard
Wade

comment:6 by Christian Franke, 5 months ago

  • Attributes converted by DEFAULT are still not commented out.
  • Regex line is still very long and overly complex.
  • Sample smartctl -x -a outputs of real devices are still missing.

Please see also the FAQ.

by Wade Cheng, 3 months ago

Attachment: smartctl_P_showall.txt added

by Wade Cheng, 3 months ago

Attachment: smartctl_SQFSSD_1.txt added

by Wade Cheng, 3 months ago

Attachment: smartctl_SQFSSD_2.txt added

comment:7 by Wade Cheng, 3 months ago

Hi Christian

I have edited my header file.
Our SQF SSD is named as "SQFxxxxxxxxxx", so I put "modelregexp" as "SQF", can this be distinguish as "modelfamily (SQFlash SATA SSDs)"?

Also, I have uploaded "smatctl -x -a" results as attachments.
could you please check it~

Thank You
Best Regard
Wade

comment:8 by Christian Franke, 3 months ago

The regexp "SQF" was obviously not tested with for example smartctl -P showall "SQF-S25C9-960GDCGE". See the comment from the drivedb.hfile "The regular expressions for drive model and firmware must match the full string".

A regexp "SQF.*" would fix this, but would have too many false positives.

comment:9 by Wade Cheng, 3 months ago

Hi Christian

Thank you for your reminder.
I have changed my header file (SQFlash_SATA.h) to our specific model name in "modelregexp" and test result shows as attached file "smartctl_P_showal_SQF-S25C9-960GDCGE", "smartctl_x_a_test_SQF-S25C9-960GDCGE".

Could you check if these files please?

Thank You
Best Regard
Wade

by Wade Cheng, 3 months ago

Attachment: SQFlash_SATA.h added

comment:10 by Wade Cheng, 3 months ago

Hi Christian

Could you check if my last update can meet your requirement please~

Thank You
Best Regard
Wade

comment:11 by Wade Cheng, 2 months ago

Hi Christian

Could you check if my last update can meet your requirement please~

Thank You
Best Regard
Wade

comment:12 by Christian Franke, 2 months ago

  • Attributes covered by the DEFAULT entry are still not commented out. There are many examples in the drivedb.h like //"-v 12,raw48,Power_Cycle_Count ".
  • Model regex now looks good, but it apparently only matches models with 960GB or 1TB capacity. Are these the only capacities available?
  • Note: The regex could be further shortened by factoring out the common prefix, for example:
    SQF-S25(C9-960GDCGE|V4-1T-SBC|V4-1TDSDC|Z8-960GDSCC).
  • The firmware regex is optional and usually empty. If drives with different firmware require different settings, you need to provide separate entries for the other firmware versions. If not, set the firmware regex to "".
  • If you want to be mentioned as the patch author, please also provide a patch for the ChangeLog file.

in reply to:  12 comment:13 by Christian Franke, 2 months ago

Followup to:

  • Model regex now looks good, but it apparently only matches models with 960GB or 1TB capacity. Are these the only capacities available?

This is obviously not the case as your previous attachment smartctl_SQFSSD_2.txt demonstrates:

Device Model:     SQF-S25V4-240GDSCE
...
Firmware Version: SCFI15A2
User Capacity:    240,057,409,536 bytes [240 GB]

Test:

$ smartctl -B +./SQFlash_SATA.h -P showall 'SQF-S25V4-240GDSCE' 'SCFI15A2'
No presets are defined for this drive.  Its identity strings:
MODEL:    SQF-S25V4-240GDSCE
FIRMWARE: SCFI15A2
do not match any of the known regular expressions.

$ smartctl -B +./SQFlash_SATA.h -P showall 'SQF-S25V4-240GDSCE'
No presets are defined for this drive.  Its identity strings:
MODEL:    SQF-S25V4-240GDSCE
FIRMWARE: (any)
do not match any of the known regular expressions.

comment:14 by Christian Franke, 2 months ago

A useful page to experiment with regexp: https://regex101.com/r/ACK5KL/1
(remove leading ^ and trailing $ before copying to drivedb because this is implict there)

Note: See TracTickets for help on using tickets.