Paul Sokolovsky | 272fad6 | 2016-04-14 18:54:11 +0300 | [diff] [blame] | 1 | import esp |
| 2 | import uctypes |
Paul Sokolovsky | 7327d5f | 2016-05-16 23:40:29 +0300 | [diff] [blame] | 3 | import lwip |
Paul Sokolovsky | 272fad6 | 2016-04-14 18:54:11 +0300 | [diff] [blame] | 4 | |
| 5 | |
| 6 | def main(): |
| 7 | |
| 8 | ROM = uctypes.bytearray_at(0x40200000, 16) |
| 9 | fid = esp.flash_id() |
| 10 | |
Paul Sokolovsky | 7327d5f | 2016-05-16 23:40:29 +0300 | [diff] [blame] | 11 | print("FlashROM:") |
Paul Sokolovsky | 272fad6 | 2016-04-14 18:54:11 +0300 | [diff] [blame] | 12 | print("Flash ID: %x (Vendor: %x Device: %x)" % (fid, fid & 0xff, fid & 0xff00 | fid >> 16)) |
| 13 | |
| 14 | print("Flash bootloader data:") |
| 15 | SZ_MAP = {0: "512KB", 1: "256KB", 2: "1MB", 3: "2MB", 4: "4MB"} |
| 16 | FREQ_MAP = {0: "40MHZ", 1: "26MHZ", 2: "20MHz", 0xf: "80MHz"} |
| 17 | print("Byte @2: %02x" % ROM[2]) |
| 18 | print("Byte @3: %02x (Flash size: %s Flash freq: %s)" % (ROM[3], SZ_MAP.get(ROM[3] >> 4, "?"), FREQ_MAP.get(ROM[3] & 0xf))) |
| 19 | |
Paul Sokolovsky | 7327d5f | 2016-05-16 23:40:29 +0300 | [diff] [blame] | 20 | print("\nNetworking:") |
| 21 | print("Free WiFi driver buffers of type:") |
| 22 | for i in range(5): |
| 23 | print("%d: %d" % (i, esp.esf_free_bufs(i))) |
| 24 | print("lwIP PCBs:") |
| 25 | lwip.print_pcbs() |
| 26 | |
Paul Sokolovsky | 272fad6 | 2016-04-14 18:54:11 +0300 | [diff] [blame] | 27 | |
| 28 | main() |