- if (!(sdi = sr_dev_inst_new(0, SR_ST_INACTIVE, LASCAR_VENDOR,
- profile->modelname, firmware)))
- return NULL;
- sdi->driver = di;
-
- if (profile->logformat == LOG_TEMP_RH) {
- /* Model this as two channels: temperature and humidity. */
- if (!(ch = sr_channel_new(0, SR_CHANNEL_ANALOG, TRUE, "Temp")))
- return NULL;
- sdi->channels = g_slist_append(NULL, ch);
- if (!(ch = sr_channel_new(0, SR_CHANNEL_ANALOG, TRUE, "Hum")))
- return NULL;
- sdi->channels = g_slist_append(sdi->channels, ch);
- } else if (profile->logformat == LOG_CO) {
- if (!(ch = sr_channel_new(0, SR_CHANNEL_ANALOG, TRUE, "CO")))
- return NULL;
- sdi->channels = g_slist_append(NULL, ch);
- } else {
- if (!(ch = sr_channel_new(0, SR_CHANNEL_ANALOG, TRUE, "P1")))
- return NULL;
- sdi->channels = g_slist_append(NULL, ch);
- }
+ i = config[52] | (config[53] << 8);
+ memcpy(firmware, config + 0x30, 4);
+ firmware[4] = '\0';
+ sr_dbg("found %s with firmware version %s serial %d",
+ profile->modelname, firmware, i);