[Work In Progress] OPNsense Ported into ARM Devices

Started by nekoprog, March 25, 2019, 11:55:58 AM

Previous topic - Next topic
October 21, 2022, 05:19:27 PM #315 Last Edit: October 21, 2022, 06:08:27 PM by sparticle
I have a decommissioned RPI4 that I am wanting to run OPNSense on. I have tried this build for the RPI4 but it does not boot.Blink code suggests it can't find the kernel.img.

https://www.yrzr.tk/opnsense-22-for-aarch64/

Can anyone suggest how I get a build up and running on the RPI4? At this location, I only have a 40/10 VDSL service so the USB3 J5 Create nic should be fine.

Really would like to play with a working build. I saw earlier in the thread someone said they had a 22.7 build running.

I have tested my hardware with the standard FBSD aarch64 image and it boots first time so I know the hardware is good.

Any help is appreciated.

Cheers

Talking to myself probably.

I managed to get the 22.1.10 image to boot on my RPI4 after connecting a ttl adaptor and seeing what was going on. Weirdly I think it was a corrupt write operation to the card.

I decompressed the image first then wrote it to the sd card rather than let Ubuntu disks app do it on the fly.

That worked and I had a booting image.

It is very snappy compared to my vmware OPNSense with much more resources.

Is it possible to get a build of the latest 22.7 as it has a few inclusions we need one being APCUPSD service.

But this has been a great surprise and I am a little shocked at all the negative comments regarding running OPNSense on the RPI4 I am using the native GbE adaptor as the lan adaptor and a J5Create USB3 Adaptor as the wan adaptor.

It uses the axe driver and is recognised and configed perfectly and seems to work without any issues.

As this seems to be a 'standard' aarch64 build it would be great to see this as a standard build from OPNSense ARM devices are proliferate and incredibly performant for the power footprint.

Thank you to yrzr for all the work producing these builds and the corresponding installation and configuration notes.

This is the link I followed https://www.yrzr.tk/opnsense-22-for-aarch64/ to get a working build.

Cheers
Spart

I followed what I understood on https://yrzr.tk/opnsense-22-for-aarch64/
but can't get RPI4B system to boot. I don't have a serial adapter so unfortunately can't troubleshoot a lot.

Here is what I did:

Downloaded:
OPNsense-22.1.10-OpenSSL-arm-aarch64-RPI.img.xz
and
OPNsense-22.7.5-OpenSSL-arm-aarch64-RPI.img.xz

Used Raspberry Pi Imager to write the img to file. Renamed config_rpi4.txt to config.txt and deleted config_rpi3.txt . Put the newly flashed card into RPI4 and powered it up. It gets to the rainbow/multicolour splash screen and then nothing. This was the case for both img files, written with either Raspberry Pi Imager or Balena Etcher, unarchived first or provided as .xz to the imager. I tried this on two RPI4.

I tried booting the same card on RPI3B+ with config_rpi3.txt renamed to config.txt and it booted, showing the boot process. I set a static IP and then used config_rpi4.txt renamed to config.txt to boot rpi4. Got the rainbow screen but could still access the system. So there is something wrong with the video.

Is there something wrong with the default config_rpi4.txt? What could I try to get the console to show on hdmi output?

Thanks

Quote from: goos on August 27, 2022, 08:15:39 PM
Hi all, excited to join in on the fun here!

I currently have 22.7 running from yrzr.tx on an R4S. I now see from a few posts above that this version is broken  so I'll try 22.1.10 shortly. My hope is to replace my hp t730 for home use.

After enabling powerd and setting it to maximum cpu frequency scaling I am able to push around 400mbit in each direction through the unit in cursory iperf3 testing.
I have a Cisco T-Rex benchmarking setup and I plan to do more in depth testing - different packet sizes, number of flows, open states, etc.

When initially testing on openwrt I was able to pin irqs and receive queues for the two nics to the faster A72 cores which was a notable improvement.
Is this possible in opnsense/freebsd? I did a bit of googling and didn't find any definitive answers.

