• Hardware
  • H3-based boards that boot EngineBASIC NG

Ahoy,
I have two computers that are H3-based: an Orange Pi PC 1Gb and a Tauon PC-1 1Gb. Today I received a new Libre ALL-H3-CC 1Gb which is also an H3-based SBC. Amazon has these boards for $30.00 (free ship w/Prime). All three of these computers are almost alike and can boot and run EngineBasic NG (as well as the same version of Armbian Linux).

I think it would be a good idea to keep this thread to report any compatible boards. I'll also keep track here so if anyone wants to know what hardware they can use to boot EB NG I'll know.

The H2+ SOC is similar to the H3. The H5 SOC is almost exactly the same as the H3 with slight changes to the memory map. So if someone has an H2 or H5-based SBC it would be an interesting experiment to see if they would even try to boot EB NG. (I thought I had an H5-based board, The OPi Win Plus, but it turns out that has an A64). I do have an H6 SBC (Pine64 H64 2Gb) and an H8 SBC (PCDuino 8 w/4xC7 & 4xC53 cores). I may try them but odds are both are non-starters.

So what board(s) is everyone using to run their copy of EngineBASIC NG?
DaveyB

    a month later

    MC10Guru
    No surprise the 512MB Orange Pi One does also "boot" BASIC Engine NG
    Now I want to try a Orange Pi Zero, because the Allwinner H2+ should be compatible enough!?
    (but the Zero hasnt HDMI) πŸ™ only AV-Out

    19 days later

    After reading the posts above, I ordered the Libre ALL-H3-CC 1Gb from the Amazon Prime link in the post above. Since it has the same form-factor as the Raspberry Pi 3, I also ordered a case with fan and power supply at the same time. After reading some reviews, I also ordered the heatsink for it. These all came from Amazon Prime.

    I received them this last weekend and assembled it over the weekend. I did run into an issue when the Libre heatsink mounting post hit the corner of the case.I used a dremel tool to remove part of the corner of the case to clear the heatsink post. Of course, if I had used the 3 heatsink that came with the case I wouldn't have had to modify the case. However, these are for the Raspberry Pi 3 and are smaller. Other than that issue, it was easy to complete.

    I loaded the SD card with the lastest firmware and turned it on. I got the Basic Engine logo and a blinking cursor. The HDMI monitor is a TV and the screen over scans the case opening. I am losing the edges of the screen. I tried it with VGA and a PC and the screen goes to the edge on it also. I will have to see if there are adjustments on the monitor.

    I took photos while I built this project and when I figure out how to attach them, I will add them to the post. Now comes the fun part, learning to use it.

      Ahoy,
      Congrats on your new system. I've found that my Libre Tritium with the "big blue" heatsink doesn't really need a fan but it can't hurt. The Libre also seems to be slighly faster than my other H3 systems.

      For seeing all of your screen first check your TV/mon for something like an overscan setting. If it has one try changing that. If that doesn't fix it you can change the screen setting in BASIC. Check out "screen [mode#]" in the reference. These are the modes available:

      1 460x224 Maximum usable resolution in NTSC mode.
      2 436x216 Slightly smaller than mode 1; helpful if the display does not show the entirety of mode 1.
      3 320x216
      4 320x200 Common resolution on many home computer systems.
      5 256x224 Compatible with the SNES system.
      6 256x192 Common resolution used by MSX, ZX Spectrum and others.
      7 160x200 Common low-resolution mode on several home computer systems.
      8 352x240 PC Engine-compatible overscan mode
      9 282x240 PC Engine-compatible overscan mode
      10 508x240 Maximum usable resolution in PAL mode. (Overscan on NTSC systems.)

      You might try "screen 2" as it's a little smaller. I set my system to "screen 3" (320x216) as it fits on both the HDMI and A/V monitors I use. Note that "SCREEN clears the screen, resets the font and color space (palette) to their defaults, and disables sprites and tiled backgrounds." So if you run a program with a different screen mode you'll have to execute your screen command to get your preferred resolution again.

      HTH, daveyb

      Willard Willard, just in case you haven't tried it yet, it might be beneficial to use CONFIG for your monitor type.

      CONFIG 10, n

      Copy and paste from the reference manual:
      0 (1920x1080 HDMI)
      1 (1280x1024 DVI)
      2 (1280x720 HDMI)
      3 (1024x768 DVI)
      4 (800x600 DVI)
      5 (640x480 DVI)
      6 (1920x1200 HDMI)

      CONFIG 10,0
      SAVE CONFIG
      ...will save the config dot ini file to the root of your SD card and tell the Libre that your monitor is an HDMI monitor that has a native resolution of 1920x1080 (or the value commensurate to the value of 0 through 6 that you choose)

      a month later

      guidol , Hi,
      My R69 box arrived yesterday and tried to boot from my BE NG uSD card with no success. Did you have to do anything special to boot your R69 into BE NG?
      When I opened the box and check the circuit board it had markings indicating that it was an RK3229 SoC, but with the heat sink attached I can’t be certain.
      Everything I tried just booted to Android.

        Hawk
        Hi,
        I got my R69 Box years ago (2017) with a H2(+) CPU- you could read about it and see my Board in the
        "Sunvell R69"-Thread in the armbian-forum at
        https://forum.armbian.com/topic/4877-h2-sunvell-r69-android-tv-box-aliexpress/?do=findComment&comment=41944

        Maybe some "R69" clones now have a Rockchip CPU, then the BASIC wont boot because the H2 is from Allwinner like the H3 for which the Basic Engine NG is build for... πŸ™

        With my old R69 I hadnt to change anything to boot from MicroSDCard.

        • Hawk replied to this.

          guidol Thanks for the prompt reply. Sounds like I got a Sunvell R69 clone based around the RK3229. I’m disappointed, as the page claimed it was a H3 version. I’ll take photos of it and start a section in the BE NG Wiki for boards that don’t work.
          I came across your posts on the Armbian forum last night when I was looking for answers.

          Regarding BE NG running on the RK3229, is it just a matter of getting the SoC to boot it, or do the internal ports all need remapping as well?

          Are there any of these β€œcheap, getting more expensive” smart TV boxes that still use the H3 (or equivalent)?

            Hawk
            No its not only getting your RK3229 to boot from SD, because its a complete other type/manufacturer of the CPU πŸ™
            Its like you want to run a Commodore 64 Game on Amstrad CPC.

            The bare-metal "OS" which Baisc Engine NG depends on is for the Allwinner H3 CPU and you RK3229 is from Rockchip....its not like Intel and AMD where you can run the same 64Bit Wndows/Linux OS πŸ™

            In the Corona-times "cheap" is the double price before of 2020 πŸ™ and getting such hardware is double so hard.

            I had luck buying 8 used OrangePi One (OK, on one the Ram did fail) for around 40EUR from a FB-forum member - but this is 3-4 year from now where everyone wont have a 512MB-H3 SBC because there where 1GB ones and the "new" H5-devices.

            But the H3 is more known to work for emulation like a RetroPie.

            • Hawk replied to this.

              guidol I understand that the bare-metal OS is different for each platform, but is this the part that we can create which allows BASIC Engine to run on the different platforms? Afterall, @uli has BASIC Engine running in SDL. Can this interface be well defined enough that we can create new "bare-metal OSs" that BASIC Engine will run fine on. There may be capabilities that need to be configured out for different platforms, if they don't provide the capability, but this could be a runtime or build time configuration.
              I understand that the memory mappings for the devices of the different SoCs might be different, but can they be abstracted out?
              Yes, the current flexibility of BASIC Engine on the H3 Soc to just boot from SD is great, but could it be loaded into the eMMC of an alternative board for a different target environment?
              From my perspective, the best thing about BASIC Engine is that it boots to a BASIC prompt and is has a mordern structured version of BASIC. The graphics resolutions are very flexible and it runs fast enough that you don't need to code most stuff in machine code to get it to perform. It talks to SD cards which eliminates reliance on old disk technologies.
              If BASIC Engine was not reliant on a single SoC then it is more likely to have a longer life.

              Ahoy,
              Interfacing with hardware is the responsibility of the operating system. With Linux and Android the base op sys is the Linux kernel. Everything else is window dressing and the reality of needed to communicate with the kernel. In the Wintel world each part of the hardware is usually separate from the CPU. In the Arm world the SOC (System-On-a-Chip) is most of the computer system hardware. Even so in Linux, Android and Windows drivers are used to allow each piece of hardware to communicate with the kernel.

              What Uli has done is write a programming language as an interface directly to an op sys which he also wrote. This is a huge job even just concentrating on one SOC. It is much easier with something like Basic-256 which links to the Linux OS. He wrote bare-metal code to boot then interface with the SOC & hardware and have a way to program it. Trying to do this for each SOC would be an impossible task for one person or even a small group of people. Look at how many people work to port Linux or even Emuelec to many SOCs.

              What originally attracted me to EB NG was the simplicity of applying power and starting to program in a few seconds on inexpensive computer boards. As far as an upgrade path I'd lean toward sticking with the Allwinner SOC family, perhaps the H6. But I think the inexpensive H3 will be around for a while longer.

              Almost since building computers began a universal seamlessly portable op sys and programming language has been the Holy Grail, as sought after as the "theory of everything" in physics. I don't see it happening anytime soon. And wouldn't it be boring then ayway?
              daveyb

                5 days later

                MC10Guru I went and had a look through the code in the Github allwinner-bare-metal framework repository and can see the amount of work that has gone into creating the bare-metal layer. I'm assuming that some of that effort is searching for already existing solutions, while other is connecting it all together and getting it to work. Uli has definitely done a great job pulling it all together.

                Ahoy,
                Back on the topic of H3 boards that run Engine BASIC NG...

                I finally received my US$18 FriendlyArm Nanopi M1 H3 512mb computer in yesterday's post. In 2 minutes I had it hooked up and it booted straight to EB NG. This SBC has 3xUSB2 & 1xmicroUSB OTG plus things like a microphone, IR, HDMI & CVBS out all on a 56mm square board. I added a litlle RPi SOC heat sink just in case.

                Today I'll mount it on a 7" LCD monitor for a complete EB NG system. I also found out my Rii K18 rechargable wireless keyboard/touchpad has a "stay awake for 2 hours" mode so it's totally usable in EB NG. I'll use my battery pack when I need to make it a fully portable setup.

                When I get my 10" screen/case kit from Amazon I'll put my Libre Tritium SBC in that. I can use it for EB NG but I have a feeling it will be mostly used for RetrOrangePi. I ordered two different small powered speaker setups to try with that. I have a Sunfounder 10" LCD monitor with a good LCD panel but a bad driver board. It has 2 good flat speakers but I'm not sure how they are powered and I'm not sure I want to part it out just yet.

                Next major step: Go to the Github EB NG Wiki, figure out how and then help edit/update some info on there.
                Happy Holidays,
                daveyb

                  MC10Guru Wow, that must have been a really good buy. Now they're priced at $48 but are listed as temporarily unavailable.You definitely have to grab them when you see them.

                  Sounds like you've got a neat portable setup going there. Shame we can't easily share photos on this forum.

                    13 days later

                    guidol They look very small and compact, but without onboard HDMI output they are not much good to me for a BASIC Engine platform.

                      Ahoy,
                      First, what Hawk said...I looked at the OPi Zero and it also has no video output. I'm not into SSHing or UARTing. Last night on eBay a Chinese dealer had OPi One 512mb boards for $25+tax (it has HDMI). They sold out overnight. "He who hesitates is lost" I thought 😐

                      Now about a strange thing that happened this week. I bought an MXQ Pro 5G box out of curiosity. It's supposed to have an Amlogic S905, Android 10.1, 4G+64G, BT4.0 etc. This box turned out to be a total fake. It's really an H3 1+8 board with Android 7.0. I consider that a plus if it boots EB NG. Unlike the R69 it has all 4 USB ports and a fullsize SD slot but, also like my R69, this fake MXQ Pro will not boot anything from the SD card slot (EB NG, Armbian 10, Lubuntu 16.04, ROPi 4.3). So for now it's in my "junk TV Box" Box.. Out of 5 H3 Tv Boxes one boots everything, one boots EB NG only and the rest boot nothing from the card slot πŸ™

                      Guidol: You of Armbian fame (I'm not worthy, I'm not worthy) I'm reading the R69 thread on the Armbian forums right now. Perhaps you could tell me why 3 of my 5 H3 Android TV boxes will not boot anything but a recovery SD card even though the H3 should boot from SD first? I futzed up my Turwell T95S box in a failed flashing experiment so I successfully flashed the original firmware from a uSD card just fine. But it still boots nothing else. And the Longyi T95S boots EB NG but not any other Op Sys from the card slot. It's very confusing πŸ˜…

                      I do wish we had private messaging on here. Other than that I like this forum very much 😁 Happy holidays all!
                      daveyb

                        Hawk
                        Oops - Sorry - I totally missed to se that the NanoPi ZeroPi has no HDMI, because with armbian (where it is supported) I mostly run the boards headless via SSH πŸ˜‰

                        Powered by: FreeFlarum.
                        (remove this footer)