Inhoudsopgave:

SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie "vuil goedkoop"? - Ajarnpa
SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie "vuil goedkoop"? - Ajarnpa

Video: SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie "vuil goedkoop"? - Ajarnpa

Video: SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie
Video: SIM900A 2G module + Hologram SIM card 2024, November
Anonim
SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie
SIM900A 2G-module + hologram-simkaart = winnende combinatie in categorie

IoT, het modewoord van dit decennium, komt soms zelfs in de hoofden van mensen die denken dat ze resistent zijn tegen rage, waaronder ikzelf.

Op een dag was ik aan het surfen op internet en zag een bedrijf waar ik nog nooit van gehoord had (Hologram) gratis simkaarten weggeven, met de duidelijke bedoeling om IoT onder hardwareontwikkelaars te promoten. Ik keek naar de deal en het leek te mooi om waar te zijn - simkaart met gratis GPRS-gegevens ter waarde van 1 MB, en met gratis verzending - dit soort vrijgevigheid wordt meestal gemanifesteerd door grote bedrijven. Dat zette me aan het denken: waarom niet bestellen?, ook al ben ik, zoals ik al zei, niet echt van IoT. Dus ik deed.

Een paar maanden vooruitspoelen, Hologram SIM staat stof te verzamelen in mijn la, maar een vaag idee dat er op de een of andere manier mee verbonden is, begint door de randen van mijn bewustzijn te stromen - wat als dit gratis abonnement van 1 Mb/maand op een slimme manier zou kunnen worden gebruikt zonder ooit extra gegevens betalen?

Laten we uitgaan van het worstcasescenario - de maand is 31 dagen lang, en als ze 'megabyte' zeggen, bedoelen ze 1 000 Kb of 1 000 000 bytes (in tegenstelling tot MiB), en dat laat ons vrij om 32.258 Kb of 32258 bytes te gebruiken een dag. Dat cijfer ziet er realistisch uit voor, laten we zeggen, een soort externe sensor die de metingen eenmaal per dag naar de server stuurt.

Met die twijfel weggevaagd met een snelle berekening, werd een nieuw plan gevormd - combineer een Hologram-simkaart met een goedkope 2G-module om plaats te maken voor sensoren op afstand met een beperkt budget.

Stap 1: SIM900A - Voordelige module voor Aziatische markt

SIM900A - Voordelige module voor Aziatische markt
SIM900A - Voordelige module voor Aziatische markt

De afgelopen jaren had ik al gewerkt met de goedkoopste 2G module op de markt, namelijk Neoway M590. Als gevolg hiervan is het al goed gedocumenteerd op deze blog in een populaire reeks berichten (post één, twee en drie). Kortom, het gebrek aan betrouwbaarheid van deze modules is de dealbreaker. Daarom ging ik (vrij voorspelbaar) op zoek naar de op één na laatste goedkope 2G-modules op de markt. De zoekopdracht is voltooid en ik geef je - SIM900A.

Pinout-diagram is meestal nergens te vinden als je deze modules koopt, dus ik heb er zelf een gemaakt, vind het bij deze stap.

Enkele essentiële documenten die je zeker nodig hebt:

  • Handleiding voor hardware-ontwerp.
  • Arduino-georiënteerde handleiding van een Indiase webwinkel.
  • AT-commandoset.

Waar ik geen rekening mee hield, was dat de variëteit van SIM900 gemarkeerd met de letter 'A' is vergrendeld voor de Aziatische markt. Dat betekent dat u die buiten Azië niet kunt gebruiken zonder ze opnieuw te flashen.

Bekijk ook deze GSM-dekkingskaart voordat u de module koopt, aangezien de SIM900A een dual-bandmodule is, wat betekent dat deze alleen werkt op de frequentiebanden van 900 en 1800 MHz (zie uitleg hier). Daarom, als uw land 2G al heeft uitgefaseerd ten gunste van 3G en 4G, zal SIM900A waarschijnlijk niet werken (hoewel Hologram wereldwijde dekking claimt, dus ik weet het niet echt zeker).

Gedetailleerde instructies om deze module klaar te maken voor een batterijgevoede afstandssensor zijn te volgen in de volgende stappen.

Stap 2: Verwijder de diode

Verwijder de diode
Verwijder de diode
Verwijder de diode
Verwijder de diode

De module in kwestie wordt op de markt gebracht als "5V-compatibel". Haast je echter niet om het aan Arduino aan te sluiten, want wat het overzeese marketingteam daarmee bedoelt, is niet wat je denkt dat het is. Zoals vermeld in de datasheet, kan de SIM900 bogen op een voedingsbereik van 3,4 tot 4,5 V (met een absoluut maximum van 5,5 V).