I also have two R4SE's (I dream of HA firewall at home) with 32gb of emmc onboard.
I have tried flashing a few different opnsense images using rkdevtool with no success yet (I didn't really expect it to justwork).
Anyone have any ideas on that? It seems the tool wants the image split into various partitions, but it does allow me to just flash the whole image starting at 0x0.
I haven't dived into the image build process but I'm sure I'll dig into that soon.
I have a 3v3 rs232 adapter on the way so I'll be able to get a console on these things soon.

Anyway, happy to test/help/etc!

Can only confirm that I always build the R4S images myself (R4S is one of the standard targets) and never had an issue with these. Recently upgraded from 22.1 to 22.7 without an hitch. Building on a Rock PI4 - which has an SSD - as that is native build which takes 1+ day.
OPNSense on Elite Edition Intel N100 - Crucial 16G DDR - Lexar NM620 512GB

Quote from: gwurb on November 03, 2022, 08:25:25 AM
I followed what I understood on https://yrzr.tk/opnsense-22-for-aarch64/
but can't get RPI4B system to boot. I don't have a serial adapter so unfortunately can't troubleshoot a lot.

Here is what I did:

Downloaded:
OPNsense-22.1.10-OpenSSL-arm-aarch64-RPI.img.xz
and
OPNsense-22.7.5-OpenSSL-arm-aarch64-RPI.img.xz

Used Raspberry Pi Imager to write the img to file. Renamed config_rpi4.txt to config.txt and deleted config_rpi3.txt . Put the newly flashed card into RPI4 and powered it up. It gets to the rainbow/multicolour splash screen and then nothing. This was the case for both img files, written with either Raspberry Pi Imager or Balena Etcher, unarchived first or provided as .xz to the imager. I tried this on two RPI4.

I tried booting the same card on RPI3B+ with config_rpi3.txt renamed to config.txt and it booted, showing the boot process. I set a static IP and then used config_rpi4.txt renamed to config.txt to boot rpi4. Got the rainbow screen but could still access the system. So there is something wrong with the video.

Is there something wrong with the default config_rpi4.txt? What could I try to get the console to show on hdmi output?

Thanks

A great investment <10$ is a USB to TTL serial adaptor. Try DSD TECH

This allows you to congfig the serial out when booting to follow the boot process and interact.

Cheers
Spart

Quote from: gwurb on November 03, 2022, 08:25:25 AM
I followed what I understood on https://yrzr.tk/opnsense-22-for-aarch64/
but can't get RPI4B system to boot. I don't have a serial adapter so unfortunately can't troubleshoot a lot.

Here is what I did:

Downloaded:
OPNsense-22.1.10-OpenSSL-arm-aarch64-RPI.img.xz
and
OPNsense-22.7.5-OpenSSL-arm-aarch64-RPI.img.xz

Used Raspberry Pi Imager to write the img to file. Renamed config_rpi4.txt to config.txt and deleted config_rpi3.txt . Put the newly flashed card into RPI4 and powered it up. It gets to the rainbow/multicolour splash screen and then nothing. This was the case for both img files, written with either Raspberry Pi Imager or Balena Etcher, unarchived first or provided as .xz to the imager. I tried this on two RPI4.

I tried booting the same card on RPI3B+ with config_rpi3.txt renamed to config.txt and it booted, showing the boot process. I set a static IP and then used config_rpi4.txt renamed to config.txt to boot rpi4. Got the rainbow screen but could still access the system. So there is something wrong with the video.

Is there something wrong with the default config_rpi4.txt? What could I try to get the console to show on hdmi output?

Thanks

Same here (raspberry pi 4 8GB). Tried extracting the xz file before running dd, according to the instructions in https://yrzr.tk/opnsense-22-for-aarch64/#41-writing-the-image, but to no avail.

I can't either get the image to work under qemu, it boots and after I configure the ethernet adapters it hangs completely.

Hi,

I know, older thread... Does somebody has a working port of newer opnsense for orange pi r1 plus? Or has a download link for it? Thx

antonio

It's not clear if you got a corrupted download, or whether you were able to decompress the image, or what the flash drive layout looks like after you wrote the raw blocks to it or what.

Do you have enough troubleshooting skills to understand what can go wrong with those steps and how to verify whether it did or not?

Quote from: gmiranda on January 16, 2023, 09:56:43 PM
Quote from: gwurb on November 03, 2022, 08:25:25 AM
I followed what I understood on https://yrzr.tk/opnsense-22-for-aarch64/
but can't get RPI4B system to boot. I don't have a serial adapter so unfortunately can't troubleshoot a lot.

Here is what I did:

Downloaded:
OPNsense-22.1.10-OpenSSL-arm-aarch64-RPI.img.xz
and
OPNsense-22.7.5-OpenSSL-arm-aarch64-RPI.img.xz

Used Raspberry Pi Imager to write the img to file. Renamed config_rpi4.txt to config.txt and deleted config_rpi3.txt . Put the newly flashed card into RPI4 and powered it up. It gets to the rainbow/multicolour splash screen and then nothing. This was the case for both img files, written with either Raspberry Pi Imager or Balena Etcher, unarchived first or provided as .xz to the imager. I tried this on two RPI4.

I tried booting the same card on RPI3B+ with config_rpi3.txt renamed to config.txt and it booted, showing the boot process. I set a static IP and then used config_rpi4.txt renamed to config.txt to boot rpi4. Got the rainbow screen but could still access the system. So there is something wrong with the video.

Is there something wrong with the default config_rpi4.txt? What could I try to get the console to show on hdmi output?

Thanks

Same here (raspberry pi 4 8GB). Tried extracting the xz file before running dd, according to the instructions in https://yrzr.tk/opnsense-22-for-aarch64/#41-writing-the-image, but to no avail.

I can't either get the image to work under qemu, it boots and after I configure the ethernet adapters it hangs completely.
---
j

February 08, 2023, 09:20:35 AM #323 Last Edit: February 15, 2023, 08:30:27 AM by maxiecool2
hi guys, i just received my banana pi BPI-R2P, i fave found a config file from buildroot. (https://github.com/frank-w)
im a noob at bsd, how do i test the config file? is it "make test"?
thanks guys
mat
ok scratch that!!! i was assuming that the config file was a kernel build file
so ill change it to how do i insert kernel modules from https://github.com/ARM-software/arm-trusted-firmware
the cpu module i need is cortex a55
or can i build a bsd kernel and then install opnsense (this seems an easier option for everyone, build the kernel first)

Sadly there is no image for this board, I doubt anyone is working on this device support.

You can ask for help in BPI forum, or ask then to send samples to the team who can help bring up this device support on BSD, freebsd and opnsense.

Regards,

The latest images work just fine.  If you're having trouble getting them onto an sdcard I would suggest using 7-zip to unpack them and balena etcher to write them.

Keep in mind, first boot takes almost 2 minutes on an rpi4, older models will be slower.  If you don't have a USB adapter attached, the built-in port will default to LAN and have a 192.168.1.1 address.  For HDMI use the port that's closest to the USB-C power port.

https://www.yrzr.tk/opnsense-22-for-aarch64/
https://ftp.yrzr.tk/opnsense/FreeBSD%3A13%3Aaarch64/22.7/images/
https://www.7-zip.org/
https://github.com/balena-io/etcher


Quote from: spikerguy on February 20, 2023, 07:35:23 PM
Sadly there is no image for this board, I doubt anyone is working on this device support.

You can ask for help in BPI forum, or ask then to send samples to the team who can help bring up this device support on BSD, freebsd and opnsense.

Regards,

i have the source code and trusted arm firmware what files do i need to send in

I am new to opnsense and need to buy new hardware for it.

Which ARM device has best support? What do you recommend me?

x86 uses too much power, and power is expensive where I live

Just testing the 22.7.11 build from here. https://www.yrzr.tk/opnsense-22-for-aarch64/

Installs fine remember to copy one of the config_rpi3 or 4 to config.txt before inserting the sd card.

Loaded the config from my current opnsense box with a couple of mods to the IP addresses and interface names.

However, on update it gets stuck at [3/5] Extracting ruby-2.7.6_2,1: .....

Not sure what the fix is.

On reboot hangs on the serial interface after showing the interface assignments and keys.

No further response on the serial port.

Cheers


Hi

4.2 Modify config.txt (RPI only)
The config.txt in the first partition needs to be modified depending on the RPI model you get. There are also config_rpi*.txt files for your reference.

Additionally, you can add the following lines in config.txt to enable serial console:

1
2
3
# Fix mini UART input frequency, and setup/enable up the UART.
uart_2ndstage=1
enable_uart=1

Can you explain to me how to use these files, should I modify them, rename them, or what? Please help