HackerGadgets AIO Board Package

How to update meshtastic firmware on AIO board?

I believe Rex will have to rework the package to add the latest version.

meshtasticd will update from the meshtastic repo when you do an update. There’s no firmware to be updated.

2 Likes

Where is the link for this image?

See the first post on how to install

1 Like

Does this work on Kali?

291 packages can be upgraded. Run ā€˜apt list --upgradable’ to see them.
hackergadgets-uconsole-aio-board is already the newest version (1.41).
The following packages were automatically installed and are no longer required:
amass-common libjxl0.10 libsqlcipher1
firmware-ti-connectivity libmongoc-1.0-0t64 libswscale8
libavfilter10 libnet1 pocketsphinx-en-us
libavformat61 libplacebo349 python3-bluepy
libbson-1.0-0t64 libpocketsphinx3 python3-click-plugins
libconfig-inifiles-perl libpostproc58 python3-kismetcapturebtgeiger
libdisplay-info2 libradare2-5.0.0t64 python3-kismetcapturefreaklabszigbee
libgdata-common libsframe1 python3-kismetcapturertl433
libgdata22 libsigsegv2 python3-kismetcapturertladsb
libgeos3.13.1 libsoup-2.4-1 python3-kismetcapturertlamr
libgpgmepp6t64 libsoup2.4-common python3-pysmi
libinstpatch-1.0-2 libsphinxbase3t64 python3-zombie-imp
Use ā€˜sudo apt autoremove’ to remove them.

Summary:
Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 291
Solving dependencies… Error!
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

Unsatisfied dependencies:
meshtastic-mui : Depends: libgpiod-dev but it is not going to be installed
Depends: libyaml-cpp-dev but it is not going to be installed
Depends: libbluetooth-dev but it is not going to be installed
Depends: libusb-1.0-0-dev but it is not going to be installed
Depends: libi2c-dev but it is not going to be installed
Depends: libulfius-dev but it is not going to be installed
Depends: liborcania-dev but it is not going to be installed
Depends: clockworkpi-backlight but it is not going to be installed
Depends: jq but it is not going to be installed
Depends: libusb-1.0-0-dev but it is not going to be installed
Depends: pkg-config
Depends: libjpeg-dev
Depends: tk-dev but it is not going to be installed
Depends: meshtasticd but it is not going to be installed
Error: Unable to satisfy dependencies. Reached two conflicting decisions:

  1. libzstd1:arm64=1.5.6+dfsg-2 is selected for install because:
    1. mitmproxy:arm64=10.2.4+really10.2.3-0kali1 is selected for install
    2. mitmproxy:arm64=10.2.4+really10.2.3-0kali1 Depends python3-zstandard
    3. python3-zstandard:arm64 is available in versions 0.22.0+git20240526-1, 0.25.0-1+b1
      [selected python3-zstandard:arm64=0.22.0+git20240526-1 for install]
    4. python3-zstandard:arm64=0.22.0+git20240526-1 Depends libzstd1 (< 1.5.7~)
      For context, additional choices that could not be installed:
    • In python3-zstandard:arm64 is available in versions 0.22.0+git20240526-1, 0.25.0-1+b1:
      • python3-zstandard:arm64=0.25.0-1+b1 Depends python3 (>= 3.13~)
        but none of the choices are installable:
        • python3:arm64=3.13.7-1+b1 is not selected for install because:
          1. mitmproxy:arm64=10.2.4+really10.2.3-0kali1 is selected for install as above
          2. mitmproxy:arm64=10.2.4+really10.2.3-0kali1 Depends python3-cryptography (< 42.1)
          3. python3-cryptography:arm64=42.0.5-2 Depends python3 (< 3.13)
          4. python3:arm64=3.11.8-1 conflicts with other versions of itself
  2. libzstd1:arm64=1.5.6+dfsg-2 is not selected for install because:
    1. meshtastic-mui:arm64=1.16 is selected for install
    2. meshtastic-mui:arm64 Depends libulfius-dev
    3. libulfius-dev:arm64 Depends libcurl4-gnutls-dev
    4. libcurl4-gnutls-dev:arm64 Depends libzstd-dev
    5. libzstd-dev:arm64 Depends libzstd1 (= 1.5.7+dfsg-2)
    6. libzstd1:arm64=1.5.7+dfsg-2 conflicts with other versions of itself

No it doesn’t work with kali. Only bookworm, Trixie and dragon os.

Hi Gents,

I would like to ask for your help. Recently arrived my uConsole and way much earlier the AIO Board. Assembly was done, no issues. I have challenged myself with the A06; now it is working only over external HDMI. Alex is great, motherboard and LCD replacement is on the way. I use the official A06 image.

