1.2.45 firmware ready for brave alpha testers ;-)

This is a bugfix release - please alpha testers, can you report back on if it worked for you? I’d like to include this firmware in a new android app release.

  • Add a native linux binary to the release directory - for use with the pine64 lora USB dongle.
  • Fix a rare assertion failure which could occur due to pending interrupts. Multinode stresss test has now run for a week without any failures.
  • Cleanup SSL/wifi software
  • Automatically reconnect to MQTT server on wifi reconnect (if configured)
  • Disable bluetooth while using wifi (ESP32 stack is buggy without this)
4 Likes

So, i’was install, look like it’s work fine. so but here a question, where i’can found a step by step howto to connect and use mqtt server mqtt.meshatstic.org 'cause i’was enable wifi and enable uplink and downlink. but i’dont see in meshtastic --info some mqtt connection. maybe i’m blind but i’dont found also some mqtt settings …

1 Like

iβ€˜dont know how, but now itβ€˜s look, like it is connected to the hole world … :wink:

iβ€˜will try more, iβ€˜m using tbeam …

grettings to brasil, berlin and some unknown locations … :wink:

1 Like

Wifi looking good and stable on TBeam 1.1

1 Like

ok thanks ya’ll I’ll push out an android build with this and some minor bug fixes.

Because I had wifi configured when I updated the firmware (using the new Android app release) I lost bluetooth. The app thinks the device is just sleeping, but I have a hunch it’s not coming back until I use USB to disable wifi again.

That’s fine, but it was confusing at first. I wondered would it be possible to alternate them in some sensible way, enabling wifi when bluetooth is sleeping maybe. Some forums suggest that as long as you’re careful to not push data at both at the same time they should be able to coexist.

after some discussion it was changed for WiFi stability: Esp32 feedback requested: disable bluetooth while wifi is enabled

To disable WiFi via CLI:

meshtastic --set wifi_ssid "" --set wifi_password ""

if you can find your device IP through your router you can update settings via TCP adding --host (your_device_IP)

A casual test with 1.2.45 build seems to work on my T-Beam 1, R-Echo & Wisblock RAK4630.
A test protocol would be good. If one of the lead devs set out a list for testers to step through, we would be able to give more informative reports.
73
Greg

1 Like

I am having issues with β€œRemote Admin” functionality in general and with this latest alpha firmware

Following guide from

Here is what i did to test

Flashed 2 TLora32 v1 devices with alpha firmware attached via USB0 and USB1

sudo ./device-install.sh -p /dev/ttyUSB0 firmware-tlora-v1-1.2.45.b674054.bin
sudo ./device-install.sh -p /dev/ttyUSB1 firmware-tlora-v1-1.2.45.b674054.bin

Configured Region, Channel ID, Channel Name, Admin Channel and Modem Config same on both devices

meshtastic --port /dev/ttyUSB0 --set region EU865

meshtastic --ch-set id 2009 --port /dev/ttyUSB0

meshtastic --port /dev/ttyUSB0 --ch-set name "PenguinFarm"

meshtastic --ch-add admin --port /dev/ttyUSB0

meshtastic --ch-set modem_config Bw500Cr45Sf128 --port /dev/ttyUSB0

meshtastic --port /dev/ttyUSB1 --set region EU865

meshtastic --ch-set id 2009 --port /dev/ttyUSB1

meshtastic --port /dev/ttyUSB1 --ch-set name "PenguinFarm"

meshtastic --ch-add admin --port /dev/ttyUSB1

meshtastic --ch-set modem_config Bw500Cr45Sf128 --port /dev/ttyUSB1

Set the URL same on both devices

meshtastic --port /dev/ttyUSB1 --seturl https://www.meshtastic.org/d/#ChcYASIBASoLUGVuZ3VpbkZhcm1V2QcAAAopIiDxCYjVAOAK5nPw-M7ttG9SgffEWzuY6vQtDSX5bWj8ryoFYWRtaW4 Connected to radio

Confirmed that the Complete URL matched on both devices

meshtastic --port /dev/ttyUSB0 --info
Connected to radio

Owner: Unknown f5a0 (?A0)

My info: { "myNodeNum": 3186685344, "numBands": 10, "firmwareVersion": "1.2.45.b674054", "rebootCount": 7, "messageTimeoutMsec": 300000, "minAppVersion": 20200, "maxChannels": 8 }

