summaryrefslogtreecommitdiffstats
path: root/reverse_engineering/pinmap
diff options
context:
space:
mode:
Diffstat (limited to 'reverse_engineering/pinmap')
-rw-r--r--reverse_engineering/pinmap159
1 files changed, 159 insertions, 0 deletions
diff --git a/reverse_engineering/pinmap b/reverse_engineering/pinmap
new file mode 100644
index 0000000..b7692e9
--- /dev/null
+++ b/reverse_engineering/pinmap
@@ -0,0 +1,159 @@
+GPIO:
+
+DIR: 43880000
+DIR: 42080000
+
+OUT: 42083300
+IN: 42483398
+
+P0.00 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.01 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.02 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.03 => 00030000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, SENSE LOW
+P0.04 => 00030000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, SENSE LOW
+P0.05 => 00000000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, NO SENSE
+P0.06 => 00000000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, NO SENSE
+P0.07 => 0003000c, INPUT, CONNECT INPUT, PULL UP, STANDARD DRIVE, NO SENSE
+P0.08 => 0000060c, INPUT, CONNECT INPUT, PULL UP, OPEN DRAIN, NO SENSE
+P0.09 => 0000060c, INPUT, CONNECT INPUT, PULL UP, OPEN DRAIN, NO SENSE
+P0.10 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.11 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.12 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.13 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.14 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.15 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.16 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.17 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.18 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.19 => 00000003, OUTPUT, NO INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.20 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.21 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.22 => 0000000c, INPUT, CONNECT INPUT, PULL UP, STANDARD DRIVE, NO SENSE
+P0.23 => 0000060c, INPUT, CONNECT INPUT, PULL UP, OPEN DRAIN, NO SENSE
+P0.24 => 0000060c, INPUT, CONNECT INPUT, PULL UP, OPEN DRAIN, NO SENSE
+P0.25 => 00000003, OUTPUT, NO INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.26 => 00000000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, NO SENSE
+P0.27 => 00000000, INPUT, CONNECT INPUT, NO PULL, STANDARD DRIVE, NO SENSE
+P0.28 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.29 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.30 => 00000003, OUTPUT, NO INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+P0.31 => 00000004, INPUT, CONNECT INPUT, PULL DOWN, STANDARD DRIVE, NO SENSE
+
+P0.31 => IN
+P0.30 => OUT screen reset
+P0.29 => IN vibrator
+P0.28 => IN
+
+P0.27 => IN
+P0.26 => IN
+P0.25 => OUT screen power on/off
+P0.24 => BIDI SCL for OLED screen
+
+P0.23 => BIDI SDA for OLED screen
+P0.22 => IN white LED
+P0.21 => IN
+P0.20 => IN G-chip
+
+P0.19 => OUT G-chip
+P0.18 => IN G-chip
+P0.17 => IN G-chip
+P0.16 => ?
+
+P0.15 => LIS331 interrupt pin
+P0.14 =>
+P0.13 => BIDI SCL for LIS331
+P0.12 => BIDI SDA for LIS331
+
+P0.11 => 0
+P0.10 => 0
+P0.9 => BIDI SDA for AT24C256
+P0.8 => BIDI SCL for AT24C256
+
+
+P0.7 => 1 interrtupt from LIS331 ?
+P0.6 => 0
+P0.5 => 0
+P0.4 => button
+
+P0.3 => button
+P0.2 => 0
+P0.1 => 0
+P0.0 => 0
+
+
+SPI controllers both have psel of -1 and disabled
+TWI controllers both have psel of -1 and disabled
+UART disabled psel of -1
+
+RTC0: INTEN COMPARE1
+ EVENTEN COMPARE1 & COMPARE2
+ COUNTER running
+ CC[0] 00c6706d
+ CC[1] 00c6703d
+ CC[2] 00000000
+
+RTC1: INTEN COMPARE1
+ EVENTEN COMPARE1
+ COUNTER running
+ CC[0] 00c68000
+
+RTC2: all zeros
+
+
+
+
+ COMPARE2 EVENTEN
+
+
+
+
+GPIOTE all zeros
+
+?bitbanged?
+
+SET DIR register for 23,24
+(gdb) set {unsigned int}0x50000518=0x1800000
+(gdb) p/x {unsigned int}0x50000518
+$105 = 0x43880000
+
+CLEAR out for 23,24
+
+(gdb) set {unsigned int}0x5000050c=0x1800000
+(gdb) p/x {unsigned int}0x50000504
+$106 = 0x42083300
+
+READ in
+
+(gdb) p/x {unsigned int}0x50000510
+$107 = 0x42483398
+
+SET out for 23
+(gdb) set {unsigned int}0x50000508=0x0800000
+(gdb) p/x {unsigned int}0x50000504
+$108 = 0x42883300
+(gdb) p/x {unsigned int}0x50000510
+$109 = 0x42c83398
+
+nothing else changes
+
+
+
+0x42483398
+
+
+
+G chip
+
+8 7 6 5
+
+.
+1 2 3 4
+
+1 -> GND
+2 -> ?
+3 -> P0.18
+4 -> P0.17
+5 -> pulled up
+6 -> VCC
+7 -> P0.19
+8 -> P0.20