Om de limiet van 4,5V te handhaven, voegt dit bord (raad eens!) een diode in serie met Vcc-pin toe, waardoor de spanning wordt beperkt tot 5V - één diodeval ≈ 4,3V. De Rx-pin is echter helemaal niet beschermd, zelfs geen resistieve verdeler, dus ik raad aan om de diode te desolderen en volledig over te schakelen naar 3,3 V, zoals op de afbeelding te zien is.

Voor het testen en reflashen heb ik Arduino Uno gebruikt die is aangepast voor 3.3V-werking (hoe maak je er een van de normale Uno), en het is een van de weinige dingen die je nodig hebt. Bekijk de foto voor de volledige lijst.

Het maakt niet uit dat mijn batterij eruitziet als een gigantische condensator, het is gewoon een gewone 3.7V LiPo-oplaadbare batterij die uit een oude e-sigaret wordt gehaald - iets wat ik op dit moment in handen had. Aan iemand die de module al bij ali bestelt, raad ik aan om een batterij van het type 18650 zoals deze te kopen, plus een houder.

Stap 3: Maak verbinding met de SIM900A-module

Verbinding maken met SIM900A-module
Verbinding maken met SIM900A-module
Verbinding maken met SIM900A-module
Verbinding maken met SIM900A-module
Verbinding maken met SIM900A-module
Verbinding maken met SIM900A-module

Bepaal ook de baudrate en flash-grootte van uw module terwijl u toch bezig bent.

SIM900 ondersteunt autobauding-functie. Dit betekent dat uw module automatisch de baudrate bepaalt op basis van uw invoer. Hoe is uw module geconfigureerd - autobauding of een bepaalde snelheid? Ten eerste biedt zelfs de datasheet tegenstrijdige informatie daarover (zie de foto), en zelfs als dat niet zo was, heb je waarschijnlijk een gebruikte module ontvangen.

Voel je vrij om mijn oude vertrouwde Arduino-schets te gebruiken om zowel de baudrate als de flitsgrootte te bepalen. Het staat op mijn blog, in een post die deze weerspiegelt.

Sluit alle hardware aan zoals aangegeven op de schema's en upload de schets.

Nadat de baudrate is gedetecteerd, kunt u een willekeurig aantal AT-opdrachten invoeren.

Zoals je kunt zien op het screenshot dat bij deze stap is gevoegd, was mijn module geconfigureerd op 115200 baud, vanwege vervormde uitvoer op andere snelheden.

Merk op dat je niet kunt zien of autobauding is ingeschakeld of niet met alleen de automatische herkenningsfunctie van mijn schets - met autobauding ingeschakeld, zou de module moeten beginnen te werken met elke baudsnelheid waarmee je eerst gegevens verzendt (om precies te zijn, het luistert naar hoofdletter 'A' omdat elk AT-commando begint met een hoofdletter A. Werkt echter niet met een kleine 'a').

Zoals te zien is op de laatste schermafbeelding, kan deze schets na het activeren van autobauding elke snelheid "detecteren", omdat de module werkt met elke snelheid die u gebruikt voor de eerste verzending.

AT+IPR? commando toont u de werkelijke baudrate (0 staat voor autobauding). Ik raad aan om de baudrate in te stellen op een concrete waarde met AT+IPR=baudrate, bij voorkeur niet te laag - het opnieuw uploaden van de firmware duurt bijvoorbeeld ongeveer een uur bij 9600! Mijn favoriete instelling is 115200 baud - goed voor alle doeleinden.

Met dat alles geregeld, kunt u eindelijk de essentiële informatie over uw module controleren.

Stap 4: Controleer of uw module werkt waar u woont

Controleer of uw module werkt waar u woont
Controleer of uw module werkt waar u woont

Nadat je meer te weten bent gekomen over de baudrate, zijn hier 3 essentiële commando's die je moet invoeren om te weten of je nieuwe firmware nodig hebt of niet:

  • AT+CREG? Status van netwerkregistratie aanvragen. +CREG: 0, 0 als antwoord betekent dat je simkaart niet eens in het netwerk is geregistreerd - ga in dit geval naar opdracht nummer drie. Wanneer uw module iets anders uitspuugt dan 0, 0 (bijv. +CREG: 0, 5), hoeft u de firmware niet opnieuw te flashen - voer het volgende commando uit om te zien met welk celnetwerk u bent verbonden.
  • AT+COPS? Netwerknaam ophalen. U ziet +COPS: 0 voor niet-geregistreerde simkaart, of iets als +COPS: 0, 0, "TELE2" voor geregistreerde simkaart. Nogmaals, u hoeft geen nieuwe firmware te flashen als uw simkaart al in uw regio kan werken.
  • AT+CMGR Firmwareversie ophalen. Dat is de manier om de flitsgrootte van uw module te vertellen. SIM900 is er in twee varianten: 32Mb en 64Mb flashgeheugen. Firmware is ook op maat gemaakt voor elk model (bijv. SIM900, SIM900A, SIM900B).

