Jump to content

myriadcs

Members
  • Posts

    57
  • Joined

Posts posted by myriadcs

  1. 22 minutes ago, jamm said:

    If any part of the firmware isn't building, then obviously there's something fundamentally wrong with the setup.  I recommend deleting the project directory entirely and starting with a fresh download of the v0.1.ccbb292f release.

     

    I have removed directory completely, downloaded zip https://github.com/FujiNetWIFI/fujinet-platformio/archive/v0.1.ccbb292f.zip unpacked, added platformio.ini as in earlier post and run build.

    No errors

    =========================================================================== [SUCCESS] Took 273.02 seconds ===========================================================================
    
    Environment    Status    Duration
    -------------  --------  ------------
    fujinet-wroom  SUCCESS   00:04:33.019

    but boot_app0.bin is not there

    $ find . -name "*.bin"
    ./.pio/build/fujinet-wroom/partitions.bin
    ./.pio/build/fujinet-wroom/CMakeFiles/3.16.4/CMakeDetermineCompilerABI_CXX.bin
    ./.pio/build/fujinet-wroom/CMakeFiles/3.16.4/CMakeDetermineCompilerABI_C.bin
    ./.pio/build/fujinet-wroom/bootloader.bin
    ./.pio/build/fujinet-wroom/firmware.bin
    ./.pio/build/fujinet-wroom/bootloader/CMakeFiles/3.16.4/CMakeDetermineCompilerABI_CXX.bin
    ./.pio/build/fujinet-wroom/bootloader/CMakeFiles/3.16.4/CMakeDetermineCompilerABI_C.bin
    ./data/850handler.bin
    ./data/picoboot.bin
    ./data/850relocator.bin

    but also no spiffs.bin this time so I guess something must be missing in my setup. 

  2. 2 minutes ago, jamm said:

    The BOARD_HAS_PSRAM precompiler flag is used in several places in the source code.  Since WROOM doesn't have PSRAM, it should not be defined, so it looks correct. The boards/fujinet-wroom.json file is correct in the v0.1.ccbb292f release, so you shouldn't have to do anything other than specify the correct ENV value in your PLATFORMIO.INI.  This is well commented in the PLATFORMIO.INI file.

    my platformio.ini looks ok I think

    $ cat platformio.ini 
    ;FujiNet PlatformIO Project Configuration File
    ;
    ;   Build options: build flags, source filter
    ;   Upload options: custom upload port, speed and extra flags
    ;   Library options: dependencies, extra library storages
    ;   Advanced options: extra scripting
    ;
    ; Please visit documentation for the other options and examples
    ; https://docs.platformio.org/page/projectconf.html
    
    [platformio]
    description = FujiNet Atari to ESP32 WiFi Multifunction Firmware
    ; Change this to target the device you use from the list of [env:xxx] sections below
    default_envs = fujinet-wroom
    
    [env]
    ; Common settings for all enivornments
    platform = espressif32
    framework = espidf
    extra_scripts = pre:build_version.py
    lib_ldf_mode = deep+
    ;upload_port = COM1 ; Windows
    upload_port = /dev/ttyUSB0 ; Linux
    upload_speed = 921600
    ;monitor_port = COM1 ; Windows
    monitor_port = /dev/ttyUSB0 ; Linux
    monitor_speed = 921600
    monitor_filters = time
    
    ; ESP32 WROOM 
    [env:fujinet-wroom]
    board = fujinet-wroom
    build_type = debug
    build_flags =
        ;-D JTAG
        -D DEBUG_SPEED=921600
        -D BLUETOOTH_SUPPORT
        ;-D FN_HISPEED_INDEX=0
        ;-D VERBOSE_SIO
        ;-D VERBOSE_TNFS
        ;-D VERBOSE_DISK
        ;-D VERBOSE_ATX

    Only thing I can think of is boot_app0.bin which was not produced in build and I had to take it from current one. Maybe it has references to PSRAM? what that binary is responsible for?

  3. 5 minutes ago, tschak909 said:

    The key is to look for BOARD_HAS_PSRAM #ifdefs

    -Thom

    My board definition looks like:

    $ cat boards/fujinet-wroom.json 
    {
      "build": {
        "arduino":{
          "ldscript": "esp32_out.ld"
        },
        "core": "esp32",
        "extra_flags": "-DARDUINO_ESP32_DEV",
        "f_cpu": "240000000L",
        "f_flash": "40000000L",
        "flash_mode": "dio",
        "mcu": "esp32",
        "variant": "esp32",
        "partitions": "fujinet_partitions_4MB.csv"
      },
      "connectivity": [
        "wifi",
        "bluetooth",
        "ethernet",
        "can"
      ],
      "debug": {
        "openocd_board": "esp-wroom-32.cfg"
      },
      "frameworks": [
        "arduino",
        "espidf"
      ],
      "name": "#FujiNet WROOM",
      "upload": {
        "flash_size": "4MB",
        "maximum_ram_size": 327680,
        "maximum_size": 4194304,
        "protocols": [
          "esptool",
          "espota",
          "ftdi"
        ],
        "require_upload_port": true,
        "speed": 460800
      },
      "url": "https://github.com/FujiNetWIFI/atariwifi",
      "vendor": "FujiNet Project"
    }

    I can see that defined for other boards:

    $ grep BOARD_HAS_PSRAM * -R
    boards/fujinet-v1.json:    "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM",
    boards/fujinet-v1-4mb.json:    "extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM",

    Is my board definition ok? I do not mention BOARD_HAS_PSRAM in flags, or it's defined somewhere else?

  4. I managed to compile that firmware. I could not use GUI flasher as it's configured for bigger boards.

    After compilation, in .pio/build/fujinet-wroom/ I had 4 files:

     

    bootloader.bin
    partitions.bin
    spiffs.bin

    firmware.bin

     

    boot_app0.bin was taken from https://fujinet.online/firmware-dl/ Is that version ok for WROOM? 

     

    I've used esptool with following offsets: 

    esptool.py write_flash 0x1000 ./bootloader.bin 0x8000 ./partitions.bin 0xE000 ./boot_app0.bin 0x10000 ./firmware.bin 0x200000 ./spiffs.bin

    I had to play w bit with these offsets to fit. Command output look ok:

    esptool.py v2.6
    Found 1 serial ports
    Serial port /dev/ttyUSB0
    Connecting........_____....._____..
    Detecting chip type... ESP32
    Chip is ESP32D0WDQ5 (revision 1)
    Features: WiFi, BT, Dual Core, Coding Scheme None
    MAC: 30:30:30:30:30:30
    Uploading stub...
    Running stub...
    Stub running...
    Configuring flash size...
    Auto-detected Flash size: 4MB
    Compressed 26960 bytes to 16219...
    Wrote 26960 bytes (16219 compressed) at 0x00001000 in 1.4 seconds (effective 150.4 kbit/s)...
    Hash of data verified.
    Compressed 3072 bytes to 119...
    Wrote 3072 bytes (119 compressed) at 0x00008000 in 0.0 seconds (effective 1544.3 kbit/s)...
    Hash of data verified.
    Compressed 8192 bytes to 47...
    Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 7258.3 kbit/s)...
    Hash of data verified.
    Compressed 1960832 bytes to 1137946...
    Wrote 1960832 bytes (1137946 compressed) at 0x00010000 in 101.3 seconds (effective 154.9 kbit/s)...
    Hash of data verified.
    Compressed 1769472 bytes to 339295...
    Wrote 1769472 bytes (339295 compressed) at 0x00200000 in 30.2 seconds (effective 469.1 kbit/s)...
    Hash of data verified.
    
    Leaving...
    Hard resetting via RTS pin...

     

    It flashed but something is not ok, here is debug output:

    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:0x3fff0030,len:4
    load:0x3fff0034,len:5532
    load:0x40078000,len:16488
    load:0x40080400,len:4840
    entry 0x400806a4
    E (657) spiram: SPI RAM enabled but initialization failed. Bailing out.
    E (666) uart: uart_write_bytes(1111): uart driver error
    E (666) uart: uart_write_bytes(1111): uart driver error
    E (666) uart: uart_write_bytes(1111): uart driver error
    E (670) uart: uart_write_bytes(1111): uart driver error
    E (675) uart: uart_write_bytes(1111): uart driver error
    E (680) uart: uart_write_bytes(1111): uart driver error
    E (685) uart: _����垠8�(����R��`D0` @`��̀��<@$��$$"�Dz�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:0x3fff0030,len:4
    load:0x3fff0034,len:5532
    load:0x40078000,len:16488
    load:0x40080400,len:4840
    entry 0x400806a4

    I have tried with different offsets as well

    esptool.py write_flash 0x0000 ./bootloader.bin 0x8000 ./partitions.bin 0xE000 ./boot_app0.bin 0x10000 ./firmware.bin 0x250000 ./spiffs.bin

    But it also failed, different error this time.

    rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
    flash read err, 1000
    ets_main.c 371 
    ets Jun  8 2016 00:22:57

    I guess some of the offsets are not ok. Any idea which one? :)

  5. 18 minutes ago, mozzwald said:

    Correct. The flash tool only supports WROVER boards with 8MB PSRAM and 16MB flash

    WROOM is not supported. You are welcome to fork the code and make it work if you like, but we are not supporting it. You can follow the instructions to build the code yourself https://github.com/FujiNetWIFI/fujinet-platformio/wiki/Board-bring-up-for-FujiNet-Platform.IO-code and you need to checkout the code from https://github.com/FujiNetWIFI/fujinet-platformio/releases/tag/v0.1.ccbb292f.

    Sure, I can build that, will be good experience :) Just wanted to confirm that my command line switches are ok, and it will work once I will recompile that.

    One thing worries me that It just stuck in CLI, without any information what is happening and no errors indicated. Is there a verbose mode so it's easier to trouble shoot?

    GUI seems be better as it marked error and stopped, CLI didn't.

  6. I decided to build one using spare ESP-Wroom that I had. Last year I built with ESP8266 so this time Wroom. I know, current status is Wrover but some things should work still on that board.

    I downloaded flasher (I'm using Linux) but it fails to flash using GUI. Here is output.

    Using '/dev/ttyUSB0' as serial port.
    Using latest firmware from fujinet.online..
    Connecting........_
    Detecting chip type... ESP32
    Connecting........_
    
    Chip Info:
     - Chip Family: ESP32
     - Chip Model: ESP32D0WDQ5 (revision 1)
     - Number of Cores: 2
     - Max CPU Frequency: 80MHz
     - Has Bluetooth: YES
     - Has Embedded Flash: NO
     - Has Factory-Calibrated ADC: NO
     - MAC Address: 30:AE:A4:97:F7:C0
    Uploading stub...
    Running stub...
    Stub running...
    Changing baud rate to 460800
    Changed.
     - Flash Size: 4MB
     - Firware path: Latest from fujinet.online
     - Flash Mode: dio
     - Flash Frequency: 40MHz
    Erasing flash (this may take a while)...
    Chip erase completed successfully in 9.1s
    Unexpected error: '_io.BytesIO' object has no attribute 'name'

    I believe that error is because latest firmware does not support WROOM anymore.

     

    I also tried command line version with files downloaded from https://fujinet.online/firmware-dl/

    $ sudo ./FujiNet-Flasher -p /dev/ttyUSB0 --esp32 --bootloader bootloader.bin --partitions partitions.bin --spiffs spiffs.bin --show-logs firmware.bin 
    Using '/dev/ttyUSB0' as serial port.
    Showing logs:

    But it sits like that, nothing more shows up. `ps` shows that it forked additional processes but that's all

    $ ps aux| grep Fuji
    root       89851  0.1  0.1  11452  4460 pts/1    S+   12:39   0:00 sudo ./FujiNet-Flasher -p /dev/ttyUSB0 --esp32 --bootloader bootloader.bin --partitions partitions.bin --spiffs spiffs.bin --show-logs firmware.bin
    root       89852 13.9  0.4  19480 18288 pts/1    S+   12:39   0:02 ./FujiNet-Flasher -p /dev/ttyUSB0 --esp32 --bootloader bootloader.bin --partitions partitions.bin --spiffs spiffs.bin --show-logs firmware.bin
    root       89854  4.2  0.4  47816 16236 pts/1    S+   12:39   0:00 ./FujiNet-Flasher -p /dev/ttyUSB0 --esp32 --bootloader bootloader.bin --partitions partitions.bin --spiffs spiffs.bin --show-logs firmware.bin

    What is the process to flash latest WROOM version?

  7. 4 minutes ago, orpheuswaking said:

    Always hate that shipping costs as much as the magazine, but I will have to at least buy the first Issue. Has anyone approached you to distribute in the US?

    If you are interested in other retro magazines, you can buy something else so shipping will be smaller part. I bought AF#1 from here https://amiga.net.pl/index.php?lng=pl&kwt=10010&tms=575

    There is also https://amiga.net.pl/index.php?kwt=4027&lng=pl and (not Atari but still...) https://amiga.net.pl/index.php?kwt=4068&lng=pl

  8. 27 minutes ago, mytek said:

    Perhaps a little more info would help.

    • PAL or NTSC?
    • Computer Model?
    • Composite or S-Video in use?
    • Monitor Make and Model?
    • Were jail bars present with either the new or old cable?

    :)

     

    Sorry, more details then :)

     

    130XE PAL, S-Video connected to Viewsonic 2060w-1e

    No jail bars present (now or in the past). I guess it's monitor/tv thing then. 

    I don't have any other device that can test S-Video so it's only my theory.

    On the other hand, can't complain, maybe i'm just lucky (most likely :) )

    • Like 1
  9. 9 hours ago, Mathy said:

    Would it be possible to control modern Home Automation devices via FujiNet?

     

     

    It should work easily. For my few automation projects I just expose HTTP API so you can turn on/off devices, FujiNET can do that as it's regular HTTP Call. For Bigger project you can set up some centralized device (RPI for example) running https://www.home-assistant.io/ and you can control multiple devices via REST API https://developers.home-assistant.io/docs/api/rest/ that FujiNet will be capable of doing as long as you can make such calls.

     

    Of course for more advanced stuff you may need to write some code but it's all doable and should not be that difficult.

  10. Thanks for working on this, It's great idea!

     

    After fighting with my set up for some time, finally I got something more or less working for initial testing.

     

    I've tried tnfsBoot test and it was failing until I changed

    https://github.com/tschak909/atariwifi/blob/master/tests/tnfsBoot/tnfsBoot.ino#L17

    from GPIO2 to GPIO3. I see all debug messages and it seems be booting ESP8266 ok.

    What difference does it make? Can it stay with 3?

     

    When connected to Atari, I see a lot messages but computer is not booting up image,

    I have following in Debug Log

     

    Seek requested to offset: 16
    Req packet: 67 45 2 25 0 0 10 0 0 0
    Resp packet: 67 45 2 25 0
    Successful.
    Reading from File descriptor: 0
    Req Packet: 67 45 3 21 0 80 0
    Resp packet: 67 45 3 21 0 80 0 0 3 0 7 40 15 4C 14 7 3 3 0 7C 1A 1 BF 1 7D CB 7 AC E 7 F0 36 AD 12 7 85 43 8D 4 3 AD 13 7 85 44 8D 5 3 A
    D 10 7 AC F 7 18 AE E 7 20 6C 7 30 17 AC 11 7 B1 43 29 3 48 C8 11 43 F0 E B1 43 A8 20 57 7 68 4C 2F 7 A9 C0 D0 1 68 A A8 60 18 A5 43 6D
    11 7 8D 4 3 85 43 A5 44 69 0 8D 5 3 85 44 60 8D B 3 8C A 3 A9 52 A0 40 90 4 A9 50 A0 80 8D 2 3 8C
    SIO READ OFFSET: 16 - 144
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    SIO CMD TIMEOUT: 0
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    SIO CMD TIMEOUT: 0
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 32
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31
    CMD CMND: 3F
    CMD DEVC: 31

     

    What may be wrong with this? Am I missing something? Any reason why it's timing out?

     

×
×
  • Create New...