Nodes in mesh:
  {'num': 3186685344, 'user': {'id': '!bdf0f5a0', 'longName': 'Unknown f5a0', 'shortName': '?A0', 'macaddr': 'fJ698PWg', 'hwModel': 'TLORA_V1'}, 'position': {}}
  {'num': 681019020, 'user': {'id': '!2897868c', 'longName': 'Unknown 868c', 'shortName': '?8C', 'macaddr': 'JG8ol4aM', 'hwModel': 'TLORA_V1'}, 'snr': 10.75}

Preferences: { "phoneTimeoutSecs": 900, "lsSecs": 300, "region": "EU865" }

Channels:
  PRIMARY psk=default { "modemConfig": "Bw500Cr45Sf128", "psk": "AQ==", "name": "PenguinFarm", "id": 2009 }
  SECONDARY psk=secret { "psk": "PpbKCuVHJiawvM5IwXDh0tAE6XRkaeChxRmLqUyXY/A=", "name": "admin" }

Primary channel URL: https://www.meshtastic.org/d/#ChcYASIBASoLUGVuZ3VpbkZhcm1V2QcAAA
Complete URL (includes all channels): https://www.meshtastic.org/d/#ChcYASIBASoLUGVuZ3VpbkZhcm1V2QcAAAopIiA-lsoK5UcmJrC8zkjBcOHS0ATpdGRp4KHFGYupTJdj8CoFYWRtaW4


meshtastic --port /dev/ttyUSB1 --info
Connected to radio

Owner: Unknown 868c (?8C)

My info: { "myNodeNum": 681019020, "numBands": 10, "firmwareVersion": "1.2.45.b674054", "rebootCount": 6, "messageTimeoutMsec": 300000, "minAppVersion": 20200, "maxChannels": 8 }

Nodes in mesh:
  {'num': 681019020, 'user': {'id': '!2897868c', 'longName': 'Unknown 868c', 'shortName': '?8C', 'macaddr': 'JG8ol4aM', 'hwModel': 'TLORA_V1'}, 'position': {}, 'lastHeard': 1630401367}
  {'num': 3186685344, 'user': {'id': '!bdf0f5a0', 'longName': 'Unknown f5a0', 'shortName': '?A0', 'macaddr': 'fJ698PWg', 'hwModel': 'TLORA_V1'}, 'position': {'time': 1630401303}, 'lastHeard': 1630401341, 'snr': 5.0}

Preferences: { "phoneTimeoutSecs": 900, "lsSecs": 300, "region": "EU865" }

Channels:
  PRIMARY psk=default { "modemConfig": "Bw500Cr45Sf128", "psk": "AQ==", "name": "PenguinFarm", "id": 2009 }
  SECONDARY psk=secret { "psk": "8QmI1QDgCuZz8PjO7bRvUoH3xFs7mOr0LQ0l+W1o/K8=", "name": "admin" }

Primary channel URL: https://www.meshtastic.org/d/#ChcYASIBASoLUGVuZ3VpbkZhcm1V2QcAAA
Complete URL (includes all channels): https://www.meshtastic.org/d/#ChcYASIBASoLUGVuZ3VpbkZhcm1V2QcAAAopIiDxCYjVAOAK5nPw-M7ttG9SgffEWzuY6vQtDSX5bWj8ryoFYWRtaW4

Disconnected the 1 device from USB0
Sent message to remote device from the USB1 connected device

meshtastic --port /dev/ttyUSB1 --dest \!bdf0f5a0 --sendtext "123"

Nodes

meshtastic --port /dev/ttyUSB1 --nodes
Connected to radio
╒═════╀══════════════╀═══════╀═══════════╀═════════╀═════════════════════╀════════════════╀════════════╀═════════════╀════════════╀═══════════╕
β”‚   N β”‚ User         β”‚ AKA   β”‚ ID        β”‚ SNR     β”‚ LastHeard           β”‚ Since          β”‚ Latitude   β”‚ Longitude   β”‚ Altitude   β”‚ Battery   β”‚
β•žβ•β•β•β•β•β•ͺ══════════════β•ͺ═══════β•ͺ═══════════β•ͺ═════════β•ͺ═════════════════════β•ͺ════════════════β•ͺ════════════β•ͺ═════════════β•ͺ════════════β•ͺ═══════════║
β”‚   1 β”‚ Unknown 868c β”‚ ?8C   β”‚ !2897868c β”‚ N/A     β”‚ 2021-08-31 11:11:51 β”‚ just now       β”‚ N/A        β”‚ N/A         β”‚ N/A        β”‚ N/A       β”‚
β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚   2 β”‚ Unknown f5a0 β”‚ ?A0   β”‚ !bdf0f5a0 β”‚ 6.00 dB β”‚ 2021-08-31 11:01:02 β”‚ 10 minutes ago β”‚ N/A        β”‚ N/A         β”‚ N/A        β”‚ N/A       β”‚
β•˜β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•›

