Home
Welcome to Functionland 👋🏼
New Articles
- Create a NAS with Your FxBlox — How to install Samba: A Beginners GuideArticleJackson40Oct 19, 2023
Big shout-out to Fierro Labs for this awesome tutorial! It is time to upgrade our FxBlox to something we can actually use! I will show you how to install Samba in just 3 easy steps! We are in search of the best way to set up our Blox as a NAS while the FULA testnet is still under development. This beginner friendly tutorial will allow us to add, remove, and edit files on the Blox all while accessing them on Windows, Mac, or other Linux computers! We are introducing many more Linux fundamentals in this tutorial, but don’t worry I will explain new things thoroughly. “Released in 1992, Samba is an open source implementation of the SMB protocol for Unix systems and Linux distributions. The server supports file sharing and print services, authentication and authorization, name resolution, and service announcements (browsing) between Linux/Unix servers and Windows clients.” (Sheldon, Robert & Scarpati, Jessica. “Server Message Block protocol (SMB protocol)”. TechTarget. August 2021). Since SMB was introduced in the 1980’s, Windows, MacOS, & Linux have supported the SMB protocol to access SMB-enabled remote files servers. In this tutorial you will learn how to: Factory reset your FxBlox device Attach a Keyboard, Video, and Mouse Update the FxBlox’s Linux OS Install Samba through armbian-config Configure Samba on Linux Manage and check Samba status View files hosted in Samba, on Windows and OSX Preface Okay I might have embelished the intro. It is going to take more than just three “easy” steps to set up Samba. But I will hold your hand through it. This tutorial will use ssh. If you want a quick refresher on how that works, check out my last tutorial Create a NAS with Your FxBlox: A Beginner’s Guide Series | by Fierro Labs | Sep, 2023 | Medium. If you want to continue the tutorial using a KVM, then get a mouse and keyboard combo that uses a wireless receiver (I don’t recommend bluetooth). A usb-c to usb-a adapter to connect it and a usb-c to HDMI dongle/cable (usb-c to DisplayPort also works). To factory reset your device, you will also need a usb-c cable that connects to your flash drive. Multi-port dongles/adapters will not work with the Blox. If you do not have any of the above, please consider supporting me by using my amazon affiliate links to order your accessories. Thank you! Usb-c to Usb-a female adapter Usb-c to HDMI female adapter or Usb-c to HDMI male cable Logitech Wireless Keyboard and Mouse combo *Disclosure: As an Amazon Associate I earn from qualifying purchases. Here is the default login information for the FxBlox: Username: pi Password: raspberry Hostname: fulatower Attach Keyboard, Video, & Mouse If you want to continue with the tutorial while interacting with the Blox directly. Then you’ll need the aforementioned cables or adapters. To connect keyboard and mouse, you could connect one to the top usb-c port and the other to the middle one. But I say just get a wireless combo, so you only take up one port. The two bottom usb ports both support DisplayPort which allow you to connect HDMI cable/adapter. Login with the default password, and press Ctrl+Alt+T to bring up the Terminal. Or look for it in the Applications, by clicking on “Activities” on the top left, then the box of nine dots at the bottom. Factory Reset FxBlox I think it is worthwhile to know how to factory reset your device, in case you mess something up or just want to start with a clean slate. Keep in mind, you will have to set up the device through the Blox app again. Factory resetting is possible by flashing the FxBlox with the Fula image provided by Functionland (Releases · functionland/fula-ota (github.com)) with a USB attached to the top usb-c port. Make sure your USB drive is formatted to FAT32. You’re going to want to download the latest version. At the time of this writing it is v1.1.5 (specifically RK1-EMMC-27–08–2023.5G_usb_flash_update.zip) and move it to your flash drive. Unzip the contents and move over all the files to the root directory of the USB drive. So that there are no folders at the root of the USB drive. Feel free to connect the USB drive now or after you’ve unplugged your Blox. But make sure it is ONLY to the TOP most usb-c port! Now, with the usb drive connected. Turn on your Blox, and the light should turn green, then turn yellow. This yellow light will stay on for about 10–15 minutes, indicating that it is applying the update/reset. You will know it is done when the lights alternate between Green and Blue every couple seconds. Now you can remove the usb from the tower and turn it off and on again. The Blox may or may not restart on its own once or twice. Keep an eye out for that and then you can continue to set up the device through the Blox app. *Note 1: After completing setup through the app, you may need to turn off and on the device at the end, for it to be discoverable. You don’t actually have to get a “Setup Complete” screen for it to connect to the wifi (in my experience)! Note 2: In my testing, I found setting up through the Blox app was the only way for the FxBlox to retain the wifi information. That is why I recommend it over just going straight to the desktop with KVM. Note 3: There needed to be an updated image of the Blox, because at the time of launch, the WalletConnect service reworked their API without telling anyone and it messed things up for owners to say the least. Hence the one-off “…_usb_flash_update” image options. Generally, you will just download the source zip folder and follow the same process.* Update the FxBlox’s Linux OS If you are NOT already logged into the FxBlox via ssh or connected directly to it, then we will do so now: ssh pi@fulatower If ‘fulatower’ doesn’t work, use the IP Address of the Blox instead. You can find this under the “Blox Discovery” tab in the Blox app Settings. Or your wifi router’s “Connected Devices” list. To update your FxBlox type: sudo apt update && sudo apt upgrade This will download and install all the components needed to get you up-to-date with the latest Ubuntu release that Blox runs. Now reboot device to apply changes: reboot Now, you can ssh back into the device. Configure the Samba Server on Linux — Part 1 — Create the Share Directories FINALLY, we are ready! Let me lay out the idea of what we are going to do. We are going to create a file sharing server and only permit authorized users access to write to it. Specifically, we are going to give each individual user a space on the Samba server called a “share” and a “public” space for all authorized users to write to. Before we can start, we have to decide where on our Blox we want to create the space for the Samba server. If you’re like me, you want to actually utilize the hard drive you installed into your Blox. My drive is located at /media/pi/nvme0n1p1, you can find yours by typing: df -h You’ll know which one is yours from the capacity of the drive and the “Filesystem” should start with /dev/. As well as the fact that the type of drive installed will be shown. E.g. I installed an nvme drive and you can see nvme in the path. Note 4: when you factory reset your device, this storage drive won’t get reformatted even after doing the setup process through the Blox app. So we’ll start by creating the space for our Samba server and all authorized users. In my case, I am authorizing pi and fierro_labs. IMPORTANT: Substitute the location of your drive in the commands! mkdir /media/pi/nvme0n1p1/FulaShare/ mkdir /media/pi/nvme0n1p1/FulaShare/Public mkdir /media/pi/nvme0n1p1/FulaShare/pi mkdir /media/pi/nvme0n1p1/FulaShare/fierro_labs Now verify they were created by navigating to that directory and listing its contents: cd /media/pi/nvme0n1p1/FulaShare && ls Configure the Samba Server on Linux — Part 2 — Install Samba with armbian-config If you don’t know what armbian-config is, you’re not alone. I recently just learned about it. Shoutout @Fred from the Functionland Telegram channel. It is a tool to configure your armbian-based SBC (Single Board Computer) with a graphical user interface (GUI). You can do various things including: setting up remote desktop control, installing third party software like Samba, and adjusting other system settings. To access armbian-config, you NEED to have your system up-to-date. To access the GUI type: sudo armbian-config You can then use your mouse to: Select Software Select Softy Select Samba and let it finish installing It will now ask you for a Samba username and password. Create one for pi. We’ll make another account after setup. Now we can move on to creating the public share for all users in the workgroup AND each individual users’ share. Use the arrow keys to get to the very end of the file. Copy/paste this into your terminal on a new line or just type it out: [Public] comment = Public directory where all users of the workgroup can read/write browseable = yes writeable = yes guest ok = no force create mode = 0770 force directory mode = 0770 path = /media/pi/nvme0n1p1/FulaShare/Public valid users = @workgroup [homes] comment = Home directories where only the authorized user can read/write browseable = no writeable = yes public = no create mode = 0700 directory mode = 0700 path = /media/pi/nvme0n1p1/FulaShare/%S valid users = %S Remember to replace the path to where you want to store the users' files in your case! Click on “OK” and exit all the way out of armbian-config until you see your Terminal again. Here is a description of each config option’s purpose: [Public]. Represents the share name. This is the directory location users see on their client computer. [homes] is a special share definition. Samba will create shares for new authorized users “on the fly”. This definition will enable us replace [home] with the user’s username when searching for it. Comment. Serves as a directory description. browseable. This parameter allows other machines in the network to find the Samba server and Samba share when set to yes. Otherwise, users must know the exact Samba server name and type in the path to access the shared directory. read only. Can be ‘yes’ or ‘no’. This option specifies if users will be able to only read the share, or write to it too. writeable. Pretty much redundant if read only = no. Grants write access to users when set to yes. guest ok. Allows anyone to read/write if set to yes. Otherwise, username/password is needed to access the specified share. public. Is synonymous to guest ok. Force create mode. Forces file permissions on newly create files by the user to be what is specified here Force directory mode. Forces directory persmissions on newly created directories by the user to be what is specified here. Permission #’s: 4=read,2=write,1=execute. Therefore, 7 = read+write+execute permissions. The three digits represent permissions for: owner, group, & others respectively Path. Specifies the directory to use for a Samba share. The example uses a directory in Fulashare/ valid users. Only the users or group specified can access the specified share. @workgroup. Is a shortcut to reference the group of Linux users who are also registered under that Group name in the Samba server. %S. Is a Samba shortcut to reference the username of a logged in user that is registered in the Samba server. You can come back to edit this configuration file at any time by using an editor of your choice, mine is vim (fight me): sudo vim /etc/samba/smb.conf If you don’t have vim, install it with sudo apt install vim. Okay are you still with me? If you want to learn more about what you just did, I will applaud you if you check out Samba’s official documentation. Or more specifically the smb.conf documentation to learn how you can customize the server for your use case! Configure Samba Server on Linux — Part 3 — Users, Groups, and Permissions The last step to get this to work is to register our users in the Samba server to have a login password. I know so far this has been a heavy lift, but the result will be sweet. I explain a little bit of what each command does, but if you want to learn more, I encourage you to Google the name of the command. Ex: “useradd linux command” or “smbpasswd linux command”. To register users for a Samba account on your server, the general syntax is sudo. smbpasswd -a . Samba accounts can only be made for already existing users on your Blox. And the password doesn’t have to be the same as the one used to log into the Blox. To make a new user account on your Blox AND register it in your Samba server, run all three commands. If you want to create an account in Samba without giving a user a login to your Blox, omit the second command: sudo useradd fierro_labs sudo passwd fierro_labs sudo smbpasswd -a fierro_labs If you ever want to change the Samba password just use: sudo smbpasswd . If you ever want to change the Linux password just use: sudo passwd . Now, we want to create a group called workgroupfor all our users in Linux. This is necessary to give all authorized users access to the Public space on our Samba server. To add users to the group called workgroup, we first have to create the group: sudo groupadd workgroup To add a user to the group: sudo usermod -aG workgroup pi sudo usermod -aG workgroup fierro_labs Setting permissions is what is going to make or break if you can connect to your local Samba server from another computer. At this point you should still be in the /media/pi/nvme0n1o1/FulaShare directory, if not, then do so now. To set permissions: sudo chmod 700 pi/ sudo chmod 700 fierro_labs/ Chmod stands for change mode and it's the command to change the permissions on files and directories. The 700 number means enable read+write+execute permissions for the user only. See config options description above for more info. Lastly, let’s specify the owners of the directories. sudo chown -R pi:workgroup pi/ sudo chown -R fierro_labs:workgroup fierro_labs/ sudo chown -R root:workgroup Public/ chown stands for change owner and it’s the command to change owner and/or group of a file or directory. Your permissions would look something like this: Manage and Check Samba Status We can check if our Samba server is up and running by: sudo systemctl status smbd Press ‘q’ to continue. If you see a green dot or the words “running” and “enabled”, then your server is currently running! If it says the service is “stopped” or “disabled”, then you will want to run sudo systemctl start smbd If you ever want to stop the server, you can run sudo systemctl stop smbd To reapply setting changes to /etc/samba/smb.conf, we will want to restart the server by running sudo systemctl restart smbd View files hosted in Samba, on Windows and OSX When you log into the Samba server as a registered user, you will be able to read and write to your individual share and the public share. IMPORTANT: It is a very annoying and difficult process to log into a different Samba account on the same computer login! For all intents and purposes, you can only log into one Samba account per client computer user! Windows File Explorer: Make sure to have “Network Discovery” on. If you go to the Network tab within File Explorer, and you DON’T have it on. A pop up header will show, asking you to turn on Network Discovery. Now switch to “This PC” tab, and click on the “See More”, three dots options menu. Click on “Map Network Drive” Assign it a letter of your choosing Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Select the Reconnect at sign-in option Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. Windows Run: Press Windows + R Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. MacOS/OSX Check to see if you have the Network tab listed on the left side in Finder. Fulatower should be there already, click on it and it will ask you to log in as a guest or registered user. The Guest option will only allow you to see that the Public folder exists. Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Manual “Connect to Server”: While on the desktop screen (aka Finder), press Command + K. Enter the protocol method (smb://), then the IP address or hostname of the Blox (fulatower), followed by the share you want to access. Ex smb://fulatower/pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. The server should show up under Network or Locations in Finder now. Enjoy your new NAS! Conclusion Holy crap you made it! That was a long tutorial, but you pushed through. This knowledge is key fundamental IT system administration tasks and you just set up your first network share/file server from start to finish! I sure tried my best to explain everything you need to know so that you can confidently understand what the different Samba requirements and what the different options available to you are. Let me know in the comments what was the most difficult part for you? In the next tutorial, we will be leveling up our IT sysadmin knowledge to upgrade our Blox. We will be able to access our files, photos, and any other data on our Blox from anywhere in the world! Not only that, but we’ll be able to view those files from almost literally any device! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content and tutorials. Checkout the Functionland Telegram for support and updates. Cheers!
2 - Create a NAS with Your FxBlox: A Beginner’s Guide SeriesArticleJackson40Oct 19, 2023
Big shout-out to Fierro Labs for this awesome tutorial Origin If you are a FxBlox owner and have successfully set up your device, then you must be wondering, “What do I do now?” Well, I have the answer(s) for you! This is a beginner friendly tutorial to find new ways to use your Blox. As you might know, the FULA testnet is not out yet, and we are currently stuck in this limbo of personal experimentation. People want to learn what we can do with this device while it has no other services running on it. My hope is that these solutions in this series “age well” for all users, in that, we will be able to run concurrent services off our Blox even when the network is up and running. I will monitor the situation closely and provide an update if anything changes. These options increase in technical knowledge, but I will make it easy to follow along, regardless of ability. So, let’s start! Option 1: FxFotos & FxFiles apps If you were like me, the first thing you tried after getting the Blox set up and exploring the Blox app, was download the two apps Functionland has available (one on iOS). Then you tried to figure out how they work together with the Blox. But to your surprise, you couldn’t get it to work and were left wondering if this is just going to be a paper weight until the FULA testnet is out. I won’t talk about this experience again, but if you want to read more about it. Check out Navigating the Functionland App Experience: A Candid Review | by Fierro Labs | Sep, 2023 | Medium Option 2: Network Attached Storage (NAS) TLDR: scp — How to copy a file from a remote server to a local machine? — Unix & Linux Stack Exchange There are MANY ways to set up a NAS, but we are going to start with the VERY basics in this option and get more advanced. If you don’t know what a NAS is, it is simply a storage device that is connected to a network, aka the internet. Simple right? Now, this device does not need a keyboard, video, and mouse (KVM) to operate, but could be utilized if the device was designed with that in mind. So, in our case we COULD use keyboard and mouse, but we actually don’t even need one right now. I will explain how we could use KVM in a later blog post. In its simplest form, you can use the FxBlox as a NAS by simply transferring files over the air, to and from your device. All you will need is the scp and sshcommand line tools and the default login info for the Blox. Default Login Info for Blox: User: pi Password: raspberry Hostname: fulatower If this is your first time setting up, and you can’t resolve ‘fulatower’ as hostname (as shown in examples below) try updating the Linux system first. To do this, find your Blox ip address under “Blox Discovery” in the Settings of the Blox App. Then, use the ip address as ‘hostname’ for now. Then when you first ssh into the Blox, run: sudo apt update && sudo apt upgrade Preface The scpcommand can be used to move files TO/FROM your computer and a remote computer. The sshcommand is used to remotely login and control a computer through the command line. If you have any issues at all, step 1 of troubleshooting is turn it off, wait a minute, and turn it back on. Make sure you are on the same wifi/LAN as your Blox and that your VPN is off! After trying all that, leave me a comment explaining your issue (or just Google it 😉). Note for Windows 10/11 Users Congrats you might already have everything you need to start. Go to PowerShell or if you’re an absolute Chad, then open up your WSL, and type scp, then hit Enter. Then you’re good to go! Now type ssh, and press Enter. To become an absolute Chad, you can download WSL directly from the Windows store and you can follow this guide to set that up properly https://learn.microsoft.com/en-us/windows/wsl/install (it’s not that hard 😉). SCP & SSH Usage For brevity I will now assume you are running a Linux based terminal like PowerShell or WSL. Linux and Mac users can just use the Terminal app. First, let’s move a file over to the tower. We can create an arbitrary new file with the touchcommand. Open up the terminal of choice and type: Note: I am in the Documents folder, if you want to create one too, you can type: mkdir Documents touch Hello_Fula_World Command Syntax: touch Now, we can move it over with scp: scp Hello_Fula_World pi@fulatower:/home/pi/Documents Syntax: scp @:/remote/directory Next, we just enter the default password: raspberry. The password will not show as we’re typing it. This is a linux-thing for password security. Now, we can remove/delete the file from our computer, because we already saved it in our personal “cloud”. rm Hello_Fula_World Syntax: rm To verify our results, we can now remotely login to the Blox with ssh: ssh pi@fulatower Syntax: ssh username@computer_hostname For first time setup, it will basically ask us if we trust the device we are connecting to. Type ‘Yes’ to continue and enter the default password. Now we can change directory to where we moved the file to with cd: cd /home/pi/Documents Syntax: cd path/you/want/to/go/to. This would also work: cd ~/Documents or just cd Documents. Then we can see the files in the directory by typing: ls Congrats! You have half a NAS! Now, to complete the cycle, we have to move a file back to our local computer. We first have to exit out of the remote login session by typing: exit From here, we can use scp to move the file from the Blox to our computer: scp pi@fulatower:/home/pi/Documents/Hello_Fula_World ~/Documents Syntax: scp @:/file/to/send /where/to/put/it Note: “~” means Home directory; “/” is the path separator; all together means ‘with respect to the Home directory, access the Documents folder’. Now if we type out ls. We will see that the file is back! Conclusion HOORAY! You have a SUPER basic NAS available for use! The only obvious issue with this is that it sucks. We need an upgrade NOW if we are to use this as a replacement for anything. This tutorial was a helpful first step to understand: The command line and how to navigate directories Local network attached storage devices Secure file transfers with scp Remote login to computers with ssh In the next tutorial, we will sshinto the Blox and set up a user-friendly GUI to view those remote files. Which you will also be able to view from Windows, Mac, or even your iPhone! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content and tutorials. Checkout the Functionland telegram for support and updates. Cheers!
2 - Navigating the Functionland App Experience: A Candid ReviewArticleJackson40Oct 19, 2023
Shout-out to Fierro Labs for this great article. Origins I don’t think I’m alone when I say that I had a bad experience using the collection of apps by Functionland. This isn’t meant to bash on them, but meant to highlight where I think the apps could be improved. Keep in mind I am using these apps on a Pixel 4a (Android 13) and an iPhone 13. If you watched my video FxBlox Setup video, my reactions were genuine and it was a pretty smooth first attempt. I didn’t run into major problems as many others have and all my hiccups and issues were shown on the screen. What was not shown in the video, was me playing around with the Blox, files, and photos apps afterwards. And that is what this blog post is about. Video on this and more coming soon. FxBlox App (Android) I went through the full setup process on Android (before the iOS app was available). The app had misspellings which I think gave people an even worse reaction to the setup process; it supported the idea that this was an “unfinished and unrefined” product and it left people with the feeling of “is this even worth it?”. People had gone into the setup process with a bad taste in their mouth already, because of the product delays that got us our devices eight months after the original estimated delivery date. Granted, we all know it is unfinished and that is not being denied by the team at all. Because they know they are going to do something about it. They have to. But the psychological effect of people’s suspicion being proven correct had taken place. I got the sense that people are very upset about it and are getting hesitant about the success of the end product. Side Note: To be frank, what didn’t help was a bunch of non-technical people buying into the campaign during the height of the pandemic and crypto-optimism era. They had promises of quick passive income (possibly get rich quick) and they realized they got into a little more than they could handle. But don’t worry, you got me, broski. After the setup, I looked around the app as I’m sure many other owners did. The thing that stands out to me is that it is lacking functionality. Understandable. So here are a few things I would like to see: As a blox owner, I would love to have the ability to factory reset the device right from the app. As a blox owner, I want to have a (“+”) button in the “Blox” or “Devices” tab, that lets me go through the formatting process for a new drive to use with the currently selected tower. As a blox owner, I want to have a (“+”) button in the “Blox” or “Devices” tab that allows me to add another Blox to my setup/array of devices. As a user, I would want to have more (“!”) information buttons in the different screens to educate me on things like the “PeerID” and “DID” and, in general, education on the “Blox”, “Users/Friends”, “↑” tab, and “Devices” tabs. My general feedback about the setup process in the FxBlox app is: it was mid. First, the “blue” color used when connecting a power adapter isn’t even blue! It’s turquoise/teal! In the setup video, we clearly see a nice BLUE color during the firmware update phase. It would be good to see the deep blue when the device turns on so we can clearly see the difference between the current teal color and white. Second, it would be a much smoother experience if the Blox didn’t have to be turned off and on multiple times. Or educate us on why it is necessary. Lastly, it would be much more informative/reassuring to the user if there was no need to move away from the app during the firmware update. If there was a progress bar that showed when the device was done updating, that would be great. I think your experience may vary, personally whenever I ran into an issue I just force closed the app(s) and tried again. I did this 3–4 times during the MetaMask linking and DID creation phase (which is the worst part, i.m.o). FxFotos (iOS & Android) The biggest issue with the FxFotos apps is how they pair with the Blox which tldr … they don’t? The first thing they will ask of you is permissions, which makes sense. It wants access to photos and it wants to see if a Blox is on the network. That’s as expected and although the app does pull in my photos, I now need to find a way to sync the Blox. I head to Settings by clicking on the empty avatar image on the top right. I am presented with one option which is “Create DID”. Well… didn’t I already create a DID? Can’t I just use that one? Who knows. I go through the process and it asks me to open up my wallet so that I can sign a transaction. But I never get a pop up and it leaves me wondering if I should be on the Goerli testnet (just like in the Blox setup)? So, I try that and still nothing. At some point later on, I try again and I’m surprised to see the DID signature popup while on the Goerli ETH testnet on my Pixel. (It never popped up on iOS) I’m returned to the FxFotos app. The workflow on Android is different than on iOS at this point. On Android, I am also presented with an option to “Add a Blox”. So, I fill in the information and it promptly fails upon hitting “Connect”. And it just leaves me with a couple questions. Would a DID really be all that’s needed to sync the photos on my phone to the ones in my Blox? Why can’t I add the DID that I already created instead? Is there a way to condense that DID into like an ens domain and provide that to make the DID linking process less complicated? Did I need to be on the Goerli testnet? I hope someone can address these questions in the comments or Telegram. FxFiles Experience (Android only) So, if you didn’t know, the FxFiles app is only available on Android. Don’t worry iPhone users, you’re not missing out on anything. It is in essence, just a standard file viewer app. The awkward thing about it is that right when you open the app for the first time, it goes straight to the permissions page in Settings. This is weird because it should just be a pop up within the app. In this app, there is no way to connect to a DID or connect the Blox. So it’s just another app that will be the framework for how we upload files to the Fula network in the future. What I think would be cool with this app is using it with emulators. On android and dedicated emulating devices, you need to point the emulator to where files are located. But the issue of where you get your ROMs is still a legal grey area. Imagine you downloading this app and streaming your games from your FxBlox on the go! Or having a larger access to games friends shared with you or from the community?! (we will explore this idea in a future video😜) Conclusion The apps need some work to say the least. Functionland has said that they are currently prioritizing the development of the incentivized testnet and will help all users troubleshoot their setup/connectivity issues before its release. This is to make sure that everyone who is able to participate, can do so. The apps and workflow will only get better from here and future Blox owners will take the UI/UX experience for granted. I’m looking forward to that day, I hope you are too! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content. And checkout the Functionland telegram for support and updates. Cheers!
2 - What Is a Private Key?ArticleSep 30, 2022
In the context of bitcoin, a private key represents a secret sequence of numbers and letters which allow bitcoins to be spent. Each bitcoin wallet contains at least one, or sometimes more, private key. The keys are saved within the wallet file and are mathematically related to all of the bitcoin addresses which are generated for the wallet. Put simply, this is your “ticket” which will allow you to spend your bitcoins. As such, it is quintessential that you keep it secure. This is the reason for which all reputable cryptocurrency exchanges put the emphasis on advanced privacy when it comes to storing your digital assets. Different Types of Bitcoin Wallets There are many types of wallets: desktop, mobile, paper, web, and hardware. Many have different features allowing a span of financial activity like savings management or retirement planning. A good wallet review will make these features clearer. Desktop wallets, as the name suggests, are installed on your computer’s desktop. These types of wallets offer full control over the software wallets. They enable the user to generate a bitcoin address for buying and selling bitcoin. Naturally, they also allow the user to store their private key. A mobile wallet, on the other hand, provides for more convenience, as they aren’t fixed in one place. These usually come in the form of paid applications that you can run on your smartphone. In terms of functionality, however, a mobile wallet would allow you to do the same things as a desktop wallet. These differences can often be fleshed out in an online wallet review. One notable advantage is the fact that a mobile wallet could enable you to receive payments and make direct payments in physical stores which accept digital currency by scanning a QR code. Among the various types of wallets —a mobile wallet, bitcoin wallet, etc. — is the paper wallet. This is nothing but your public and private key printed together. Technically, a paper wallet is a type of cold wallet because it is entirely offline. You can make a paper wallet out of any substance that you can print information on. Differentiation can also be made based on the operating system the wallet can be used on. As such, you can have Android wallets (which are Android apps), Apps for iOS on iPhone and iPad, Windows, Mac and Linux, and so forth. Many software solutions are programs with a free download. Naturally, almost all of the hot wallets can be classified as Android wallets as they are usually supported by the operating system and they do have designated Android apps. Some wallets are compatible with mining hardware as well.
1
Posts
61- Boot node not respondingExpert Q&AOct 21, 2024
The instructions specify using node.functionyard.fx.land as the boot node however that node does not seem to be responding and there is no information on other nodes to connect to. I would like that address of a functional boot node for initial connection Thank you
- Fula Node
00 - All set up and on testnet but no warnings in appExpert Q&AMay 28, 2024
hello. i set up my box according to the doc. https://docs.fx.land/functionyard my unit stays on and says its connected and in use when i check it. but my earnings still say 0 along with metamask. the account page also says error with blockchain idk if that's normal or not? i treid a reboot and still cant see any earnings even though my device says its connected and in use. any ideas is their another way to check earnings? thanks
- Fula Network
- FULA Token
- Blox
00 - RK-1 cannot connect to wifiExpert Q&AApr 29, 2024
I have an original RK-1. It boots green, blue, white. After a few seconds I get two green flashes. I see it on my android phone. When I click to connect, it never connects to the device. I thought I might need an update, I created a the miniminal usb drive as described. I put the usb drive in the top port with an adapter. The device boots with the above sequence and does not load the update. I will note that when I first got this unit, I was able to connect to wifi on the adroid and got through the setup to connect it to my wifi router. I wait for testnet and now I cannot access the unit now.
- Blox
01 - How can rewards be earned in this platform?Expert Q&AApr 25, 2024
I am curious about the process of earning rewards on this platform. Can someone please explain the steps or criteria involved in earning rewards? Any insights or tips would be greatly appreciated. Thank you.
- Fula Network
- FULA Token
01 - Hotspot for setup Missing In ActionExpert Q&AApr 24, 2024
I have an RK1 and am trying to use the app to configure my box, but when it says connect to the hotspot, there is no FxBlox network seen. I have installed an internal NVME drive and checked the Wifi card, but still no luck in producing a hot spot. Any ideas?
- Blox
01 - Can multiport adapters be used for multiple devices simultaneously?Expert Q&AApr 23, 2024
I am considering purchasing a multiport adapter to connect multiple devices to my computer. Can these adapters handle simultaneous connections without any issues? I want to ensure that I can use all connected devices without experiencing any performance degradation. Thank you for your assistance.
- Fula Network
- Blox
02 - What should be placed in the openings on the sides of FxBlox?Expert Q&AApr 22, 2024
In the FxBlox, there are openings on the sides that seem to serve a purpose. What materials or components are typically inserted into these openings to enhance functionality or performance? Any insights or suggestions would be appreciated.
- Fula Network
- Blox
01 - Internal Storage Capacity is 0Expert Q&AApr 13, 2024
Went through the setup steps and now I'm stuck at the formatting portion. I have the RK1 version with internal storage. After telling the box to format, the capacity is now 0.
- Blox
00 - What power adapter is compatible with the FxBlox?Expert Q&AApr 12, 2024
I am looking for information on which power adapter is suitable for use with the FxBlox device. Can anyone provide recommendations or specifications to ensure compatibility? Thank you.
- Blox
01 - Create a NAS with Your FxBlox — How to install Samba: A Beginners GuideArticleJackson40Oct 19, 2023
Big shout-out to Fierro Labs for this awesome tutorial! It is time to upgrade our FxBlox to something we can actually use! I will show you how to install Samba in just 3 easy steps! We are in search of the best way to set up our Blox as a NAS while the FULA testnet is still under development. This beginner friendly tutorial will allow us to add, remove, and edit files on the Blox all while accessing them on Windows, Mac, or other Linux computers! We are introducing many more Linux fundamentals in this tutorial, but don’t worry I will explain new things thoroughly. “Released in 1992, Samba is an open source implementation of the SMB protocol for Unix systems and Linux distributions. The server supports file sharing and print services, authentication and authorization, name resolution, and service announcements (browsing) between Linux/Unix servers and Windows clients.” (Sheldon, Robert & Scarpati, Jessica. “Server Message Block protocol (SMB protocol)”. TechTarget. August 2021). Since SMB was introduced in the 1980’s, Windows, MacOS, & Linux have supported the SMB protocol to access SMB-enabled remote files servers. In this tutorial you will learn how to: Factory reset your FxBlox device Attach a Keyboard, Video, and Mouse Update the FxBlox’s Linux OS Install Samba through armbian-config Configure Samba on Linux Manage and check Samba status View files hosted in Samba, on Windows and OSX Preface Okay I might have embelished the intro. It is going to take more than just three “easy” steps to set up Samba. But I will hold your hand through it. This tutorial will use ssh. If you want a quick refresher on how that works, check out my last tutorial Create a NAS with Your FxBlox: A Beginner’s Guide Series | by Fierro Labs | Sep, 2023 | Medium. If you want to continue the tutorial using a KVM, then get a mouse and keyboard combo that uses a wireless receiver (I don’t recommend bluetooth). A usb-c to usb-a adapter to connect it and a usb-c to HDMI dongle/cable (usb-c to DisplayPort also works). To factory reset your device, you will also need a usb-c cable that connects to your flash drive. Multi-port dongles/adapters will not work with the Blox. If you do not have any of the above, please consider supporting me by using my amazon affiliate links to order your accessories. Thank you! Usb-c to Usb-a female adapter Usb-c to HDMI female adapter or Usb-c to HDMI male cable Logitech Wireless Keyboard and Mouse combo *Disclosure: As an Amazon Associate I earn from qualifying purchases. Here is the default login information for the FxBlox: Username: pi Password: raspberry Hostname: fulatower Attach Keyboard, Video, & Mouse If you want to continue with the tutorial while interacting with the Blox directly. Then you’ll need the aforementioned cables or adapters. To connect keyboard and mouse, you could connect one to the top usb-c port and the other to the middle one. But I say just get a wireless combo, so you only take up one port. The two bottom usb ports both support DisplayPort which allow you to connect HDMI cable/adapter. Login with the default password, and press Ctrl+Alt+T to bring up the Terminal. Or look for it in the Applications, by clicking on “Activities” on the top left, then the box of nine dots at the bottom. Factory Reset FxBlox I think it is worthwhile to know how to factory reset your device, in case you mess something up or just want to start with a clean slate. Keep in mind, you will have to set up the device through the Blox app again. Factory resetting is possible by flashing the FxBlox with the Fula image provided by Functionland (Releases · functionland/fula-ota (github.com)) with a USB attached to the top usb-c port. Make sure your USB drive is formatted to FAT32. You’re going to want to download the latest version. At the time of this writing it is v1.1.5 (specifically RK1-EMMC-27–08–2023.5G_usb_flash_update.zip) and move it to your flash drive. Unzip the contents and move over all the files to the root directory of the USB drive. So that there are no folders at the root of the USB drive. Feel free to connect the USB drive now or after you’ve unplugged your Blox. But make sure it is ONLY to the TOP most usb-c port! Now, with the usb drive connected. Turn on your Blox, and the light should turn green, then turn yellow. This yellow light will stay on for about 10–15 minutes, indicating that it is applying the update/reset. You will know it is done when the lights alternate between Green and Blue every couple seconds. Now you can remove the usb from the tower and turn it off and on again. The Blox may or may not restart on its own once or twice. Keep an eye out for that and then you can continue to set up the device through the Blox app. *Note 1: After completing setup through the app, you may need to turn off and on the device at the end, for it to be discoverable. You don’t actually have to get a “Setup Complete” screen for it to connect to the wifi (in my experience)! Note 2: In my testing, I found setting up through the Blox app was the only way for the FxBlox to retain the wifi information. That is why I recommend it over just going straight to the desktop with KVM. Note 3: There needed to be an updated image of the Blox, because at the time of launch, the WalletConnect service reworked their API without telling anyone and it messed things up for owners to say the least. Hence the one-off “…_usb_flash_update” image options. Generally, you will just download the source zip folder and follow the same process.* Update the FxBlox’s Linux OS If you are NOT already logged into the FxBlox via ssh or connected directly to it, then we will do so now: ssh pi@fulatower If ‘fulatower’ doesn’t work, use the IP Address of the Blox instead. You can find this under the “Blox Discovery” tab in the Blox app Settings. Or your wifi router’s “Connected Devices” list. To update your FxBlox type: sudo apt update && sudo apt upgrade This will download and install all the components needed to get you up-to-date with the latest Ubuntu release that Blox runs. Now reboot device to apply changes: reboot Now, you can ssh back into the device. Configure the Samba Server on Linux — Part 1 — Create the Share Directories FINALLY, we are ready! Let me lay out the idea of what we are going to do. We are going to create a file sharing server and only permit authorized users access to write to it. Specifically, we are going to give each individual user a space on the Samba server called a “share” and a “public” space for all authorized users to write to. Before we can start, we have to decide where on our Blox we want to create the space for the Samba server. If you’re like me, you want to actually utilize the hard drive you installed into your Blox. My drive is located at /media/pi/nvme0n1p1, you can find yours by typing: df -h You’ll know which one is yours from the capacity of the drive and the “Filesystem” should start with /dev/. As well as the fact that the type of drive installed will be shown. E.g. I installed an nvme drive and you can see nvme in the path. Note 4: when you factory reset your device, this storage drive won’t get reformatted even after doing the setup process through the Blox app. So we’ll start by creating the space for our Samba server and all authorized users. In my case, I am authorizing pi and fierro_labs. IMPORTANT: Substitute the location of your drive in the commands! mkdir /media/pi/nvme0n1p1/FulaShare/ mkdir /media/pi/nvme0n1p1/FulaShare/Public mkdir /media/pi/nvme0n1p1/FulaShare/pi mkdir /media/pi/nvme0n1p1/FulaShare/fierro_labs Now verify they were created by navigating to that directory and listing its contents: cd /media/pi/nvme0n1p1/FulaShare && ls Configure the Samba Server on Linux — Part 2 — Install Samba with armbian-config If you don’t know what armbian-config is, you’re not alone. I recently just learned about it. Shoutout @Fred from the Functionland Telegram channel. It is a tool to configure your armbian-based SBC (Single Board Computer) with a graphical user interface (GUI). You can do various things including: setting up remote desktop control, installing third party software like Samba, and adjusting other system settings. To access armbian-config, you NEED to have your system up-to-date. To access the GUI type: sudo armbian-config You can then use your mouse to: Select Software Select Softy Select Samba and let it finish installing It will now ask you for a Samba username and password. Create one for pi. We’ll make another account after setup. Now we can move on to creating the public share for all users in the workgroup AND each individual users’ share. Use the arrow keys to get to the very end of the file. Copy/paste this into your terminal on a new line or just type it out: [Public] comment = Public directory where all users of the workgroup can read/write browseable = yes writeable = yes guest ok = no force create mode = 0770 force directory mode = 0770 path = /media/pi/nvme0n1p1/FulaShare/Public valid users = @workgroup [homes] comment = Home directories where only the authorized user can read/write browseable = no writeable = yes public = no create mode = 0700 directory mode = 0700 path = /media/pi/nvme0n1p1/FulaShare/%S valid users = %S Remember to replace the path to where you want to store the users' files in your case! Click on “OK” and exit all the way out of armbian-config until you see your Terminal again. Here is a description of each config option’s purpose: [Public]. Represents the share name. This is the directory location users see on their client computer. [homes] is a special share definition. Samba will create shares for new authorized users “on the fly”. This definition will enable us replace [home] with the user’s username when searching for it. Comment. Serves as a directory description. browseable. This parameter allows other machines in the network to find the Samba server and Samba share when set to yes. Otherwise, users must know the exact Samba server name and type in the path to access the shared directory. read only. Can be ‘yes’ or ‘no’. This option specifies if users will be able to only read the share, or write to it too. writeable. Pretty much redundant if read only = no. Grants write access to users when set to yes. guest ok. Allows anyone to read/write if set to yes. Otherwise, username/password is needed to access the specified share. public. Is synonymous to guest ok. Force create mode. Forces file permissions on newly create files by the user to be what is specified here Force directory mode. Forces directory persmissions on newly created directories by the user to be what is specified here. Permission #’s: 4=read,2=write,1=execute. Therefore, 7 = read+write+execute permissions. The three digits represent permissions for: owner, group, & others respectively Path. Specifies the directory to use for a Samba share. The example uses a directory in Fulashare/ valid users. Only the users or group specified can access the specified share. @workgroup. Is a shortcut to reference the group of Linux users who are also registered under that Group name in the Samba server. %S. Is a Samba shortcut to reference the username of a logged in user that is registered in the Samba server. You can come back to edit this configuration file at any time by using an editor of your choice, mine is vim (fight me): sudo vim /etc/samba/smb.conf If you don’t have vim, install it with sudo apt install vim. Okay are you still with me? If you want to learn more about what you just did, I will applaud you if you check out Samba’s official documentation. Or more specifically the smb.conf documentation to learn how you can customize the server for your use case! Configure Samba Server on Linux — Part 3 — Users, Groups, and Permissions The last step to get this to work is to register our users in the Samba server to have a login password. I know so far this has been a heavy lift, but the result will be sweet. I explain a little bit of what each command does, but if you want to learn more, I encourage you to Google the name of the command. Ex: “useradd linux command” or “smbpasswd linux command”. To register users for a Samba account on your server, the general syntax is sudo. smbpasswd -a . Samba accounts can only be made for already existing users on your Blox. And the password doesn’t have to be the same as the one used to log into the Blox. To make a new user account on your Blox AND register it in your Samba server, run all three commands. If you want to create an account in Samba without giving a user a login to your Blox, omit the second command: sudo useradd fierro_labs sudo passwd fierro_labs sudo smbpasswd -a fierro_labs If you ever want to change the Samba password just use: sudo smbpasswd . If you ever want to change the Linux password just use: sudo passwd . Now, we want to create a group called workgroupfor all our users in Linux. This is necessary to give all authorized users access to the Public space on our Samba server. To add users to the group called workgroup, we first have to create the group: sudo groupadd workgroup To add a user to the group: sudo usermod -aG workgroup pi sudo usermod -aG workgroup fierro_labs Setting permissions is what is going to make or break if you can connect to your local Samba server from another computer. At this point you should still be in the /media/pi/nvme0n1o1/FulaShare directory, if not, then do so now. To set permissions: sudo chmod 700 pi/ sudo chmod 700 fierro_labs/ Chmod stands for change mode and it's the command to change the permissions on files and directories. The 700 number means enable read+write+execute permissions for the user only. See config options description above for more info. Lastly, let’s specify the owners of the directories. sudo chown -R pi:workgroup pi/ sudo chown -R fierro_labs:workgroup fierro_labs/ sudo chown -R root:workgroup Public/ chown stands for change owner and it’s the command to change owner and/or group of a file or directory. Your permissions would look something like this: Manage and Check Samba Status We can check if our Samba server is up and running by: sudo systemctl status smbd Press ‘q’ to continue. If you see a green dot or the words “running” and “enabled”, then your server is currently running! If it says the service is “stopped” or “disabled”, then you will want to run sudo systemctl start smbd If you ever want to stop the server, you can run sudo systemctl stop smbd To reapply setting changes to /etc/samba/smb.conf, we will want to restart the server by running sudo systemctl restart smbd View files hosted in Samba, on Windows and OSX When you log into the Samba server as a registered user, you will be able to read and write to your individual share and the public share. IMPORTANT: It is a very annoying and difficult process to log into a different Samba account on the same computer login! For all intents and purposes, you can only log into one Samba account per client computer user! Windows File Explorer: Make sure to have “Network Discovery” on. If you go to the Network tab within File Explorer, and you DON’T have it on. A pop up header will show, asking you to turn on Network Discovery. Now switch to “This PC” tab, and click on the “See More”, three dots options menu. Click on “Map Network Drive” Assign it a letter of your choosing Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Select the Reconnect at sign-in option Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. Windows Run: Press Windows + R Type out the server hostname followed by the share you want to access. Ex \\fulatower\pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Repeat the steps for adding in the Public/ share. MacOS/OSX Check to see if you have the Network tab listed on the left side in Finder. Fulatower should be there already, click on it and it will ask you to log in as a guest or registered user. The Guest option will only allow you to see that the Public folder exists. Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. Manual “Connect to Server”: While on the desktop screen (aka Finder), press Command + K. Enter the protocol method (smb://), then the IP address or hostname of the Blox (fulatower), followed by the share you want to access. Ex smb://fulatower/pi Enter username and password of a user registered in the Samba server. Enjoy browsing, creating, modifying, deleting files and folders. The server should show up under Network or Locations in Finder now. Enjoy your new NAS! Conclusion Holy crap you made it! That was a long tutorial, but you pushed through. This knowledge is key fundamental IT system administration tasks and you just set up your first network share/file server from start to finish! I sure tried my best to explain everything you need to know so that you can confidently understand what the different Samba requirements and what the different options available to you are. Let me know in the comments what was the most difficult part for you? In the next tutorial, we will be leveling up our IT sysadmin knowledge to upgrade our Blox. We will be able to access our files, photos, and any other data on our Blox from anywhere in the world! Not only that, but we’ll be able to view those files from almost literally any device! Follow my YouTube channel for more web 3 content. Follow my Medium blog for more personal experience content and tutorials. Checkout the Functionland Telegram for support and updates. Cheers!
- Fula Network
- Blox
- BAS
- FxFiles
2
- 369
- 93
- 41
- 40
- 27
- 25
- 25
- 22
- 22
- 20
- Blox
- Fula Network
- Fula Node
- BAS
- FULA Token
- FEC NFT
- FxFiles
- FxFotos
- Fula L3 Pool
- FULA API