Raspberry Pi Slot Machine Image
A Raspberry Pi 4 inside a keyboard, the Raspberry Pi 400 offers a classic way to get started with Pi. We find a microSD card slot (see best Raspberry Pi microSD cards). (Image credit: Tom. Raspberry Pi (/ p aɪ /) is a series of small single-board computers developed in the United Kingdom by the Raspberry Pi Foundation in association with Broadcom. Early on, the Raspberry Pi project leaned towards the promotion of teaching basic computer science in schools and in developing countries.
Introduction: Build Docker Image for Raspberry Pi
This instructables show how to build a Docker Image for Raspberry Pi.
Step 1: Why Docker?
You can use Raspberry Pi (RPi) do many thing, tiny web server, AI assistant, Robotics ... etc.
Many projects you want to try, but the pain points are:
Time To Build
RPi is not keen on processing power, and the SD/USB drive limited the IO speed. Use apt install all dependency package requires an hour and building the source requires more hours. Especially for AI related projects, time to wait more than time to try.
Version Conflict
Everyone try many projects in one RPi. When you have tried a project and would like to switch to another one, you may find some build fail caused by dependency libraries version conflict with previous project. Some libraries stop developing few years ago and depend on some very old libraries. In contrast, active project depended on latest libraries. Both project cannot co-exist in the same SD/USB drive😔.
Image Backup
Since some projects cannot co-exists, simply buy more SD/USB drive to keep each project image dependent is a way. If money is not limited😅. But it increases the difficulties of file/image management, sometimes you require swap SD/USB and boot many times to find out what you want.
Hard To Share
When you built your project and would like to share the source to friends, your friends may get the build failed feed back. Distribution/libraries version too old or too new, building parameters and some tricks. You need use up the time to solve others build problems but not support the project itself.
The above pain points are my experience in this few years. Docker can help most of it.
Docker start build from selecting a prebuilt parent image. E.g. debian:jessie-slim start from an old stable Debian light weight distribution; node:10-buster-slim start from Debian light weight distribution with Node.js 10 installed. The prebuilt image can save much time to flash image, get update and install depended libraries. Each project can start from different OS version, runtime version and libraries version. When you finished develop your own project, you can push the Docker image to docker hub and share to everyone. You can keep all project data at the same SD/USB (data should routine backup to other media). For saving local storage, you can even cleanup the Docker image when not use, anytime you can pull from Docker hub again.
Step 2: Docker Overhead
Docker added one virtualize layer, overhead is an concern. I have not test too much about the Docker overhead. Most Googled result claim very low overhead and I found this document about some related research:
Step 3: Install Docker
Simply run:
Ref.:
Step 4: Building Docker Image
Please find the official guide on building docker image:
I have 2 projects using Docker, you may find the Dockerfile as a reference:
- BanateCAD requires Lua runtime and some addition Lua libraries. Only Lua 5.1 can compatible to all required Lua libraries but it is the product of 2006. The latest Debian distribution that can build Lua 5.1 success is Jessie (The version before current Debian old stable). So I built a Lua 5.1 environment Docker Image to run it.
- OpenCV is an actively developing project, the source code depends latest libraries and compiler. So it very high chance to build failed, libraries method signature, compiler version, dependency conflict... I would like to use opencv4nodejs to make a simple app and do not required latest features. So when I found a way to build opencv4nodejs success, I would like to freeze it to a Docker Image and do my actual application coding.
Step 5: Development Build Speed Vs Image Size
You may found my face-aware-photo-osd project have 2 versions of Dockfile:
While development, I like split RUN command as small as possible and arrange most likely to change RUN command to last step. So for every build for development change, I can utilize previous built layer as much as possible and save much build speed.
In contrast, I will combine all RUN commands in one before release. lesser layer can much reduce the Docker Image size. My face-aware-photo-osd project as example it can reduce more than 100 MB in size.
Step 6: Multi Arch Images
As mentioned before, RPi is not a keen on processing power. Use RPi build Docker image may not a good choice, especially when your only RPi is running another projects.
Use an x86 computer also can help you build the Docker Image, please find more details here:
simple 2 commands can build x86 and ARM Docker Image in parallel:
Multi Arch can build multi platform image with same Docker image tag, so your project can run in different machine seamlessly. e.g.
Raspberry Pi Slot Machine Image Download
No matter you run the above command on RPi or your x86 computer, you can get a Lua runtime environment.
Step 7: Happy RPi!
You can now develop and share your RPi project more easily!
Be the First to Share
Recommendations
Anything Goes Contest
Block Code Contest
Make it Real Student Design Challenge
AdoPiSoft Basic Setup with Raspberry Pi 3
This is a basic guide on how to flash AdoPiSoft software into Raspberry Pi 3 Model B/B+ and have a working coin-operated wifi hotspot machine. You can also use this guide to reformat your old machine and install our latest image.
If you want a production-ready wifi hotspot machine, please contact the distributors.
Step 1: Prepare the materials needed
If you don't have the coin acceptor yet, you can still proceed to install the software and configure your wifi vending machine as long as you have araspberry pi,power supply(for raspberry pi) and amicro SD card. You won't be able to test the payment functionality though.
- Raspberry Pi 3 Model B or B+
- Universal Coinslot / Multi-coin Acceptor
Others
- 4GB (or higher) Micro SD Card - class 6 or 10 (important)
- Micro SD Card Reader
Important: The micro SD card must be of high quality. Use Sandisk Ultra or Samsung Evo
- Raspberry Power Supply
12 Volts DC Power Supply
12V DC at least 1A output power supply.
This is used to power the coin acceptor. You must identify the positive and ground terminal using voltmeter.
Step 2: Software Installation
Needed softwares:
Raspberry Pi Slot Machine Image Tool
- Download and install Etcher to your computer.
- Download Ado Piso WiFi Raspbian Image
After downloading the needed softwares, we need to flash the installer into the midro SD card using Etcher. To do so, unzip the contents ofadopisowifi.zip
Insert the micro SD card into the your computer using a card reader.
Open Etcher and click Select Image.
Then select adopisowifi-(version).img
from the zip file.
Make sure to select your micro SD card
Click the Flash!
button and wait for the process to finish.
If you encounter prompts about formatting your sd card, just click Cancel.
Step 3: Configure The Machine
Raspberry Pi Slot Machine Images
IMPORTANT:
Make sure you do the following before turning on the raspberry:
- Insert the SD card into the raspberry sd slot.
- Insert the LAN cable into the ethernet port of raspberry pi and make sure it is connected to internet
Note: You don't have to insert a monitor to the HDMI port.
Turn on the raspberry pi and wait for the AdoPisoWifi
WiFi network to appear, it may take a couple of minutes.
Raspberry Pi Slot Machine Image Free
Connect to the wifi network using your laptop or smartphone. Once connected, open a browser and go to http://10.0.0.1/admin
username:admin
password:admin
(The machine is also accessible in your ethernet using its WAN IP.)
Step 4: Connecting All Components
Connect all the connections base on the circuit diagram. Make sure to check the positive ang negative terminal of the 12V DC power supply for the coinslot to work properly.
Step 5: Update the Software
Software is constantly being improved, you need to update the software after installation to get the latest features. To update the software, go to the admin settings and navigate to Device
section. Then click the Check For Updates
button at the bottom of the page. Then click for Install Updates
button.
Join our Community
We have a lot of users that have already created a machine using our software. Join our discussions and see what others are doing with their wifi vending machines.
Note:
Raspberry will use it's built-in wifi module to broadcast the SSID. But its signal is very weak and recommended only for testing purposes. It is best to upgrade the antenna using external access point / CPE antenna to extend the wifi range and speed of your wifi vending machine.