But trying to get remote info fails

user@ws:~$ meshtastic --port /dev/ttyUSB1 --dest \!bdf0f5a0 --info
Connected to radio


INFO:root:Requesting preferences from remote node (this could take a while)
ERROR:root:Error while handling message from radio 'admin'
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 873, in __reader
    self._handleFromRadio(self._rxBuf[HEADER_LEN:])
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 554, in _handleFromRadio
    self._handlePacketFromRadio(fromRadio.packet)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 692, in _handlePacketFromRadio
    handler.callback(asDict)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/node.py", line 291, in onResponse
    self.radioConfig = p["decoded"]["admin"]["raw"].get_radio_response
KeyError: 'admin'
^CTraceback (most recent call last):
  File "/usr/local/bin/meshtastic", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__main__.py", line 663, in main
    common()
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__main__.py", line 512, in common
    onConnected(client)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__main__.py", line 398, in onConnected
    getNode().showInfo()
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__main__.py", line 202, in getNode
    targetNode = interface.getNode(args.destOrLocal)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 240, in getNode
    if not n.waitForConfig():
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/node.py", line 141, in waitForConfig
    return self._timeout.waitForSet(self, attrs=('radioConfig', 'channels'))
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/util.py", line 66, in waitForSet
    time.sleep(self.sleepInterval)
KeyboardInterrupt


user@ws:~$ meshtastic --port /dev/ttyUSB1 --dest \!bdf0f5a0 --info
Connected to radio


INFO:root:Requesting preferences from remote node (this could take a while)
ERROR:root:Error while handling message from radio 'admin'
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 873, in __reader
    self._handleFromRadio(self._rxBuf[HEADER_LEN:])
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 554, in _handleFromRadio
    self._handlePacketFromRadio(fromRadio.packet)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/__init__.py", line 692, in _handlePacketFromRadio
    handler.callback(asDict)
  File "/usr/local/lib/python3.9/dist-packages/meshtastic/node.py", line 291, in onResponse
    self.radioConfig = p["decoded"]["admin"]["raw"].get_radio_response
KeyError: 'admin'
Aborting due to: Timed out waiting for node config

Anyone else tried this with success ?

I worked a couple of times on previous tests, but only just after the devices was restarted

@geeksville

OK, so it turns out the issue only happens when setting modem_config to Bw500Cr45Sf128

Other modes working

Setting		Name		Bandwidth	Coding Rate	Spread Factor			Speed		
Bw125Cr48Sf4096		LongSlow	125 kHz		4/8		12 = 4096chips/symbol		183 bps
Bw31_25Cr48Sf512	LongAlt		31.25 kHz	4/8		9 = 512chips/symbol		275 bps
**Bw500Cr45Sf128**		ShortFast	500 kHz		4/5		7 = 128chips/symbol		21.875 kbps
Bw125Cr45Sf128		Medium		125 kHz		4/5		7 = 128chips/symbol		5.469 kbps
user@ws:~$ meshtastic --port /dev/ttyUSB1 --dest \!bdf0f5a0 --info
Connected to radio


INFO:root:Requesting preferences from remote node (this could take a while)
INFO:root:Requesting channel 0 info from remote node (this could take a while)
INFO:root:Requesting channel 1 info from remote node (this could take a while)
INFO:root:Requesting channel 2 info from remote node (this could take a while)
Preferences: { "phoneTimeoutSecs": 900, "lsSecs": 300, "region": "EU865" }

Channels:
  PRIMARY psk=default { "psk": "AQ==", "name": "PenguinFarm", "id": 2009 }
  SECONDARY psk=secret { "psk": "KLx93zVGXbmtTnjpEObnKKVrwSrnhypnoT2+OtSX1rc=", "name": "admin" }

