1. Produktöversikt & funktioner
Vad är Maduino Zero 4G LTE?
Det är ett utvecklingskort från Makerfabs som integrerar ett SIMCOM SIM7600X (CAT4 LTE)-modem + en SAMD21G18A (Arduino Zero-kompatibel) mikrokontroller. makerfabs.com+2GitHub+2
Den kan användas både som traditionell mikrocontroller (Arduino-liknande) med tillgång till 4G-nätverk via AT-kommandon, samt som modem för en dator eller RPi via USB-gränssnitt. wiki.makerfabs.com+1
Fler funktioner / specifikationer: makerfabs.com+1
• LTE Cat-4: ner till ~150 Mbps (downlink) och ~50 Mbps (uplink) makerfabs.com+1
• GPS / GNSS stöd (modulen har positionering) makerfabs.com+2wiki.makerfabs.com+2
• Dual USB Type-C: en USB för MCU + ett USB gränssnitt för modemet (LTE) makerfabs.com+2GitHub+2
• Inbyggd laddare / batteristöd (kan köras på batteri) makerfabs.com+1
• Audio-stöd, SMS, telefoni, filer (FTP/HTTP), mm enligt SIM7600 kapaciteter. GitHub+2wiki.makerfabs.com+2
• Spänningskrav: USB-ingång 4,8 till 5,5 V, batteri 3,4 till 4,2 V typiskt. makerfabs.com+1
Modulen finns i versioner (SIM7600E, SIM7600A, SIM7600G) för olika regioner beroende på stöd för LTE-band. makerfabs.com+2GitHub+2
2. Arkitektur & kopplingar – vad bör utvecklare veta
Blockstruktur
Del | Ansvar |
---|---|
SAMD21 MCU | Kör din Arduino-kod, läser sensorer, styr logik, skickar AT-kommandon till modemet |
SIM7600-modem | Hanterar 4G-kommunikation, SMS, dataöverföring, GPS |
USB-c interface | MCU-USB för programmering / seriell, och modem-USB som nätverksgränssnitt |
Strömhantering | Välj mellan USB eller batteri, hantera laddning och skydd |
Antenn & GNSS | Båda för mobilnät och GPS-mottagning |
Viktiga kopplingar och designnoteringar
Kontrollera antenner korrekt: LTE- och GPS-antenner måste anslutas till rätt IPEX-kontakter
Vissa MCU-pinnar (t.ex. D8, D9) är kopplade till modemet via nivåskiftare för DTR/RI – dessa kan påverka användningen som vanliga I/O. wiki.makerfabs.com
Nivåskiftare (TXS0108E eller liknande) används för att matcha logiknivåer mellan SAMD21 (3,3 V) och modemet
Batterihantering: kortet har skydd för överladdning / urladdning
När du använder seriell/AT-kommandon – se till att delad UART inte stör andra moduler
3. Development setup & första test (AT-kommandon)
Miljö & installation
Installera Arduino IDE och lägg till stöd för Arduino Zero / SAMD21
Anslut Maduino via USB till datorn (till MCU-USB-porten)
Välj korttyp: “Arduino Zero (Native USB)” eller motsvarande SAMD21-variant
Öppna Serial Monitor (115200 bps, NL+CR)
Exempel: AT-kommandotest
Ladda ett enkelt kodexempel som vidarebefordrar kommando mellan PC och modemet:
void setup() {
Serial.begin(115200);
Serial1.begin(115200); // koppla MCU <-> modem (UART)
}
void loop() {
if (Serial.available()) {
char c = Serial.read();
Serial1.write(c);
}
if (Serial1.available()) {
char c = Serial1.read();
Serial.write(c);
}
}
När du skickar t.ex. AT
i Serial Monitor ska modemet svara OK
.
Testa t.ex.:
AT
AT+CGMI
AT+CGMM
AT+CSQ
AT+COPS?
4. Arduino-exempel: Skicka data via HTTP
Här är ett exempel som läser en sensor (t.ex. temperatur) och skickar värdet via HTTP POST genom LTE-modemet.
#include
#define SERIAL_TO_PC Serial
#define SERIAL_TO_MODEM Serial1
// exempel inställningar
const char* apn = "internet"; // APN för operatör
const char* server = "http://dittserver.se/ingest";
String sendAT(String cmd, unsigned long timeout = 5000) {
String resp = "";
SERIAL_TO_MODEM.println(cmd);
unsigned long t0 = millis();
while (millis() - t0 < timeout) {
while (SERIAL_TO_MODEM.available()) resp += (char)SERIAL_TO_MODEM.read();
}
return resp;
}
void modemInit() {
sendAT("AT"); // grundkommando
delay(100);
sendAT("AT+CGDCONT=1,\"IP\",\"" + String(apn) + "\"");
delay(100);
sendAT("AT+CGACT=1,1");
delay(500);
}
void setup() {
SERIAL_TO_PC.begin(115200);
SERIAL_TO_MODEM.begin(115200);
SERIAL_TO_PC.println("Start modem init...");
modemInit();
SERIAL_TO_PC.println("Modem kanal aktiverad.");
}
void loop() {
int sensorVal = analogRead(A0); // exempel sensorinläsning
String body = "{\"value\":" + String(sensorVal) + "}";
sendAT("AT+HTTPINIT");
sendAT("AT+HTTPPARA=\"URL\",\"" + String(server) + "\"");
sendAT("AT+HTTPDATA=" + String(body.length()) + ",10000");
delay(100);
sendAT(body);
sendAT("AT+HTTPACTION=1"); // POST
delay(5000);
sendAT("AT+HTTPTERM");
delay(10000);
}
Anpassa APN, URL och sensorpinnarna enligt just din setup.
5. Guide för undervisning / labbar med Maduino
Här är en lektionsstruktur och övningsidéer för att använda detta kort i undervisning:
Lektion | Fokus / mål | Övning eller projekt |
---|---|---|
1 | Introduktion & AT-kommandon | Koppla upp modemet och testa kommando som AT , AT+CSQ , AT+CGMI |
2 | Anslut till mobilnät | Sätt APN, aktivera dataförbindelse, kontrollera IP-adress |
3 | HTTP GET / POST | Skicka en sensor-GET till testserver (t.ex. httpbin.org) |
4 | Backendintegration | Bygg en mottagande backend (t.ex. FastAPI) och låt Maduino posta data |
5 | GPS & positionering | Använd modemet GPS-funktion (t.ex. AT+CGPS=1 , AT+CGPSINFO ) och visa kartposition |
6 | Projekt / tävling | T.ex. fjärrmiljömonitor + SMS-larm, GPS-tracker, smart nod med fallback (4G + LoRa) |
Exempelprojektidéer
4G-GPS-tracker: Maduino läser GPS, samt skickar plats via HTTP, visa på kartgränssnitt.
Miljökontrollerad node: Kombinera sensorer (fukt, temperatur, gas) och larm via SMS eller e-post.
Fallback-nod: En enhet med t.ex. LoRa + Maduino, där data skickas via LoRa om 4G inte är tillgängligt.
Data logger till molnplattform: Skicka värden till Thingspeak, InfluxDB, MQTT-broker etc.
6. Vanliga problem och tips
Kontrollera att SIM-kortet stöder LTE och att rätt LTE-band används i din region.
Antennplacering är kritisk — om signal är svag kan du inte upprätta dataanslutning.
Se till att strömförsörjning är stabil; LTE-modem kräver ibland hög ström vid överföring.
Hantera modemet med rätt timing — ge tid för uppkoppling, datum/synk etc.
Vid GPS: modemet behöver fri sikt mot himlen.
Om seriell/AT-kommandon “fastnar”, kan du behöva rensa buffertar eller vänta på URC-meddelanden (Unsolicited Result Codes).
När du använder I/O-pinnar, kontrollera att de inte är reserverade för modemet (t.ex. D8, D9 för DTR/RI) wiki.makerfabs.com
För felsökning, använd
AT+CSQ
,AT+CREG?
,AT+CGDCONT?
etc.
Utvecklarguide: Maduino Zero 4G LTE (SIM7600X)
Fullständig IoT-lösning med mobilnät, GPS och Arduino-kompatibilitet
1. Produktöversikt
Maduino Zero 4G LTE från Makerfabs kombinerar en SAMD21G18A-mikrokontroller (samma som Arduino Zero) med ett SIM7600X 4G-modem.
Den är perfekt för IoT-utveckling, fjärrövervakning, telemetri, och GPS-spårning där du behöver mobil uppkoppling utan Wi-Fi.
Viktiga egenskaper:
4G LTE Cat 4 (nedlänk 150 Mbps / uplänk 50 Mbps)
Inbyggd GNSS (GPS/GLONASS/BeiDou)
Dual USB Type-C (1 för MCU, 1 för LTE-modem)
Stöd för SMS, HTTP, MQTT, FTP och röst
Micro SIM-plats + batteriport med laddning
Kompatibel med Arduino IDE (Atmel SAMD21-baserad)
Öppen källkod (GitHub: Makerfabs Maduino Zero 4G LTE Repo)
? Köp den direkt från HiTechChain:
Maduino Zero 4G LTE – SIM7600X
2. Tekniska specifikationer
Funktion | Beskrivning |
---|---|
MCU | Atmel SAMD21 G18A (ARM Cortex-M0+) @ 48 MHz |
Modem | SIMCOM SIM7600E/A/G (beroende på region) |
Kommunikation | LTE, WCDMA, GSM, BLE, GNSS |
USB-portar | MCU programmering / modem-data |
Lagring | MicroSD-kortplats |
I/O-pinnar | 14 digitala I/O, 6 analoga |
Spänning | 5 V (USB) eller 3.7 V Li-ion-batteri |
Antenner | LTE-antenn + GPS-antenn via IPEX |
3. Installationsguide
Steg 1 – Arduino-IDE
Installera Arduino IDE
Lägg till kortstöd:
Tools ? Board ? Boards Manager ? Arduino SAMD Boards (by Arduino)Välj kort: Arduino Zero (Native USB Port)
Anslut Maduino till dator via MCU-USB-porten
Välj rätt port under Tools ? Port
Steg 2 – Första testet (AT-kommandon)
Använd följande “pass-through”-skiss:
void setup() {
Serial.begin(115200);
Serial1.begin(115200);
Serial.println("Startar AT-test...");
}
void loop() {
if (Serial.available()) Serial1.write(Serial.read());
if (Serial1.available()) Serial.write(Serial1.read());
}
Öppna Serial Monitor (115200 baud) och skriv:
AT
AT+CSQ
AT+CGMI
Du ska få OK
och signalstyrka.
4. Kodexempel – Skicka sensorvärden via HTTP POST
#include
#define LTE Serial1
#define DEBUG Serial
String APN = "internet"; // ändra till din operatörs APN
String SERVER = "http://demo.hitechchain.se/iot/ingest";
String sendAT(String cmd, int t=3000){
LTE.println(cmd);
String r=""; long start=millis();
while(millis()-startif(LTE.available()) r += (char)LTE.read();
}
DEBUG.println(r);
return r;
}
void setup(){
DEBUG.begin(115200);
LTE.begin(115200);
DEBUG.println("Init LTE...");
sendAT("AT");
sendAT("AT+CGATT=1");
sendAT("AT+CGDCONT=1,\"IP\",\"" + APN + "\"");
sendAT("AT+CGACT=1,1");
}
void loop(){
int val = analogRead(A0);
String json = "{\"temp\":"+String(val)+"}";
sendAT("AT+HTTPINIT");
sendAT("AT+HTTPPARA=\"CID\",1");
sendAT("AT+HTTPPARA=\"URL\",\"" + SERVER + "\"");
sendAT("AT+HTTPDATA=" + String(json.length()) + ",10000");
delay(200);
LTE.print(json);
sendAT("AT+HTTPACTION=1");
delay(5000);
sendAT("AT+HTTPTERM");
delay(15000);
}
Tips: Använd t.ex. FastAPI-backend eller Thingspeak för att ta emot data.
5. GPS-funktion – Få position från SIM7600X
sendAT("AT+CGPS=1"); // aktivera GPS
delay(2000);
sendAT("AT+CGPSINFO"); // läs lat/long
sendAT("AT+CGPS=0"); // stäng av GPS
Svar t.ex.:+CGPSINFO: 59.334,18.062,N,Stockholm
6. Lektionsförslag / Labbar
Lektion | Mål | Uppgift |
---|---|---|
1 | Förstå 4G-kommunikation och AT-kommandon | Testa AT och AT+CSQ |
2 | Skicka data via HTTP POST | Läs analog sensor och skicka till server |
3 | Ta emot och logga GPS-position | Visa plats på karta med Google Maps API |
4 | Felsökning och signalstyrka | Analysera AT+CSQ , AT+CREG? |
5 | Mini-projekt: Fjärrövervakning | Kombinera GPS + temperatur + backend |
7. Vanliga problem & lösningar
Problem | Orsak / lösning |
---|---|
Inget LTE-svar | SIM-kort låst? Inaktivera PIN via mobil. |
“NO CARRIER” | Fel APN eller ingen täckning. |
Oregelbundna data | Otillräcklig strömförsörjning – använd 5 V 2 A adapter. |
Ingen GPS | Flytta antenner utomhus, testa flera minuter. |
Serial1 fel | Kolla kortets UART-mappning. |