EXTECH 407760
Jump to navigation
Jump to search
File:Extech 407760.jpg | |
Status | planned |
---|---|
Source code | tondaj-sl814 |
Connectivity | tbd |
Frequency range | tbd |
Measurement range (A) | tbd |
Resolution | tbd |
Accuracy (94dB@1kHz) | tbd |
Frequency weighting | tbd |
Time weighting | tbd |
Website | extech407760.cn |
The EXTECH 407760 is a sound level meter with USB connectivity.
See EXTECH 407760/Info for more details (such as lsusb -vvv output) about the device.
See EXTECH 407760/Beagle_dump for more details on protocol
Hardware
Device:
- Main CPU: TBD
- TBD
- TBD
- TBD
- TBD
USB cable:
- TBD
Photos
Device:
USB cable:
TBD
Protocol
The device has a usb connector. The device accepts bulk transfer commands on a usb bus.
Commands / replies
407760(EXTECH) Communication Protocol Basic setup (64 byte in all, latter is 0) 0 1 2 3 4 5 6 7 8 9 10 11 LED STATUS Samprate Alarm HI Alarm Low y m d H M S Samp points 10 20 30 0 U8 U8 U8 U8 U8 U8 U8 U8 U8 U8 3U8 STATUS: 7 6 5 4 3 2 1 0 Auto:0 Manual:1 RT 1 STOR 0 1dBA 0dBC 1fast 0slow S:01 M:10 H:11 Samprate 0x01 represent 50ms 0x02 500ms 0x03 1s 0x04 2s 0x05 5s 0x06 10s 0x07 60s Download the data PC transmits the read-command 00,00,0D in read Mode. If the first byte of reply is 0XFF , then it is STOR MODE {STOR MODE 2 HI 1 M 0 LOW Transmit the read-command 00,00,0f READ data READ INFO 11 10 9 8 7 6 5 4 3 2 1 0 Alam H Alam L fs unit S M H d m m y Samprate BLOCKBUF 512 Except the last time, It is sent BLOCKBUF real data 2 hi 1 lo 0 0x0f Hi*256+lo is the times of reading data //STOR MODE } If it not 0XFF, then it is REAL MODE STATUS 7 6 5 4 3 2 1 0 Auto:0 Manual:1 RT/STOR check 1dBA 0dBC 11fast 0slow Samprate SAMPRATE =0 this means EMS memory is empty “serial parameters” To connect to the device via USB, you will need to know the following for development.. VID : VID_10C4 PID : PID_0003 Baud rate : (9600) Bit value : 8
Notes
TBD
Python script
Here's a quick Python script for getting the values out of the EXTECH 407760. A sigrok driver will follow soon.
#!/bin/python
import usb.core import sys dev = usb.core.find(idVendor=0x10c4, idProduct=0xea61)
- dev.baudrate=9600
dev.set_configuration() dev.reset()
bytes_written = dev.write(0x02, [0x00,0x00,0x0D], 0) print "_dbg bytes_written: ", bytes_written
for x in xrange(0,100):
print "_dbg attempting read for the %d time\n" % x try: data = dev.read(0x82, 1,0,1000) if data: print "Data found!\n" sys.exit() else: print "Data not found!\n" except: pass
Example output:
TBD
Resources
TODO.