Primary channel URL: https://www.meshtastic.org/d/#ChUiAQEqC1Blbmd1aW5GYXJtVdkHAAA
Complete URL (includes all channels): https://www.meshtastic.org/d/#ChUiAQEqC1Blbmd1aW5GYXJtVdkHAAAKKSIgKLx93zVGXbmtTnjpEObnKKVrwSrnhypnoT2-OtSX1rcqBWFkbWlu

It hasn’t gronked out on me yet with my T-Beam and LORA32’s.

@geeksville @mark.birss

I can confirm 2 issues: Remotely administering your node Β· Issue #105 Β· meshtastic/Meshtastic-python Β· GitHub

Hi Mark,
I’m unsure as to how you got this to work at all. I have modem config set to β€œBw125Cr48Sf4096” with no luck. All nodes have identical Primary and secondary channels setup sharing same URL, see below:

System: Linux
Platform: Linux-5.16.3-zen1-1-zen-x86_64-with-glibc2.33
Release: 5.16.3-zen1-1-zen
Machine: x86_64
Encoding (stdin): utf-8
Encoding (stdout): utf-8
meshtastic: v1.2.77
Executable: /home/chops/.local/bin/meshtastic
Python: 3.10.2 CPython GCC 11.1.0

─λ meshtastic --info
Connected to radio

Owner: chopstar (chp)
My info: { β€œmyNodeNum”: 4145957596, β€œhasGps”: true, β€œnumBands”: 20, β€œfirmwareVersion”: β€œ1.2.53.19c1f9f”, β€œrebootCount”: 24, β€œbitrate”: 17.08847, β€œmessageTimeoutMsec”: 300000, β€œminAppVersion”: 20200, β€œmaxChannels”: 8, β€œhasWifi”: true, β€œairUtilTx”: 2.5628333 }
Nodes in mesh: {β€˜num’: 4145957596, β€˜user’: {β€˜id’: β€˜!f71e4adc’, β€˜longName’: β€˜chopstar’, β€˜shortName’: β€˜chp’, β€˜macaddr’: β€˜30:c6:f7:1e:4a:dc’, β€˜hwModel’: β€˜TBEAM’}, β€˜position’: {β€˜batteryLevel’: 100, β€˜time’: 1643467243}, β€˜lastHeard’: 1643467243} {β€˜num’: 2475138016, β€˜user’: {β€˜id’: β€˜!93879be0’, β€˜longName’: β€˜SITP_9be0’, β€˜shortName’: β€˜STP’, β€˜macaddr’: β€˜44:17:93:87:9b:e0’, β€˜hwModel’: β€˜TBEAM’}, β€˜position’: {β€˜latitudeI’: -266694987, β€˜longitudeI’: 1529644354, β€˜time’:1643466389, β€˜latitude’: -26.6694987, β€˜longitude’: 152.96443539999999}, β€˜lastHeard’: 1643466700, β€˜snr’: 7.25} {β€˜num’: 2475132940, β€˜user’: {β€˜id’: β€˜!9387880c’, β€˜longName’: β€˜BearInTheWoods-Relay’, β€˜shortName’: β€˜Brn’, β€˜macaddr’: β€˜44:17:93:87:88:0c’, β€˜hwModel’: β€˜TBEAM’, β€˜team’: β€˜YELLOW’}, β€˜position’: {β€˜time’:1643298612}, β€˜lastHeard’: 1643463824, β€˜snr’: 7.75}

Preferences: { β€œphoneTimeoutSecs”: 900, β€œlsSecs”: 300, β€œregion”: β€œANZ” }

Channels:
PRIMARY psk=secret { β€œmodemConfig”: β€œBw125Cr48Sf4096”, β€œpsk”: β€œYSFOPxGE5Tnl2d2y7XGiPFTeGkKoNFfj0sTciSvoBcw=”, β€œname”: β€œSITP”, β€œid”: 369 }
SECONDARY psk=secret { β€œpsk”: β€œZLp/a8uTJ/6mRqpoxlJVZdjWsB+sMao9Z6OSIoddfEc=”, β€œname”: β€œadmin” }

Primary channel URL: Meshtastic URL | Meshtastic
Complete URL (includes all channels): Meshtastic URL | Meshtastic