Eigenaren van 64Mb-modules zullen iets vergelijkbaars zien:

Revisie: 1137B13SIM900A64_ST, terwijl de 32Mb-module meestal reageert met

Revisie: 1137B12SIM900A32_ST

Wat hierin gebruikelijk is, is de SIM900A-lijn die aangeeft dat deze fiirmwares alleen in bepaalde landen zullen werken, hoewel deze modellen qua hardware hetzelfde zijn. Door te reflashen zullen we de SIM900A misleiden om als een ander model te werken.

Na het reflashen wordt uw 64Mb-module SIM900M:

Revisie: 1137B02SIM900M64_ST_ENHANCE, en 32Mb module wordt SIM900B:

Revisie: 1137B09SIM900B32_ST

Welnu, nu we klaar zijn met de details van firmwareversies en baudrates, en op voorwaarde dat uw SIM900 weigerde uw SIM-kaart te registreren in het 2G-netwerk - is het tijd voor een upgrade!

Stap 5: Flash de module opnieuw

Flash de module opnieuw
Flash de module opnieuw
Flash de module opnieuw
Flash de module opnieuw
Flash de module opnieuw
Flash de module opnieuw

Ik heb geprobeerd talloze instructies van verschillende bronnen te volgen (de meeste impliceren dat de module POWER_KEY-pin heeft aangesloten op de ingebouwde knop, hoewel mijn module deze niet heeft), maar de enige succesvolle benadering om SIM900A te reflashen, ontdekte ik zelf met vallen en opstaan.

Ik hoop dat je stap 2 al hebt gevolgd en zowel de baudrate als de flash-grootte van je module kent.

Hoe de SIM900A-module te ontgrendelen om buiten Azië te werken:

  1. Sluit uw pc aan op de SIM900A met een USB-naar-serieel-converter - ik gebruik dezelfde Arduino Uno zonder chip omdat deze al 3,3 V is.
  2. Zorg ervoor dat de module reageert op het AT-commando (persoonlijk verwissel ik de hele tijd RX en TX).
  3. Download het archief met flashing software v1.9 en firmwarebestanden voor zowel 32 als 64Mb. Ik heb eerst de oudere versie (v. 1.01) geprobeerd, maar elke poging eindigde met de fout "Err 307 - Error during change baudrate" en daar viel niets aan te tweaken.
  4. Kies de firmware op basis van uw flash-grootte (u kunt de verkeerde firmware niet uploaden, maak u daar geen zorgen over) en baudrate (voor module met automatische baudrate-instelling kunt u elke waarde kiezen uit de vervolgkeuzelijst). Belangrijk: Vink alle opties aan: bestandsnaam niet controleren, Abnormaal herstellen en het apparaat opnieuw opstarten!
  5. Koppel de positieve draad los van de module. Druk op "Start download" en sluit het weer aan.
  6. Als 'Module nu resetten, even geduld aub' verschijnt, sluit u de draad weer aan op het Vcc-contact van de module. Dit kan een paar keer duren, omdat het programma soms niet wacht tot de module enig teken van leven geeft, en vrolijk bytes in het niets laat flitsen. Als dit gebeurt, stop dan met uploaden en herhaal vanaf de vorige stap.
  7. Wacht tot het proces is voltooid - het duurt ongeveer 2 minuten bij 115200 baud.
  8. Het is klaar! Daarna hoeft u alleen de stroom naar de module af te sluiten om hem opnieuw op te starten.

Uw module moet nu verbinding maken met het netwerk en zichzelf identificeren als een ander SIM900-model - u kunt het in elke terminal controleren!

Stap 6: Bekijk deel 2

Bekijk deel 2
Bekijk deel 2
Bekijk deel 2
Bekijk deel 2

Hiermee is deel één van mijn lopende project afgesloten. Er is ook deel 2, waar ik je laat zien hoe je je Hologram-simkaart kunt registreren en gebruiken en zelfs enkele sensormetingen op Thingspeak kunt publiceren.

Aanbevolen: