Lascar Electronics EL-USB-2
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
Commands
Bytes | Command |
---|---|
0x00 0xff 0xff | Get device configuration structure.
A 3-byte header is returned first in which the first byte is 0x02, and the second and third bytes are the length of the configuration structure to follow, as a little-endian integer representing the number of bytes. Different devices in the EL-USB series have differently-sized configuration structures. |
Device configuration structure
Offset | Size | Value | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | 2 | Device type
| ||||||||||||||||||
0x01 | 1 | Unused | ||||||||||||||||||
0x02 | 16 | NULL-terminated device name, 15 chars max | ||||||||||||||||||
0x12 | 1 | Start time, hour (0-23) | ||||||||||||||||||
0x13 | 1 | Start time, minute (0-59) | ||||||||||||||||||
0x14 | 1 | Start time, second (0-59) | ||||||||||||||||||
0x15 | 1 | Start date, day (1-31) | ||||||||||||||||||
0x16 | 1 | Start date, month (1-12) | ||||||||||||||||||
0x17 | 1 | Start date, year (year - 2000) | ||||||||||||||||||
0x18 | 2 | Unsigned little-endian, seconds remaining until logging starts | ||||||||||||||||||
0x1a | 2 | unknown | ||||||||||||||||||
0x1c | 2 | Unsigned little-endian, samplerate (seconds between samples) | ||||||||||||||||||
0x1e | 2 | Unsigned little-endian, number of stored samples | ||||||||||||||||||
0x20 | 1 |
| ||||||||||||||||||
0x21 | 1 | current status? (2=stopped, 3=logging) | ||||||||||||||||||
0x22 | 1 | Temperature alarm high (value + 40) * 2 | ||||||||||||||||||
0x23 | 1 | Temperature alarm low (value + 40) * 2 | ||||||||||||||||||
0x24 | 4 | unknown (00 00 00 3f, 00 00 80 3f) | ||||||||||||||||||
0x28 | 4 | unknown (00 00 20 c2) | ||||||||||||||||||
0x2c | 2 | unknown (00 00) | ||||||||||||||||||
0x2e | 2 | unknown (possible temp unit, 00 00=C, 01 00=F) | ||||||||||||||||||
0x30 | 4 | Firmware version (ASCII, not NULL-terminated | ||||||||||||||||||
0x34 | 2 | Unsigned little-endian, serial number | ||||||||||||||||||
0x36 | 2 | unknown (00 00) | ||||||||||||||||||
0x38 | 1 | Relative humidity alarm high (value * 2) | ||||||||||||||||||
0x39 | 1 | Relative humidity alarm low (value * 2) | ||||||||||||||||||
0x3a | 2 | unknown (00 00) | ||||||||||||||||||
0x3c | 4 | unknown (00 00 00 00) |
The rest of the 128-byte payload is padded with 0xff.
Resources
TODO.