FrankensteinMCU
To see labs online visit FMCU Online Platform BETA V0.1. For local development and tests, download the source code from here
We are now documenting the project in a new here: project/bootcamp-2023/fmcu
Check out our documentation Wiki
git clone https://git.beachlab.org/fmcu.git
and follow the instructions on the README file.
The concept
A bare minimum panel or box with a push button that labels the lab to an online status for 4-8 hours. That data can then be visualized on a web platform like fablabs.io or a physical map.
The box can be modified to a beefed-up version with a counter, status lights, camera, etc. Creativity with the design and technical implementation of the box should be encouraged so each box can have a unique character to it.
How to make a button for FMCU
Ath the moment we are in a early adaptor phase of the project. To setup the lab you will need a MCU that can connect to the internet we have had success with the ESP32 from seeed studio. The .ino cad can be found here CODE Thing that need to be added or modified in the code ar as follows:
- you local WiFi info (we have not tried ethernet cable at this point)
- your lab idea witch you will find here press the total lab nr. Lab_ID
- On ESP32 pin is set to GPIO 10 if wanted this can be modified
below you will find a workflow chart to set up the FMCU
Good luck setting up your FMCU and let us know and share photos when your online!
jitsy MCU test
At some point we would like to intergrade video option to the web platform and Jitsy seams like a option for that.
Technical
Hardware
The box should be simple to install and setup. At the moment we are using seeed XIAO esp32-C3 and a pushbutton. We connect to the local wifi and when the code is ready. Each lab would only need to put in wifi information and your fablabs.io Lab ID to identify the location.
Embedded Software
The software inside the ESP32 publishes a MQTT message with your lab ID to the topic fmcu/id
in a mosquitto server located in the suitcase of the Beach Lab.
- Current Status: Connects to the wifi but does not connect to the MQTT server, probably because we need to use another MQTT library.
Server
The server is responsible of receiving the MQTT messages and prepare a list of labs online that the browser will open when someone visits the page.
TODO:
-
[ ] Node-Red? Some server side code to do some timestamp and processing to prepare a list of current online labs
-
[ ] Node-Red? Some server side code to store the Lab ID in a JSON file
-
[ ] Node-Red? Publish a MQTT message to update the open browsers
Visual System overview below
Implementation
The biggest challenge is to get the boxes in operation and how we would implement it. At this point the implementation is still under development and we welcome every contribution and idea which might make this project a proper global Fablab success.
Statuses explained
- Online : someone has press the button within 4 hours and therefor someone is likely to be in the lab.
- Active : button has not been pressed within 4 hours and therefor it's likely that there is no one working in the lab.
- Inactive : the button has not been pressed for 3 months there for it's likely the lab is not in operation it's on holiday.
Here is a rough mockup of what the box could look like.
The bare minimum panel box only has a pushbutton for maximum simplicity to ensure that the box can be made within a hour with minimum tools.
Modules and features can be added. Below is a mind-map and more mockup photos to show what that could look like.
History of the Multible Conection Unit
In the bootcamp there was discussion on how to make the labs more visually connected. Þórarinn and Fran will take lead to make the MCU alive again. If any one want to join or add something to the operation we welcome that.
The Frankenstein MCU is an operation to make a symbolic object in the labs to represent the will to connect and share knowledge throughout the network. It's based on the OLD MCU that has ceased to exist but has in a way moved to zoom.