Temat: Kompilacja firmware dla Fujinet

Czy ktos z kolego probowal moze skompilowac FujiNet firmware ze zrodel znajdujacych sie w GitHubie https://github.com/FujiNetWIFI/fujinet- … rm.IO-code ?

Wlasnie probowalem to zrobic i wyglada na to iz wynik kompilacji jest za duzy :(

Linking .pio/build/fujinet-v1-8mb/firmware.elf
/home/irekp/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: .pio/build/fujinet-v1-8mb/firmware.elf section `.iram0.text' will not fit in region `iram0_0_seg'
/home/irekp/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: IRAM0 segment data does not fit.
/home/irekp/.platformio/packages/toolchain-xtensa32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: region `iram0_0_seg' overflowed by 196 byte

Jedyna kompilcja ktora przechodzi pomysle jest dla "plytki" ESP32 WROVER (4MB Flash, 8MB PSRAM) based FujiNet


Czy ktos sie spotkal z takim problemem lub moze ma gdzies starsza wersje tego repo gdzie kompilacja przechodzi poprawnie dla wszystkich "plytek" ESP32

Ostatnio edytowany przez Monsoft (2021-06-09 17:04:43)

2

Odp: Kompilacja firmware dla Fujinet

Chłopaki gdzieś piszą, że porzucili 2 i 4 MB płytki, skupiają się na 8MB i tylko z taką zapewniają kompatybilność.

3

Odp: Kompilacja firmware dla Fujinet

No tak, tyle ze nawet defaultowy setup dla plytki z 16MB sie nie kompiluje.

4

Odp: Kompilacja firmware dla Fujinet

Monsoft napisał/a:

No tak, tyle ze nawet defaultowy setup dla plytki z 16MB sie nie kompiluje.

Monsoft napisał/a:

No tak, tyle ze nawet defaultowy setup dla plytki z 16MB sie nie kompiluje.

Coś musisz mieć pokręcone. U mnie:

Linking .pio/build/fujinet-v1/firmware.elf
Retrieving maximum program size .pio/build/fujinet-v1/firmware.elf
Checking size .pio/build/fujinet-v1/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [==        ]  21.5% (used 70340 bytes from 327680 bytes)
Flash: [====      ]  35.6% (used 2239640 bytes from 6291456 bytes)
Building .pio/build/fujinet-v1/firmware.bin
esptool.py v3.0
============================================================== [SUCCESS] Took 120.39 seconds ==============================================================

Terminal will be reused by tasks, press any key to close it.

5

Odp: Kompilacja firmware dla Fujinet

Kompilujesz uzywajac krokow opisanych tutaj https://github.com/FujiNetWIFI/fujinet- … rm.IO-code ?
Na jakim systemie kompilujesz ?

Zainstalowalem dabiana na nowej VM'ce. Konfig zrobilem zgodnie z punktami z krokow opisanych w wiki i mam dokladnie ten sam blad.
Nie wiem co moge robic zle.

Jak wyrzuce support dla bluetootha to firmware sie kompiluje poprawnie.

Uzywane toolsy:

CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/fujinet-v1-8mb.html
PLATFORM: Espressif 32 (3.2.1) > #FujiNet v1 8MB
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (ftdi) On-board (ftdi) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES: 
 - framework-espidf 3.40201.210513 (4.2.1) 
 - tool-cmake 3.16.4 
 - tool-esptoolpy 1.30000.201119 (3.0.0) 
 - tool-ninja 1.7.1 
 - toolchain-esp32ulp 1.22851.191205 (2.28.51) 
 - toolchain-xtensa32 2.80400.210211 (8.4.0)

Ostatnio edytowany przez Monsoft (2021-06-13 09:41:27)

6

Odp: Kompilacja firmware dla Fujinet

Ja kompilowałem ostatnio (tydzień temu) pod Windowsem według tego opisu:
https://github.com/FujiNetWIFI/fujinet- … rm.IO-code
ESP32 16MB i 8MB PSRAM
Poszło bez problemu, skompilowałem i od razu zaflashowałem.
Jeśli potrzebujesz na chwilę lub tylko wygenerowany wsad, to mogę Ci udostępnić na chwilę kompa przez TV albo postawić na szybko nową maszynę ale pod Windowsem i Cię wpuścić jakimś TV czy Anydeskiem.

[EDIT]
Właśnie postawiłem na świeżo VM-kę z Win10 i pięknie się kompiluje.
Mogę udostępnić w razie czego.

[EDIT2]
Jest nowy soft z dzisiaj.

[EDIT3]
Pobawiłem się więcej i pod PlatformIO zaktualizowałem Espressif32 z wersji 3.2.0 do 3.2.1 i projekt przestał się kompilować -zarówno ten nowy jak i ten stary. Może tu jest jakaś podpowiedź.

[EDIT4]
Da się cofnąć Espressif32 do wersji 3.2.0
Należy go odinstalować, potem wejść w Platforms, wyszukać Espressif 32 i z takiego menu rozwijalnego wybrać 3.2.0.
Sprawdzałem na dwóch kompach i pod 3.2.1 się nie kompiluje, natomiast po cofnięciu do 3.2.0 idzie bez problemu.

Ostatnio edytowany przez x_angel (2021-06-13 19:00:00)

7

Odp: Kompilacja firmware dla Fujinet

Wilekie dzieki @x_angel !!!

Dokladnie tak jak piszesz. Nie wpadlo mi do glowy ze  Espressif32 z wersji 3.2.1 bedzie problematycznym elementem. Odinstalowalem wersje 3.2.1 i zainstalowalem 3.2.0 i poszlo bez problemu. Juz myslalem ze bede szukal gdzie instalki win10 co by postawic vmk'e.

Jeszcze raz wielkie dzieki

8

Odp: Kompilacja firmware dla Fujinet

Żaden problem, dla mnie też przyda się ta wiedza :)
Wczoraj chwilę powalczyłem, zanim odkryłem, dlaczego na jednym kompie działa, a na drugim nie.

Co do instalki Win10 to teraz takie czasy przyszły, że można pobrać z Microsoftu.
Wpisujesz w Google: "Windows 10 download tool", klikasz pierwszy link "Pobieranie obrazu dysku systemu Windows 10" i klikasz drugi duży niebieski przycisk "Pobierz narzędzie".
Odpalasz narzędzie, wybierasz, czy chcesz PL, x64 itp i wybierasz, żeby zapisał ISO

9

Odp: Kompilacja firmware dla Fujinet

Nigdy nie pracowalem na win 10, a na windowsie pracowalem ostatnio chyba z 10 lat temu....
Moze czas sobaczyc jak teraz Windows wyglada ...

10

Odp: Kompilacja firmware dla Fujinet

Nie chcesz wiedzieć :D

Jakby co, kompiluję na MAcOSX Mojave.
Espressif 32 3.2.0

Ostatnio edytowany przez qbahusak (2021-06-14 11:20:19)

11

Odp: Kompilacja firmware dla Fujinet

Nigdy nie bylem fanem windowsow a od jakis 10 lat pracuje tylko na Linuxie i powiem szczerze ze jakos nie brakuje mi Windowsa.

12

Odp: Kompilacja firmware dla Fujinet

Linux dla programistów ok, ale dla specjalistów używających Bardzo Drogiego Oprogramowania już nie za bardzo...

13

Odp: Kompilacja firmware dla Fujinet

Moj background to Linux/Unix Admin ktory ewaluowal po przez Senior DevOps do  Senior Technical Architect w srodowisku Linux, Cloud i kontenerach czyli w sumie caly czas jestem na bierzaco w srodowisku *nxowym.
Czasami sie zastanawiam nad przesiadka na Appla i MacOs ale jakos zawsze mi szkoda kasy :-)

14

Odp: Kompilacja firmware dla Fujinet

Zaladuje i zobacze czy firmware zadziala.

Ostatnio edytowany przez Monsoft (2021-06-17 10:15:32)

15

Odp: Kompilacja firmware dla Fujinet

Dostalem tez update ticketu otwartego na githubie. Sa dwie mozliwosci obejcia tego problemu i obie juz zostaly tutaj przedstawione:
- kompilacja ze starsza wersja bibliteki  Espressif
- wylaczenie bluetooth

16

Odp: Kompilacja firmware dla Fujinet

.

Ostatnio edytowany przez x_angel (2023-01-02 12:17:03)

17

Odp: Kompilacja firmware dla Fujinet

Czy ktoś może próbował skompilować nowy soft według nowego opisu?
https://github.com/FujiNetWIFI/fujinet- … p-Software

18

Odp: Kompilacja firmware dla Fujinet

qbahusak napisał/a:

Chłopaki gdzieś piszą, że porzucili 2 i 4 MB płytki, skupiają się na 8MB i tylko z taką zapewniają kompatybilność.

Kompilowałem wsad 4MB i się zbudował - w grudniu. Także może i porzucone w sensie, że nierozwijane, ale nadal się kompiluje, instaluje i działa.

Pamięć studenta ma charakter kwantowy - student wie wszystko, ale jednocześnie nic nie pamięta.
- Kilka(naście?) pudełek z klawiszami i światełkami. I jeden Vectrex, żeby nimi wszystkimi rządzić.

19

Odp: Kompilacja firmware dla Fujinet

Chcę skompilować na ESP z 8MB ram / 16MB flash.
Instalowałem nowy Visual Studio Code, potem PlatformIO, potem Espressif w wersji 3.4.0.
Nie instalowałem githuba, ale to chyba nie gra roli.

Otrzymuję taki błąd:

FileNotFoundError: [WinError 2] Nie można odnaleźć określonego pliku:
  File "C:\Users\user\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 186:
    env.SConscript(item, exports="env")
  File "C:\Users\user\.platformio\packages\tool-scons\scons-local-4.4.0\SCons\Script\SConscript.py", line 597:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\user\.platformio\packages\tool-scons\scons-local-4.4.0\SCons\Script\SConscript.py", line 285:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\Users\user\Documents\Workspace\fujinet-platformio-master\build_version.py", line 11:
    elif len(subprocess.check_output(["git", "diff", "--name-only"], universal_newlines=True)) == 0:
  File "C:\Users\user\.platformio\python3\lib\subprocess.py", line 424:
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "C:\Users\user\.platformio\python3\lib\subprocess.py", line 505:
    with Popen(*popenargs, **kwargs) as process:
  File "C:\Users\user\.platformio\python3\lib\subprocess.py", line 951:
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Users\user\.platformio\python3\lib\subprocess.py", line 1420:
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,

Mój platform.ini wygląda tak:

;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

; Uncomment the platform you are building for below
[fujinet]
;build_platform = NOT_SET
build_platform = BUILD_ATARI
;build_platform = BUILD_CBM
;build_platform = BUILD_ADAM
;build_platform = BUILD_APPLE

[platformio]
description = FujiNet retro computer to ESP32 WiFi Multifunction Firmware
; Change this to target hardware you use from the list of [env:xxx] sections below
default_envs = fujinet-v1
data_dir = $PROJECT_DIR/data/${fujinet.build_platform}

[env]
; Common settings for all enivornments
platform = espressif32
framework = espidf
extra_scripts = pre:build_version.py
lib_ldf_mode = deep+
upload_speed = 921600
upload_port = COM12 ; Windows
;upload_port = /dev/ttyUSB0 ; Linux
;upload_port = /dev/tty.SLAB_USBtoUART ; Mac
monitor_speed = 921600
monitor_port = COM12 ; Windows
;monitor_port = /dev/ttyUSB0 ; Linux
;monitor_port = /dev/tty.SLAB_USBtoUART ; Mac
monitor_filters = time, esp32_exception_decoder

build_flags =
    -D ${fujinet.build_platform}
    -D CMAKE_EXPORT_COMPILE_COMMANDS=ON
    -D DEBUG_SPEED=921600
    ;-D NO_BUTTONS          ; if your hardware has no physical buttons
    ;-D JTAG                ; enable use with JTAG debugger
    ;-D BLUETOOTH_SUPPORT   ; enable BlueTooth support
    ;-D FN_HISPEED_INDEX=0
    ;-D VERBOSE_SIO
    ;-D VERBOSE_TNFS
    ;-D VERBOSE_DISK
    ;-D VERBOSE_ATX
    ;-D DEBUG_TIMING
    ;-D DATA_STREAM
    ;-D NO_VIRTUAL_KEYBOARD

; ESP32 WROVER (16MB Flash, 8MB PSRAM) based FujiNet
[env:fujinet-v1]
board = fujinet-v1
build_type = debug


; ESP32 WROVER (8MB Flash, 8MB PSRAM) based FujiNet
[env:fujinet-v1-8mb]
board = fujinet-v1-8mb
build_type = debug
   

; ESP32 WROVER (4MB Flash, 8MB PSRAM) based FujiNet
[env:fujinet-v1-4mb]
board = fujinet-v1-4mb
build_type = debug

Ostatnio edytowany przez x_angel (2023-01-04 10:00:46)

20

Odp: Kompilacja firmware dla Fujinet

Ehhhh
Problemem było to, że ściągnąłem z githuba plik fujinet-platformio.zip i wypakowałem do Workspace
Trzeba było zainstalować git i pobrać poprzez git clone.
Teraz wszystko się kompiluje.

Tak sam ze sobą sobie dyskutuję w tym wątku, ale może przyda się dla potomnych :)

natomiast dalej nie wiem, jak skompilować stare wersje, które mam na dysku, na przykład z początku roku 2022.

Ostatnio edytowany przez x_angel (2023-01-09 12:19:56)