apuder / trs-io Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
I just noticed there are 3 new resistors on the TRS-IO board, R1, R2 and R3. What are the specs for these?
Hi All,
Here is my build script/instructions for debian 11
We have recently built your board, flashed the ESP32 and the Tang Nano. Although 4.4.6 appeared to flash the the ESP32 Module over USB successfully, when the ESP32 is in the board and connected to the Model III, we do not get a white LED, nor do we get a SSID entitled "TRS-IO", so clearly the flashing didn't work or what was flashed to the ESP32 was not properly compiled.
You make a suggestion in an earlier issue that items in the src folder need to be built with MAKE. What precisely needs to be compiled here?
Where are the instructions that walk users through compiling this, and pointing us to the right resources to compile this?
Client works on LDos 5.3, but not 6.3.1. It just freezes on the newer dos.
Hi,
I couldn't figure out how to contact you directly - so I'm opening an issue to ask these questions.
I watched your presentation on Trash Talk Live #7 and it appears that all of the address lines are available to the ESP32, so I was hoping to lodge a feature request issue:
If the TRS-IO could emulate an RS-232 port/Modem (Ports E8-EB) and a basic AT command set, then this would be a true one stop shopping experience for programs that use the serial port.
There are a wealth of retro-BBSs reachable via telnet, and there is a market for items such as the WiFi232 type wireless modems. The TRS-IO should be able to easily perform the same function as those devices.
This would allow the native TRS-80 Comm programs to work with the TRS-IO - and any multiplayer games such as the famous Adventure International game: COMMBAT. I am sure there are other games that utilizes the serial port, this is just my favorite :-)
Serial Port / Modem Emulation would also allow downloading of files via the comm programs from remote systems.
As far the TRS-80 and the comm programs are concerned - they would be talking to a real UART connected to a real Modem.
This is less of an issue and more of a feature request. Unlike the FreHD, the TRS-IO doesn't auto booting from the autoboot disks like a FreHD does, it only appears to work with an autoboot eprom. Would be nice to allow it to work with autoboot disks as well, for those who don't want to (or can't easily) update replace the rom in their trs-80.
Sorry, yet another problem loading:
LD esp/build/trs-io.elf
/home/wiggins/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld: /home/wiggins/TRS-IO/src/esp/build/trs-io.elf section .dram0.bss' will not fit in region
dram0_0_seg'
/home/wiggins/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld: DRAM segment data does not fit.
/home/wiggins/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/5.2.0/../../../../xtensa-esp32-elf/bin/ld: region `dram0_0_seg' overflowed by 22872 bytes
ESP32 Version 4.2.2
error:
esptool.py v3.1-dev
Merged 1 ELF section
Generated /home/aihk/esp/esp-idf/TRS-IO/src/esp/build/bootloader/bootloader.bin
[618/1040] Generating x509_crt_bundle
/home/aihk/.espressif/python_env/idf4.2_py3.9_env/lib/python3.9/site-packages/cryptography/x509/base.py:514: CryptographyDeprecationWarning: Parsed a negative serial number, which is disallowed by RFC 5280.
return rust_x509.load_pem_x509_certificate(data)
[935/1040] Building C object esp-idf/libsmb2/CMakeFiles/__idf_libsmb2.dir/lib/dcerpc.c.obj
../components/libsmb2/lib/dcerpc.c:85:1: warning: missing initializer for field 'vers_minor' of 'p_syntax_id_t' {aka 'struct p_syntax_id'} [-Wmissing-field-initializers]
};
^
In file included from ../components/libsmb2/lib/dcerpc.c:61:
../components/libsmb2/include/smb2/libsmb2-dcerpc.h:58:18: note: 'vers_minor' declared here
uint16_t vers_minor;
^~~~~~~~~~
../components/libsmb2/lib/dcerpc.c:89:1: warning: missing initializer for field 'vers_minor' of 'p_syntax_id_t' {aka 'struct p_syntax_id'} [-Wmissing-field-initializers]
};
^
In file included from ../components/libsmb2/lib/dcerpc.c:61:
../components/libsmb2/include/smb2/libsmb2-dcerpc.h:58:18: note: 'vers_minor' declared here
uint16_t vers_minor;
^~~~~~~~~~
[942/1040] Building C object esp-idf/libsmb2/CMakeFiles/__idf_libsmb2.dir/lib/init.c.obj
../components/libsmb2/lib/init.c: In function 'smb2_init_context':
../components/libsmb2/lib/init.c:275:20: warning: unused variable 'ctr' [-Wunused-variable]
static int ctr;
^~~
../components/libsmb2/lib/init.c: In function 'smb2_set_password_from_file':
../components/libsmb2/lib/init.c:479:54: warning: this statement may fall through [-Wimplicit-fallthrough=]
buf[strlen(buf) - 1] = 0;
~~~~~~~~~~~~~~~~~~~~~^~~
../components/libsmb2/lib/init.c:480:25: note: here
default:
^~~~~~~
At top level:
../components/libsmb2/lib/init.c:275:20: warning: 'ctr' defined but not used [-Wunused-variable]
static int ctr;
^~~
[998/1040] Building CXX object esp-idf/main/CMakeFiles/__idf_main.dir/spi-xray.cpp.obj
In file included from ../main/spi-xray.cpp:8:
../../../../components/esp_event/include/esp_event_loop.h:2:2: warning: #warning "esp_event_loop.h is deprecated, please include esp_event.h instead" [-Wcpp]
#warning "esp_event_loop.h is deprecated, please include esp_event.h instead"
^~~~~~~
../main/spi-xray.cpp: In function 'void init_spi()':
../main/spi-xray.cpp:428:3: warning: missing initializer for member 'spi_bus_config_t::flags' [-Wmissing-field-initializers]
};
^
../main/spi-xray.cpp:428:3: warning: missing initializer for member 'spi_bus_config_t::intr_flags' [-Wmissing-field-initializers]
../main/spi-xray.cpp: At global scope:
../main/spi-xray.cpp:345:16: warning: 'uint8_t readDigiPot(uint8_t)' defined but not used [-Wunused-function]
static uint8_t readDigiPot(uint8_t pot)
^~~~~~~~~~~
[1018/1040] Building CXX object esp-idf/trs-io/CMakeFiles/__idf_trs-io.dir/web_debugger.cpp.obj
../components/trs-io/web_debugger.cpp:436:13: warning: 'void handleDynamicUpdate()' defined but not used [-Wunused-function]
static void handleDynamicUpdate() {
^~~~~~~~~~~~~~~~~~~
../components/trs-io/web_debugger.cpp:36:25: warning: 'next_async_action' defined but not used [-Wunused-variable]
static TRX_CONTROL_TYPE next_async_action = TRX_CONTROL_TYPE_NOOP;
^~~~~~~~~~~~~~~~~
../components/trs-io/web_debugger.cpp:22:12: warning: 'emulation_is_halting' defined but not used [-Wunused-variable]
static int emulation_is_halting = false;
^~~~~~~~~~~~~~~~~~~~
[1019/1040] Building CXX object esp-idf/trs-io/CMakeFiles/__idf_trs-io.dir/wifi.cpp.obj
../components/trs-io/wifi.cpp:86:19: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
ESP_LOGI(TAG, "Station "MACSTR" join, AID=%d", MAC2STR(event->mac), event->aid);
^
../components/trs-io/wifi.cpp:90:19: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]
ESP_LOGI(TAG, "Station "MACSTR" leave, AID=%d", MAC2STR(event->mac), event->aid);
^
../components/trs-io/wifi.cpp: In function 'bool mongoose_handle_config(mg_http_message*, char**, const char**)':
../components/trs-io/wifi.cpp:178:15: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings] *response = "";
^~
../components/trs-io/wifi.cpp: In function 'void wifi_init_ap()':
../components/trs-io/wifi.cpp:398:3: warning: missing initializer for member 'wifi_ap_config_t::password' [-Wmissing-field-initializers]
};
^
[1035/1040] Building CXX object esp-idf/retrostore/CMakeFiles/__idf_retrostore.dir/backend.cpp.obj
../components/retrostore/backend.cpp: In function 'char* get_app_title(int)':
../components/retrostore/backend.cpp:276:12: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
return "";
^~
../components/retrostore/backend.cpp: In function 'char* get_app_details(int)':
../components/retrostore/backend.cpp:285:12: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
return "";
^~
../components/retrostore/backend.cpp:288:12: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
return "";
^~
[1039/1040] Linking CXX executable trs-io.elf
FAILED: trs-io.elf
/home/aihk/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: esp-idf/wpa_supplicant/libwpa_supplicant.a(md5-internal.c.obj): in function MD5Init':/home/aihk/esp/esp-idf/components/wpa_supplicant/src/crypto/md5-internal.c:93: multiple definition of
MD5Init'; esp-idf/libsmb2/lib..a(md5.c.obj):/home/aihk/esp/esp-idf/TRS-IO/src/esp/build/../components/libsmb2/lib/md5.c:58: first defined here
/home/aihk/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: esp-idf/wpa_supplicant/libwpa_supplicant.a(md5-internal.c.obj): in function MD5Update': /home/aihk/esp/esp-idf/components/wpa_supplicant/src/crypto/md5-internal.c:109: multiple definition of
MD5Update'; esp-idf/libsmb2/lib..a(md5.c.obj):/home/aihk/esp/esp-idf/TRS-IO/src/esp/build/../components/libsmb2/lib/md5.c:74: first defined here
/home/aihk/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: esp-idf/wpa_supplicant/libwpa_supplicant.a(md5-internal.c.obj): in function MD5Final': /home/aihk/esp/esp-idf/components/wpa_supplicant/src/crypto/md5-internal.c:158: multiple definition of
MD5Final'; esp-idf/libsmb2/lib..a(md5.c.obj):/home/aihk/esp/esp-idf/TRS-IO/src/esp/build/../components/libsmb2/lib/md5.c:114: first defined here
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
ninja failed with exit code 1
I tried for two days and changed different versions, but I couldn't build successfully.
I am having nothing but a horrible time getting the esp_ift tools to actually compile this project correctly. Mostly they are due to esp_idf errors itself.
With a project like this is there a binary release or a stable release pre-compiled that I can simply write to the PLD and ESP32?
Looking at the FreHD, it appears to only emulate hard disk images, but not floppy drives.
There are a wealth of floppy disk images (protected or non-standard booting) in the DMK format that are not easily transferred to a hard disk image.
Since it appears that all of the required port and address lines are available to the TRS-IO, this feature request is to add floppy drive emulation.
Surely the ESP32 has enough computing power to handle reading and writing to emulated floppy disk images.
This would be similar in functionality to the popular Gotek type floppy disk emulators - but built nicely into one package.
Mounting the floppy disk images could be handled in the same fashion as the hard disk images for the FreHD - out of band via either the on screen configuration - or even via the web interface.
What are the specs for the capacitors C1-C4 on the new PCB? It appears all the other components are identical to the RS card, correct?
Building the esp code results in missing symbols in trs-io.elf:
CXX build/retrostore/retrostore.o
AR build/retrostore/libretrostore.a
LD build/trs-io.elf
build/retrostore/libretrostore.a(retrostore.o):(.literal._ZN16RetroStoreModule7sendCMDEv[RetroStoreModule::sendCMD()]+0x0): undefined reference to rsclient_cmd' build/retrostore/libretrostore.a(retrostore.o):(.literal._ZN16RetroStoreModule7sendCMDEv[RetroStoreModule::sendCMD()]+0x8): undefined reference to
rsclient_cmd_len'
Source of retrostore.cpp refers to those symbols being defined in rsclient.c, which is not in the repo.
This is driving me nuts because the ESP binaries in the repo look like they're actually retrostore card binaries, not those shown in the README.
Thanks!
Hello, I've forked this project and noticed the sd card slot is using a part that doesn't seem to be available easily. Is there a cross # for this before I modify the footprint and board? This is the M1 v2 non-xray. Thanks! Dave.
To finish out a complete package, if my other feature requests were implemented, the only feature lacking from the complete expansion solution is a printer port emulation.
Arguably, the majority of printing performed back in the day was simple text printouts from within programs and LLISTings of the current BASIC program.
This would just require a buffer to capture the text sent to the emulated printer port - which could then be retrieved and downloaded via the web interface as a simple text file.
That would suffice for probably 90% of the use cases, to handle the other 10% (just random percentages I'm making up) going above and beyond would be to emulate something like the Epson MX80's graphics codes and other special characters - and instead of creating a simple text dump - emulate how the printer would output the data by creating a downloadable PDF file from the web interface.
I personally, would be happy with a plain text capture / dump mechanism - but if you are feeling extra motivated... :-)
Hi All,
My issue is the compiler is failing to find "endian.h"
OS: Debain 11
IDF: v4.1
Error dump:
dump.txt
The SD card status on the TRS-IO Configuration page shows up red, when I hover the mouse over it says "Failed to initialize SD card".
I've tried a couple of SD cards, both Class 4 formatted as FAT32.
Checked connections of SD card holder to PCB.
WiFi/SMB share works fine.
ESP idf.py will not compile with ESP-IDF 5.1.2, and I have noticed that previous issues you closed out, for earlier versions of the ESP32 code you suggested you need to make and compile the ESP binaries with an older version of the IDF, so for the latest version you have posted here, which version do you need? 3.2.2 again?
I am going to run this in a Debian VM and see if it actually works there at all, per:
#31
EDIT: Will now bring up menuconfig in 4.2 ESP-IDF once I downloaded all the missing git dependencies like libsmb, TRS-LIB, etc., because of how the code expects mdns to work... But Now it won't build because of some problem with how it is creating the partition table:
FAILED: esp-idf/trs-io/CMakeFiles/spiffs_elFinder_bin
cmd.exe /C "cd /D C:\Users\Nephr\Desktop\TRS-IO-master\src\esp\build\esp-idf\trs-io && C:\Espressif4.2\tools\cmake\3.16.4\bin\cmake.exe -E echo "Failed to create SPIFFS image for partition 'elFinder'. " "Check project configuration if using the correct partition table file." && C:\Espressif4.2\tools\cmake\3.16.4\bin\cmake.exe -E remove C:/Users/Nephr/Desktop/TRS-IO-master/src/esp/build/esp-idf/trs-io/4auM1.cmake && C:\Espressif4.2\tools\cmake\3.16.4\bin\cmake.exe -E env "FAIL_MESSAGE=Failing the build (see errors on lines above)" C:/Espressif4.2/tools/cmake/3.16.4/bin/cmake.exe -P C:/Espressif4.2/frameworks/esp-idf-v4.2.5/tools/cmake/scripts/fail.cmake"
Failed to create SPIFFS image for partition 'elFinder'. Check project configuration if using the correct partition table file.
CMake Error at C:/Espressif4.2/frameworks/esp-idf-v4.2.5/tools/cmake/scripts/fail.cmake:3 (message):
Failing the build (see errors on lines above)
On the model I version, is_button_long_press seems to be continuously triggered. This results in the ESP32 erasing the stored credentials and resetting continuously. If I comment out that piece of code (in /src/esp/main/io.cpp), the TRS-IO works as it should.
If you sent your samba share as 'SMB://192.168.1.200/trsio' everything boots properly and you can see all the frehd disks. However, if you have your samba share in a sub level folder (such as smb://192.168.1.200/tandy/software/trsio', it will still boot the frehd.rom correctly, however none of the disks will show up.
What does each version do differently?
There are nine versions of the Model III boards, which I am looking to build, as well as many variants of the Model 1 board, Can you please explain the differences?
What source codes work for which version of board?
Which board would you recommend, the 2.2b? Or a different board?
Does the source code work for the most recent board (2.2b)?
I think the subject says it all. I just don't want to build another one from scratch. Thanks for any input from anyone. Dave.
I want to build one of these from scratch. Can you please provide details on programming; Tang and ESP32.
If there's already instructions then they are not logically named (ie 'Tang source') and we can't find them. Can you please give the instructions a clear easy to identify name such as 'ESP32 source code'?
Hello, just wondering what SDK (expressif) version is currently being used and the same for eclipse for this project. I couldn't find any reference (I may have missed it).
I also just built my board using the m1 non-xray with sd card. Is that going to be still functional with the current master branch? I do see the pictures at root of repo have changed.
If I get this right, I can help document the process to regenerate/build.
Thanks! Dave.
I got esp-idf v3.2.2 installed and can load the hello world example successfully.
I ran make in the src folder and was asked a dozen questions I know nothing about. I do know if you select release instead of debug you get compile errors. I stayed with debug and it compiled. I then went to src/esp and did a make menuconfig, set the TTY and then make flash monitor and I get a esp32 program crashing.
I (5318) cpu_start: Starting app cpu, entry point is 0x40081010
0x40081010: call_start_cpu1 at /home/uminded/esp/esp-idf/components/esp32/cpu_start.c:246
I (5304) cpu_start: App cpu up.
D (5321) memory_layout: Checking 7 reserved memory ranges:
D (5327) memory_layout: Reserved memory range 0x3ffae000 - 0x3ffae6e0
D (5333) memory_layout: Reserved memory range 0x3ffb0000 - 0x3ffd8450
D (5340) memory_layout: Reserved memory range 0x3ffe0000 - 0x3ffe0440
D (5346) memory_layout: Reserved memory range 0x3ffe3f20 - 0x3ffe4350
D (5353) memory_layout: Reserved memory range 0x40070000 - 0x40078000
D (5359) memory_layout: Reserved memory range 0x40078000 - 0x40080000
0x40080000: _WindowOverflow4 at /home/uminded/esp/esp-idf/components/freertos/xtensa_vectors.S:1779
D (5366) memory_layout: Reserved memory range 0x40080000 - 0x40090094
0x40080000: _WindowOverflow4 at /home/uminded/esp/esp-idf/components/freertos/xtensa_vectors.S:1779
D (5372) memory_layout: Building list of available memory regions:
D (5379) memory_layout: Available memory region 0x3ffae6e0 - 0x3ffb0000
D (5385) memory_layout: Available memory region 0x3ffd8450 - 0x3ffda000
D (5392) memory_layout: Available memory region 0x3ffda000 - 0x3ffdc000
D (5399) memory_layout: Available memory region 0x3ffdc000 - 0x3ffde000
D (5405) memory_layout: Available memory region 0x3ffde000 - 0x3ffe0000
D (5412) memory_layout: Available memory region 0x3ffe0440 - 0x3ffe3f20
D (5419) memory_layout: Available memory region 0x3ffe4350 - 0x3ffe8000
D (5425) memory_layout: Available memory region 0x3ffe8000 - 0x3fff0000
D (5432) memory_layout: Available memory region 0x3fff0000 - 0x3fff8000
D (5439) memory_layout: Available memory region 0x3fff8000 - 0x3fffc000
D (5445) memory_layout: Available memory region 0x3fffc000 - 0x40000000
D (5452) memory_layout: Available memory region 0x40090094 - 0x40092000
D (5459) memory_layout: Available memory region 0x40092000 - 0x40094000
D (5465) memory_layout: Available memory region 0x40094000 - 0x40096000
D (5472) memory_layout: Available memory region 0x40096000 - 0x40098000
D (5479) memory_layout: Available memory region 0x40098000 - 0x4009a000
D (5485) memory_layout: Available memory region 0x4009a000 - 0x4009c000
D (5492) memory_layout: Available memory region 0x4009c000 - 0x4009e000
D (5499) memory_layout: Available memory region 0x4009e000 - 0x400a0000
I (5506) heap_init: Initializing. RAM available for dynamic allocation:
D (5513) heap_init: New heap initialised at 0x3ffae6e0
I (5518) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
D (5524) heap_init: New heap initialised at 0x3ffd8450
I (5529) heap_init: At 3FFD8450 len 00007BB0 (30 KiB): DRAM
I (5536) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (5542) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
D (5549) heap_init: New heap initialised at 0x40090094
I (5554) heap_init: At 40090094 len 0000FF6C (63 KiB): IRAM
I (5560) cpu_start: Pro cpu start user code
D (5572) clk: RTC_SLOW_CLK calibration value: 3409152
D (213) intr_alloc: Connected src 46 to int 2 (cpu 0)
D (214) intr_alloc: Connected src 57 to int 3 (cpu 0)
D (215) intr_alloc: Connected src 24 to int 9 (cpu 0)
I (219) cpu_start: Starting scheduler on PRO CPU.
D (0) intr_alloc: Connected src 25 to int 2 (cpu 1)
I (4) cpu_start: Starting scheduler on APP CPU.
D (243) heap_init: New heap initialised at 0x3ffe0440
D (249) heap_init: New heap initialised at 0x3ffe4350
D (254) intr_alloc: Connected src 16 to int 12 (cpu 0)
I (259) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 1| Intr:0
I (268) gpio: GPIO[5]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 1| Intr:0
I (277) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 1| Intr:0
I (287) gpio: GPIO[22]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:3
D (296) intr_alloc: Connected src 22 to int 13 (cpu 0)
D (302) nvs: nvs_flash_init_custom partition=nvs start=9 count=4
D (339) nvs: nvs_open_from_partition retrostore 1
D (341) nvs: nvs_open_from_partition misc 1
D (341) nvs: nvs_get_str_or_blob log
I (342) wifi: wifi driver task: 3ffdfcc0, prio:23, stack:3584, core=0
I (347) wifi: wifi firmware version: 693c7b6
I (351) wifi: config NVS flash: enabled
I (354) wifi: config nano formating: disabled
I (359) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
I (368) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
D (378) nvs: nvs_open_from_partition nvs.net80211 1
D (383) nvs: nvs_get opmode 1
D (386) nvs: nvs_get_str_or_blob sta.ssid
D (390) nvs: nvs_get_str_or_blob sta.mac
D (394) nvs: nvs_get sta.authmode 1
D (397) nvs: nvs_get_str_or_blob sta.pswd
D (402) nvs: nvs_get_str_or_blob sta.pmk
D (406) nvs: nvs_get sta.chan 1
D (409) nvs: nvs_get auto.conn 1
D (412) nvs: nvs_get bssid.set 1
D (415) nvs: nvs_get_str_or_blob sta.bssid
D (420) nvs: nvs_get sta.lis_intval 2
D (423) nvs: nvs_get sta.phym 1
D (426) nvs: nvs_get sta.phybw 1
D (430) nvs: nvs_get_str_or_blob sta.apsw
D (434) nvs: nvs_get_str_or_blob sta.apinfo
D (440) nvs: nvs_get sta.scan_method 1
D (442) nvs: nvs_get sta.sort_method 1
D (446) nvs: nvs_get sta.minrssi 1
D (449) nvs: nvs_get sta.minauth 1
D (453) nvs: nvs_get_str_or_blob ap.ssid
D (457) nvs: nvs_get_str_or_blob ap.mac
D (461) nvs: nvs_get_str_or_blob ap.passwd
D (465) nvs: nvs_get_str_or_blob ap.pmk
D (469) nvs: nvs_get ap.chan 1
D (472) nvs: nvs_get ap.authmode 1
D (475) nvs: nvs_get ap.hidden 1
D (478) nvs: nvs_get ap.max.conn 1
D (482) nvs: nvs_get bcn.interval 2
D (486) nvs: nvs_get ap.phym 1
D (489) nvs: nvs_get ap.phybw 1
D (492) nvs: nvs_get ap.sndchan 1
D (495) nvs: nvs_get lorate 1
D (499) nvs: nvs_set_blob sta.mac 6
D (504) nvs: nvs_set_blob ap.mac 6
I (507) wifi: Init dynamic tx buffer num: 32
I (509) wifi: Init data frame dynamic rx buffer num: 32
I (514) wifi: Init management frame dynamic rx buffer num: 32
I (520) wifi: Init management short buffer num: 32
I (524) wifi: Init static rx buffer size: 1600
I (528) wifi: Init static rx buffer num: 10
I (532) wifi: Init dynamic rx buffer num: 32
D (536) nvs: nvs_get_str_or_blob ssid
D (540) nvs: nvs_get ssid 4
D (543) nvs: nvs_set_blob ap.ssid 36
D (548) nvs: nvs_set_blob ap.passwd 65
D (552) nvs: nvs_set ap.authmode 1 0
D (554) nvs: nvs_set ap.chan 1 1
D (558) nvs: nvs_set ap.hidden 1 0
D (561) nvs: nvs_set ap.max.conn 1 1
D (565) nvs: nvs_set bcn.interval 2 16381
D (569) RTC_MODULE: Wi-Fi takes adc2 lock.
D (573) phy_init: loading PHY init data from application binary
D (579) nvs: nvs_open_from_partition phy 0
D (583) nvs: nvs_get cal_version 4
D (586) nvs: nvs_get_str_or_blob cal_mac
D (591) nvs: nvs_get_str_or_blob cal_data
D (600) nvs: nvs_close 4
I (674) phy: phy_version: 4008, 544f89f, Jan 24 2019, 14:54:06, 0, 0
I (676) wifi: mode : softAP (84:0d:8e:e6:6d:a5)
I (677) wifi: Total power save buffer number: 16
I (679) wifi: Init max length of beacon: 752/752
I (684) wifi: Init max length of beacon: 752/752
D (688) event: SYSTEM_EVENT_AP_START
I (691) TRS-IO: wifi_init_ap finished.SSID:TRS-IO
D (693) tcpip_adapter: dhcp server start:(ip: 192.168.4.1, mask: 255.255.255.0, gw: 192.168.4.1)
I (697) gpio: GPIO[12]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (715) gpio: GPIO[13]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (724) gpio: GPIO[14]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (733) gpio: GPIO[15]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (742) gpio: GPIO[16]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (752) gpio: GPIO[17]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (761) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (770) gpio: GPIO[19]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (780) gpio: GPIO[32]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (789) gpio: GPIO[33]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (798) gpio: GPIO[34]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (807) gpio: GPIO[35]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (817) gpio: GPIO[36]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (826) gpio: GPIO[23]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (835) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (845) gpio: GPIO[25]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (854) gpio: GPIO[27]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0)
Core 0 register dump:
PC : 0x400d5fa3 PS : 0x00060d34 A0 : 0x800d5b8e A1 : 0x3ffdac30
0x400d5fa3: io_core1_enable_intr() at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/io.cpp:61
A2 : 0x00000003 A3 : 0x00060f23 A4 : 0x00060f20 A5 : 0x00000001
A6 : 0x00060f20 A7 : 0x00000000 A8 : 0x00000001 A9 : 0x00000000
A10 : 0x3ffb9601 A11 : 0x00060f23 A12 : 0x00060f20 A13 : 0x00000001
A14 : 0x00060f20 A15 : 0xff000000 SAR : 0x00000005 EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000 LBEG : 0x4000c2e0 LEND : 0x4000c2f6 LCOUNT : 0xffffffff
Backtrace: 0x400d5fa3:0x3ffdac30 0x400d5b8b:0x3ffdac50 0x400d5bda:0x3ffdac80 0x400d5a8a:0x3ffdacb0 0x400d5ae3:0x3ffdace0 0x400d528a:0x3ffdad00 0x400d1e5a:0x3ffdad20 0x400871cd:0x3ffdad40
0x400d5fa3: io_core1_enable_intr() at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/io.cpp:61
0x400d5b8b: storage_has_key(char const*, unsigned int*) at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/storage.cpp:34
0x400d5bda: storage_has_key(char const*) at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/storage.cpp:48
0x400d5a8a: set_timezone() at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/ntp_sync.cpp:10
0x400d5ae3: init_time() at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/ntp_sync.cpp:30
0x400d528a: app_main at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/main.cpp:42
0x400d1e5a: main_task at /home/uminded/esp/esp-idf/components/esp32/cpu_start.c:497
0x400871cd: vPortTaskWrapper at /home/uminded/esp/esp-idf/components/freertos/port.c:403
Core 1 register dump:
PC : 0x400d5f5a PS : 0x00060034 A0 : 0x800871d0 A1 : 0x3ffea1b0
0x400d5f5a: io_task(void*) at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/io.cpp:156
A2 : 0x3ff4400c A3 : 0x00000000 A4 : 0x00060023 A5 : 0x3ffd8f74
A6 : 0x00000000 A7 : 0x00000000 A8 : 0x3ff44000 A9 : 0x08000000
A10 : 0x00000000 A11 : 0x00060023 A12 : 0x00060023 A13 : 0x00000001
A14 : 0x00060021 A15 : 0x00060123 SAR : 0x00000000 EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000
Backtrace: 0x400d5f5a:0x3ffea1b0 0x400871cd:0x3ffea1d0
0x400d5f5a: io_task(void*) at /home/uminded/Programming/esp32/TRS-IO/src/esp/main/io.cpp:156
0x400871cd: vPortTaskWrapper at /home/uminded/esp/esp-idf/components/freertos/port.c:403
Rebooting...
ets Jun 8 2016 00:22:57
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:5400
load:0x40078000,len:10868
load:0x40080400,len:6412
entry 0x40080758
Is there a BOM for the latest version of the TRS-IO for Model 1 board? thank you!
I see that there is a fork of this project for the model 4 / 4P, but it seems to be old at this point an perhaps unmaintained. Since this main project seems to be moving along well - are there plans to make this available to us with Model 4 / 4Ps? There is a bit of envy from those of us that do not have a Model 1/III
Thank you.
Looks like the lastest io and spi for model 1 now only support FPGA not the expander. Is this correct? Is there plans to put this back in?
I built the hardware for a model 1 without the fpga, so I hope there's a branch/commit I can rollback to.
Thanks! Dave.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.