56 lines
		
	
	
		
			919 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			919 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# set pin code from evnironment "$PINCODE"
 | 
						|
opengt
 | 
						|
 set com 115200n81
 | 
						|
 set senddelay 0.05
 | 
						|
 waitquiet 3 0.5
 | 
						|
 flash 0.1
 | 
						|
 | 
						|
 let c=0
 | 
						|
:start
 | 
						|
 send "AT+CPIN?^m"
 | 
						|
 waitfor 15 "SIM PUK","SIM PIN","READY","ERROR","ERR"
 | 
						|
 if % = -1 goto timeout
 | 
						|
 if % = 0 goto ready
 | 
						|
 if % = 1 goto setpin
 | 
						|
 if % = 2 goto ready
 | 
						|
 if % = 3 goto checkrepeat
 | 
						|
 if % = 4 goto checkrepeat
 | 
						|
 | 
						|
:checkrepeat
 | 
						|
 inc c
 | 
						|
 if c>3 goto pinerror
 | 
						|
 waitquiet 12 0.5
 | 
						|
 goto start
 | 
						|
 | 
						|
:timeout
 | 
						|
 print "timeout checking for PIN."
 | 
						|
 exit 1
 | 
						|
 | 
						|
:ready
 | 
						|
 print "SIM ready\n"
 | 
						|
 goto continue
 | 
						|
 exit 0
 | 
						|
 | 
						|
:setpin
 | 
						|
 # check if output was "SIM PIN2", that's ok.
 | 
						|
 waitfor 1 "2"
 | 
						|
 if % = 0 goto ready
 | 
						|
 | 
						|
 print "Trying to set PIN\n"
 | 
						|
 send "AT+CPIN=\""
 | 
						|
 send $env("PINCODE")
 | 
						|
 send "\"^m"
 | 
						|
 | 
						|
 waitfor 20 "OK","ERR"
 | 
						|
 if % = -1 goto pinerror
 | 
						|
 if % = 0 goto continue
 | 
						|
 if % = 1 goto pinerror
 | 
						|
 | 
						|
:pinerror
 | 
						|
 print "Error setting PIN, check card manually\n"
 | 
						|
 exit 1
 | 
						|
 | 
						|
:continue
 | 
						|
 print "PIN set successfully\n"
 | 
						|
 exit 0
 |