Skip to content

Commit

Permalink
improve readme
Browse files Browse the repository at this point in the history
  • Loading branch information
AntoninPvr committed Apr 16, 2024
1 parent a0d0ecf commit 548076f
Show file tree
Hide file tree
Showing 2 changed files with 85 additions and 38 deletions.
123 changes: 85 additions & 38 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ MarcoX is the new version of the original Marco project based on Raspberry PI an

Software was also modernized and is available here : https://github.com/LOISGALLAUD/MARCONEO


Marco is a project that aims to create a payment terminal for a school BDE (French equivalent of Student Union). It is based on a RFID card system. The terminal is used by the students to pay for their meals or drinks. The terminal is connected to a self-hosted server that manages the accounts of the students. This terminal act as cash register.

This project is related to InsidePSBS app. Students can check their account and history on this mobile app available on IOS and Android. https://github.com/info-telecom-strasbourg/InsidePSBS (Reserved to TPS and ESBS students)
Expand All @@ -20,13 +19,25 @@ This project is related to InsidePSBS app. Students can check their account and
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/img/render/frame_bellow.JPG?raw=true" width="50%" />
</p>

## Features
## Specifications

* **Screen**: 7" capacitive touch screen
* **RFID reader**: 125kHz compatible
* **Power supply**: USB-C 5V 3A
* **SBC**: Orange PI zero 2W
* SoC: Allwinner H618 quad-core Cortex-A53 @ 1.5GHz
* RAM: 1GB LPDDR4
* Wi-Fi: 802.11 ac (Wi-Fi 5)
* Bluetooth: 5.0
* **Dimensions**:
* Length: 210mm
* Depth: 150mm
* Height: 90mm

## Shopping list

## Requirements
### Electronic parts

#### Electronic parts
* Orange PI zero 2W with 1GB RAM or more
* Micro SD card 16GB ore more, U3 speed class or more
* 7" Waveshare touch screen or compatible with HDMI input
Expand All @@ -36,61 +47,97 @@ This project is related to InsidePSBS app. Students can check their account and
* USB-C to micro usb 100mm cable: W3R to T1B
* USB-C pannel 17mm center distance mount connector 20mm

#### Mechanical parts
---

### Mechanical parts
* M3 screws 16mm flat-head x4
* M3 screws 10mm x10
* M3 inserts x14

---
### Parts details
| | |
|---|---|
| Orange PI zero 2W |<p align="right"> <img alt="Orange PI zero 2W" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/orange_pi_zero_2w.jpg?raw=true" width="200">
|Mini HDMI to HDMI 100mm cable: (A2 to C1). Large side of HDMI is on ribbon cable side. Mini HDMI large side is on ribbon connector side. | <p align="right"><img alt="HDMI to Micro HDMI adapter" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/hdmi_to_micro_hdmi.jpg?raw=true" width="200"></p>|
|USB-C to micro usb 100mm cable: W3R to T1B|<p align="right"><img alt="HDMI to Micro HDMI adapter" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/usbc_to_micro_usb.jpg?raw=true" width="200"></p>|
|USB-C pannel 17mm center distance mount connector 200mm|<p align="right"><img alt="HDMI to Micro HDMI adapter" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/usbc_pannel_mount.jpg?raw=true" width="200"></p>|

<p align="center">
<img alt="Orange PI zero 2W" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/orange_pi_zero_2w.jpg?raw=true" width="50%">
</p>
<p align="center">
<img alt="HDMI to Micro HDMI adapter" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/hdmi_to_micro_hdmi.jpg?raw=true" width="30%">
&nbsp;
<img alt="USBC to micro USB" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/usbc_to_micro_usb.jpg?raw=true" width="30%">
&nbsp;
<img alt="USBC pannel mount" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/usbc_pannel_mount.jpg?raw=true" width="30%">
</p>

### Screen

Screen is 7" Waveshare touch screen or compatible with HDMI input it can be a compatible one as long as it has the same connectors and the same size.

<p align="center">
<img alt="Screen front" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/screen_front.jpg?raw=true" width="45%">
&nbsp;
<img alt="Screen BAck" src="https://github.com/AntoninPvr/MarcoX/blob/main/img/screen_back.jpg?raw=true" width="45%">
</p>

## Enclosure
## 3D printed parts

All parts are in `.stl` format. They are designed to be printed without support.

### Printer settings

Tested settings, but feel free to adapt them to your printer and material.:

* Layer height: 0.2mm
* Infill: 20%
* Nozzle diameter: 0.4mm
* Material: PLA or PETG

### Internal frame

**File:** [internal_frame.STL](https://github.com/AntoninPvr/MarcoX/blob/main/internal_frame.STL)

This frame is attached to the screen and is used to fix all other parts.

*Note: For this part adding support may improve print quality*

![Enclosure](https://github.com/AntoninPvr/MarcoX/blob/main/img/render/enclosure.JPG?raw=true)
### Top cover frame

**File:** [top_cover_frame.STL](https://github.com/AntoninPvr/MarcoX/blob/main/top_cover_frame.STL)

This frame allow screen and top cover to be attached without overthickness and to secure enclosure and removable top cover.

### Card reader mount

**File:** [card_reader.STL](https://github.com/AntoninPvr/MarcoX/blob/main/card_reader.STL)

This mount is used to fix the RFID reader to the enclosure as close as possible to improve card detection.

### Orange PI Standoff

**File:** [orange_pi_standoff.STL](https://github.com/AntoninPvr/MarcoX/blob/main/orange_pi_standoff.STL)

Internal frame allow use of a custom PCB to fix Orange PI to internal frame and embed battery management and RFID reader circuit. This feature is not yet implemented, therefore this part is a placeholder.

## Enclosure

<p align="center">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/img/render/enclosure.JPG?raw=true" width="48%"/>
</p>

This is basically a wooden box with finger joints. It is composed of 5 parts: 1 base, 2 long sides and 2 short sides.

### Laser cut parts
---
<div class="container">
<div class="text">
<p>Laser cut parts are in <code>.svg </code> format. Red lines width is 0.2mm and are adapted for <a href="https://www.troteclaser.com/static/pdf/speedy-100/Fiche-technique-Speedy-100C-8063-fr.pdf">Trotec Speedy 100</a> laser cutter. </p>
</div>
<div class="image">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_base.svg?raw=true" alt="laser" witdth="30%">
</div>
</div>
<div class="container">
<div class="image">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/top_cover.svg?raw=true" alt="laser" witdth="30%">
</div>
<div class="image">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_long_side.svg?raw=true" alt="laser" witdth="40%">
</div>
<div class="image">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_short_side.svg?raw=true" alt="laser" witdth="20%">
</div>
</div>
Laser cut parts are in `.svg` format. Red lines width is 0.2mm and are adapted for [Trotec Speedy 100](https://www.troteclaser.com/static/pdf/speedy-100/Fiche-technique-Speedy-100C-8063-fr.pdf) laser cutter.
Material: 6mm plywood recommended.

<p align="center">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/top_cover.svg?raw=true" width="48%"/>
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_base.svg?raw=true" width="48%" />
</p>

<p align="center">
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_long_side.svg?raw=true" width="30%"/>
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_long_side_charging_hole.svg?raw=true" width="30%" />
<img src="https://github.com/AntoninPvr/MarcoX/blob/main/laser/enclosure_short_side.svg?raw=true" width="30%" />
</p>

## Related projects


* #### Software associated with MarcoX is available here :
> https://github.com/LOISGALLAUD/MARCONEO
Expand Down
File renamed without changes.

0 comments on commit 548076f

Please sign in to comment.