You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| 0x12 | UART Control | R/W | Settings for the UART | 1 |
137
+
| 0x13 | UART Status | R/W1C | The current state of the UART | 1 |
138
+
| 0x14 | UART Baud Rate | R/W | The UART baud rate in bps, as a `u32le`| 4 |
139
+
| 0x20 | PS/2 Keyboard Receive/Transmit Buffer | FIFO | Data received/to be sent over the PS/2 keyboard port | max 16 |
140
+
| 0x21 | PS/2 Keyboard Control | R/W | Settings for the PS/2 Keyboard port | 1 |
141
+
| 0x22 | PS/2 Keyboard Status | R/W1C | Current state of the PS/2 Keyboard port | 1 |
142
+
| 0x30 | PS/2 Mouse Receive/Transmit Buffer | FIFO | Data received/to be sent over the PS/2 Mouse port | max 16 |
143
+
| 0x31 | PS/2 Mouse Control | R/W | Settings for the PS/2 Mouse port | 1 |
144
+
| 0x32 | PS/2 Mouse Status | R/W1C | Current state of the PS/2 Mouse port | 1 |
145
+
| 0x50 | I²C Receive/Transmit Buffer | FIFO | Data received/to be sent over the I²C Bus | max 16 |
146
+
| 0x51 | I²C FIFO Control | R/W | Settings for the I²C FIFO | 1 |
147
+
| 0x52 | I²C Control | R/W | Settings for the I²C Bus | 1 |
148
+
| 0x53 | I²C Status | R/W1C | Current state of the I²C Bus | 1 |
149
+
| 0x54 | I²C Baud Rate | R/W | The I²C clock rate in Hz, as a `u32le`| 4 |
145
150
146
151
The register types are:
147
152
148
153
*`RO` - read only register, where writes will return an error
149
154
*`R/W` - read/write register
150
-
*`R/W1C` - when writing a 1 bit clears that bit position and a 0 bit is ignored, reads are as normal.
155
+
*`R/W1C` - reads as usual, but when writing a 1 bit clears that bit position and a 0 bit is ignored
151
156
*`FIFO` - a first-in, first-out buffer
152
157
158
+
### Address 0x00 - Firmware Version
159
+
160
+
This read-only register returns the firmware version of the NBMC, as a UTF-8 string. The register length is always 64 bytes, and the string is null-padded. We also guarantee that the firmware version will always be less than or equal to 63 bytes, so you can also treat this string as null-terminated.
161
+
162
+
An official release will have a version string of the form `tags/v1.2.3`. An unofficial release might be `heads/develop-dirty`. It is not recommended that you rely on these formats or attempt to parse the version string. It is however useful if you can quote this string when reporting issues with the firmware.
0 commit comments