Difference between revisions of "Lascar Electronics EL-USB-2"
Jump to navigation
Jump to search
Line 26: | Line 26: | ||
=== Status structure === | === Status structure === | ||
// 0x03 | // 0x03 packet type? | ||
uint8_t unknown1; | uint8_t unknown1; | ||
// 0x00 | // 0x00 ? | ||
uint8_t unknown2; | uint8_t unknown2; | ||
// NULL-terminated device name | // NULL-terminated device name, 15 chars max | ||
char device_name[16]; | char device_name[16]; | ||
Line 57: | Line 57: | ||
uint16_t num_stored_samples; | uint16_t num_stored_samples; | ||
// 00 00 | // 00 00, 33 03 (03=logging?), 33 02 (02=stop?) | ||
uint16_t unknown4; | uint16_t unknown4; | ||
// | // temp high alarm, (value + 40) * 2 | ||
uint8_5 alarm_temp_high; | |||
// 00 00 00 3f | // temp low alarm, (value + 40) * 2 | ||
uint8_5 alarm_temp_low; | |||
// 00 00 00 3f, 00 00 80 3f | |||
uint32_t unknown6; | uint32_t unknown6; | ||
Line 69: | Line 72: | ||
uint32_t unknown7; | uint32_t unknown7; | ||
// 00 00 00 00 | // 00 00 | ||
uint32_t | uint16_t unknown8; | ||
// 00 00, 01 00 (01 00 = fahrenheit?) | |||
uint32_t unknown12; | |||
// ASCII, not NULL-terminated | // ASCII, not NULL-terminated | ||
Line 78: | Line 84: | ||
uint16_t serial_number; | uint16_t serial_number; | ||
// | // 00 00 | ||
uint16_t | uint16_t unknown13; | ||
// relative humidity high alarm, double value | |||
uint8_t alarm_rh_high; | |||
// relative humidity log alarm, double value | |||
uint8_t alarm_rh_low; | |||
// 00 00 | // 00 00 |
Revision as of 01:05, 25 November 2012
The Lascar Electronics EL-USB-2 is a USB-based temperature and humidity logger.
See Lascar Electronics EL-USB-2/Info for more details (such as lsusb -vvv output) about the device.
Hardware
- Silicon Labs C8051F321 8051-based USB microcontroller
- Microchip 24LC256 32kB EEPROM
- Sensiron SHT11 Temperature/humidity sensor
Photos
Protocol
Status structure
// 0x03 packet type? uint8_t unknown1; // 0x00 ? uint8_t unknown2; // NULL-terminated device name, 15 chars max char device_name[16]; // 0-23 uint8_t start_time_hour; // 0-59 uint8_t start_time_minute; // 0-59 uint8_t start_time_second; // 1-31 unit8_t start_date_day; // 1-12 unit8_t start_date_month; // year - 2000 unit8_t start_date_year; uint32_t unknown3; // in seconds, little-endian uint16_t samplerate; // little-endian uint16_t num_stored_samples; // 00 00, 33 03 (03=logging?), 33 02 (02=stop?) uint16_t unknown4; // temp high alarm, (value + 40) * 2 uint8_5 alarm_temp_high; // temp low alarm, (value + 40) * 2 uint8_5 alarm_temp_low; // 00 00 00 3f, 00 00 80 3f uint32_t unknown6; // 00 00 20 c2 uint32_t unknown7; // 00 00 uint16_t unknown8;
// 00 00, 01 00 (01 00 = fahrenheit?) uint32_t unknown12; // ASCII, not NULL-terminated char firmware_version[4] // little-endian, displayed in decimal uint16_t serial_number; // 00 00 uint16_t unknown13; // relative humidity high alarm, double value uint8_t alarm_rh_high; // relative humidity log alarm, double value uint8_t alarm_rh_low; // 00 00 uint16_t unknown10; // 00 00 00 00 uint32_t unknown11;
Resources
TODO.