summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2010-08-15 10:44:40 +0800
committerHarald Welte <laforge@gnumonks.org>2010-08-15 10:44:40 +0800
commitab6aa10e6625bca5f15f9de775ff7dc51eb825a7 (patch)
treeb615241791b17d7091c5c71c61c6ce003933d871
parent6a639f6c804a807995761ff246301b1615c0bddb (diff)
add notes on re-charging the card
-rw-r--r--easycard.2/notes.txt23
1 files changed, 23 insertions, 0 deletions
diff --git a/easycard.2/notes.txt b/easycard.2/notes.txt
index fefc5f1..120b74a 100644
--- a/easycard.2/notes.txt
+++ b/easycard.2/notes.txt
@@ -6,6 +6,17 @@ Address 0x80 and 0x90
VALUE BLOCK containing the amount in NTD
0000090 0184 0000 fe7b ffff 0184 0000 ff00 ff00
+Address 0xa0
+ DATA block containing transaction log of last re-charge
+ 00000a0 c408 6708 304c 0064 0089 5b42 c50b 0031
+ 08 transaction id / counter
+ 4c6708 upper 24 bits of unix timestamp
+ 30 transaction type: add value
+ 0064 100 NTD added
+ 0089 137 NTD remaining on card
+ 5b MRT station code ZhongXiao DunHua
+ c50b most likely reader number
+
Address 0xe0 and 0x100
DATA block containing transaction entering MRT Liuzhangli
00000e0 de01 63d8 004c 0000 0190 0d00 6ad6 0002
@@ -81,6 +92,18 @@ this means last wrap of counter was 71 days ago, about june 2nd.
UPDATE: the 0x4c in front actually makes it the upper 24 bits of a unix
timestamp. However, it doesn't count in UTC but in local time.
+== procedures ==
+=== adding value (commit 63bfce7655ee367b079c914ecfbfaa73d5ce9169) ===
+
+* update the two value blocks
+* add a transaction log record of type 0x30 to address 0xa0(!)
+ * station name (0x5b == 91) same like at MRT enter/exit
+ * 'amount' and 'remaining balance' as expected
+ * timestamp as expected
+ * transaction_id++
+
+
+
== Futher notes ==
* purchase at Starbucks prints UID of card in decimal (3224478099 ==
0xc031a193) on receipt
personal git repositories of Harald Welte. Your mileage may vary