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 | Load 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. |
0x01 0xnn 0xnn | Save device configuration structure.
The second and third bytes are the length of the configuration structure to follow, as a little-endian integer representing the number of bytes. The device responds with a single byte with value 0xff when the configuration has been saved. |
Device configuration structure
Offset | Size | Value | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | 1 | 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 | 4 | Unsigned little-endian, seconds remaining until logging starts | ||||||||||||||||||||||||||||||||||||
0x1c | 2 | Unsigned little-endian, samplerate (seconds between samples) | ||||||||||||||||||||||||||||||||||||
0x1e | 2 | Unsigned little-endian, number of stored samples | ||||||||||||||||||||||||||||||||||||
0x20 | 1 |
| ||||||||||||||||||||||||||||||||||||
0x21 | 1 |
| ||||||||||||||||||||||||||||||||||||
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 | Device-specific configuration | ||||||||||||||||||||||||||||||||||||
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) |
Device-specific information
The 16-bit field at offset 0x2e in the configuration structure has different meanings depending on the type of device. It can be either a 16-bit little-endian integer or a bitfield.
EL-USB-2 |
---|
0x0000 | Celcius |
0x0001 | Fahrenheit |
Resources
TODO.