:mag:] Γ— meshtastic --dest !93879be0 --get ls_secs
Connected to radio
Requesting preferences from remote node.
Be sure:

  1. There is a SECONDARY channel named β€˜admin’.
  2. The β€˜β€“seturl’ was used to configure.
  3. All devices have the same modem config. (i.e., β€˜β€“ch-longfast’)
  4. All devices have been rebooted after all of the above. (optional, but recommended)
    Note: This could take a while (it requests remote channel configs, then writes config)
    Requesting channel 0 info from remote node (this could take a while)
    ERROR file:stream_interface.py reader line:165 Error while handling message from radio β€˜admin’
    Traceback (most recent call last):
    File β€œ/home/chops/.local/lib/python3.10/site-packages/meshtastic/stream_interface.py”, line 163, in reader
    self._handleFromRadio(self._rxBuf[HEADER_LEN:])
    File β€œ/home/chops/.local/lib/python3.10/site-packages/meshtastic/mesh_interface.py”, line 535, in _handleFromRadio
    self._handlePacketFromRadio(fromRadio.packet)
    File β€œ/home/chops/.local/lib/python3.10/site-packages/meshtastic/mesh_interface.py”, line 685, in _handlePacketFromRadio
    handler.callback(asDict)
    File β€œ/home/chops/.local/lib/python3.10/site-packages/meshtastic/node.py”, line 322, in onResponseRequestChannel
    c = p[β€œdecoded”][β€œadmin”][β€œraw”].get_channel_response
    KeyError: β€˜admin’
    Error: Timed out waiting for node config

Yes, i see changes were made, tried again

It not working consistently for me at all, worked once then get Timeout or

Error on response: MAX_RETRANSMIT

meshtastic --info --nodes --port /dev/ttyACM0 --dest \!1cea1a76
Connected to radio


Requesting preferences from remote node.
Be sure:
 1. There is a SECONDARY channel named 'admin'.
 2. The '--seturl' was used to configure.
 3. All devices have the same modem config. (i.e., '--ch-longfast')
 4. All devices have been rebooted after all of the above. (optional, but recommended)
Note: This could take a while (it requests remote channel configs, then writes config)
Requesting channel 0 info from remote node (this could take a while)
Requesting channel 1 info from remote node (this could take a while)
Requesting channel 2 info from remote node (this could take a while)
Preferences: { "phoneTimeoutSecs": 900, "lsSecs": 300, "region": "EU865", "positionFlags": 35, "isAlwaysPowered": true }

Channels:
  PRIMARY psk=default { "modemConfig": "Bw125Cr48Sf4096", "psk": "AQ==", "name": "PenguinFarm", "id": 2009 }
  SECONDARY psk=secret { "psk": "iFXDAtaYsMFOxwV/GTsJZElfC7LbY7eHzXEuOiC0cz8=", "name": "admin" }

Primary channel URL: https://www.meshtastic.org/d/#ChcYAyIBASoLUGVuZ3VpbkZhcm1V2QcAAA
Complete URL (includes all channels): https://www.meshtastic.org/d/#ChcYAyIBASoLUGVuZ3VpbkZhcm1V2QcAAAopIiCIVcMC1piwwU7HBX8ZOwlkSV8Lsttjt4fNcS46ILRzPyoFYWRtaW4

╒═════╀══════════════╀═══════╀═══════════╀════════════╀═════════════╀════════════╀═══════════╀═════════╀═════════════════════╀══════════════╕
β”‚   N β”‚ User         β”‚ AKA   β”‚ ID        β”‚ Latitude   β”‚ Longitude   β”‚ Altitude   β”‚ Battery   β”‚ SNR     β”‚ LastHeard           β”‚ Since        β”‚
β•žβ•β•β•β•β•β•ͺ══════════════β•ͺ═══════β•ͺ═══════════β•ͺ════════════β•ͺ═════════════β•ͺ════════════β•ͺ═══════════β•ͺ═════════β•ͺ═════════════════════β•ͺ══════════════║
β”‚   1 β”‚ Unknown 1a76 β”‚ ?76   β”‚ !1cea1a76 β”‚ N/A        β”‚ N/A         β”‚ N/A        β”‚ 87.00%    β”‚ 6.00 dB β”‚ 2022-01-30 11:47:53 β”‚ 1 minute ago β”‚
β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚   2 β”‚ Unknown d68c β”‚ ?8C   β”‚ !b3b0d68c β”‚ N/A        β”‚ N/A         β”‚ N/A        β”‚ 88.00%    β”‚ N/A     β”‚ 2022-01-30 11:47:29 β”‚ 1 minute ago β”‚
β•˜β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•§β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•›