The AIO board is not working completely:

  • SDR - yes, it works mostly
  • RTC - reading no over hwclock -r, writing yes, but gives a timeout. dmesg show the update
  • LoRa - not working at all
    • meshtastic - not working
      Dec 25 17:29:05 clockworkpi-a06 meshtasticd[4990]: INFO | 16:29:05 0 Slot time: 28 msec, preamble time: 131 msec
      Dec 25 17:29:05 clockworkpi-a06 meshtasticd[4990]: INFO | 16:29:05 0 Final Tx power: 22 dBm
      Dec 25 17:29:05 clockworkpi-a06 meshtasticd[4990]: INFO | 16:29:05 0 SX126x init result -2
      Dec 25 17:29:05 clockworkpi-a06 meshtasticd[4990]: WARN | 16:29:05 0 No sx1262 radio
      Dec 25 17:29:05 clockworkpi-a06 systemd[1]: meshtasticd.service: Main process exited, code=exited, status=1/FAILURE
      Dec 25 17:29:05 clockworkpi-a06 systemd[1]: meshtasticd.service: Failed with result ā€˜exit-code’.
      Dec 25 17:29:08 clockworkpi-a06 systemd[1]: meshtasticd.service: Scheduled restart job, restart counter is at 5.
      Dec 25 17:29:08 clockworkpi-a06 systemd[1]: meshtasticd.service: Start request repeated too quickly.
      Dec 25 17:29:08 clockworkpi-a06 systemd[1]: meshtasticd.service: Failed with result ā€˜exit-code’.
      Dec 25 17:29:08 clockworkpi-a06 systemd[1]: Failed to start meshtasticd.service - Meshtastic Native Daemon.
  • GPS - not working
    • pygpsclient has error on installation and I can not find the reason why

I have readed all forums and I have made the configuration to make available I2C, UART
Can be that my AIO bord is DoA…

Can you please help me with the investigation?
thanks in advance :slight_smile:

It might not work with the A06 as gpio pins are different and this package is setup to use the RPi CM4/5.

You mean the AIO packages? The kernel handles the I/O; as I understand it, you must call ā€œonlyā€ the correct IRQs. Or have I missed something?

SDR is working most of the time, and I can see the signals - at least this is a good sign. I think the GPS is on the ttyACM0

The package assumes you have a cm4/5 as the lora isn’t a USB device and is running off the gpio. The package configures the pins everything. You might have better luck if you set it all up manually.

1 Like

Can you help me with how, please?

This is the description that I have from HackerGadgets:

As I understand you correctly, I must first remove/purge the installed hackergadgets-uconsole-aio-board package.

How can I determine the right IRQs and interrupts needed, e.g., for LoRa, in your opinion?
here is the example from the above documentation:
Lora:
Module: sx1262 # HackerGadgets RTL-SDR/LoRa extension board
DIO2_AS_RF_SWITCH: true
DIO3_TCXO_VOLTAGE: true
IRQ: 26
Busy: 24
Reset: 25
spidev: spidev1.0

I want to thank you for your time and help :slight_smile: Of course , I will share the information for reuse purposes of coruse.

The lora is connected to the spi gpio on the cm4/5 so you’ll have to figure out what it’s connected to on the a06 and see if they have the same capabilities as the pis

Bus 005 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 [unknown]
bDeviceSubClass 0 [unknown]
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x2838 RTL2838 DVB-T
bcdDevice 1.00
iManufacturer 1 HackerGadgets
iProduct 2 UC AIO Ext
iSerial 3 25062501
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0022
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4 USB2.0-Bulk&Iso
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 [unknown]
bDeviceSubClass 0 [unknown]
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 2
Device Status: 0x0000
(Bus Powered)

I also found that SPI3.0 is used (/sys/bus/spi/devices/spi3.0), but there is no binding, so it must be done manually. The drivers folder, which is also empty, must be filled with content

You need to enable it, but you need to make sure the connections from the core to the AIO are right. Who knows what pins from the A06 are connected to the same pins that the Pis use.

I have enabled all the necessary interfaces over armbian-config. I will check the schematics, because, as I understand you correctly, the uConsole motherboard is more of an extension or splitter for the GPIO port on the computing module. In my opinion, it would be more reasonable if the uConsole motherboard handled the connection dynamically rather than as a wire-by-wire extension.

Do you have an A06 device tree overlay matrix or table? It would be a great help if I knew what I can turn on or off or use at the same time. :slight_smile: thx

@Rex Hey! So I think I’ve ran into a driver/dependency/USB issue. I’ve ran through this with Claude about 30 times and it’s came to the same conclusion…

I’ve been having repeat issues with installing the drivers for the AC1200 adapter. I get them installed, WiFi adapter works flawlessly, then I install this AIO package… then nothing.

I have had to unplug and plugged back in the adapter after every single boot/reboot. Then it seems to work (usually).

kind of a pain in the butt to have to take the backplate off after every boot to unplug the adapter out of the AIO board.

I’ve been given a few ideas to maybe fix the issue I wanted to run by the group:

  1. Udev rule to reset the usb upon every boot/reboot.
  2. Module loading order modification to load the WiFi before AIO/XTRX drivers.

It seems like there is either an issue with XTRX dependencies not liking the MT7921 and other stuff for the AC1200.

Is it even necessary to have whatever is associated with XTRX to be installed? Being that there isn’t even one on the board?

Or is it a USB bus issue with other devices on the AIO board taking that up and not allowing the AC1200 room to work upon boot/reboot?

It’s been a very consistent issue every single time.

I be willing to bet it’s a power issue. Try disabling the systemd service meshtasticd and reboot. I’m guessing the extra draw from the lora chip after you installed the package prevents it from starting on boot. If that fixes it you can just start the meshtasticd service after boot when you want to use it.