add external link icon

Signed-off-by: Michel-FK <michel.stempin@funkey-project.com>
This commit is contained in:
Michel-FK 2021-01-31 16:09:27 +01:00
parent 7470b05842
commit 1bb5623f1b
20 changed files with 184 additions and 134 deletions

View File

@ -158,3 +158,9 @@ body {
.funkey-menu:before { .funkey-menu:before {
content: "\e912"; content: "\e912";
} }
.md-typeset span.twemoji {
display: inline-block;
height: 0.5em;
vertical-align: super;
}

View File

@ -31,9 +31,11 @@ An interactive BOM is available in the [next section][4].
## Schematics and Layout ## Schematics and Layout
All the hardware design and production files required to build the All the hardware design and production files required to build the
[**FunKey S** retro-gaming console][1] electronic PCBA using the [**FunKey S** retro-gaming
[KiCAD ECAD tools][2] are available as Open Hardware in the [FunKey S console:fontawesome-solid-external-link-alt:][1] electronic PCBA using
Hardware repository][3]. the [KiCAD ECAD tools:fontawesome-solid-external-link-alt:][2] are
available as Open Hardware in the [FunKey S Hardware
repository:fontawesome-solid-external-link-alt:][3].
???+ note "Topological vs. logical schematic symbols" ???+ note "Topological vs. logical schematic symbols"

View File

@ -28,16 +28,18 @@ headphones either.
![Speaker](/assets/images/Speaker.png){: align=left } ![Speaker](/assets/images/Speaker.png){: align=left }
The best solution we have found consists in using a single tiny [CUI The best solution we have found consists in using a single tiny [CUI
CDM-10008][1] speaker, that is able to output 72 dB spl @ 1m from a CDM-10008:fontawesome-solid-external-link-alt:][1] speaker, that is
0.3W input power, with relatively modest dimensions: 10 mm diameter able to output 72 dB spl @ 1m from a 0.3W input power, with relatively
and only a 2.9 mm thickness, out of which 1.4 mm can be inserted into modest dimensions: 10 mm diameter and only a 2.9 mm thickness, out of
a PCB hole, thus only having a height above PCB of only 1.5 mm. which 1.4 mm can be inserted into a PCB hole, thus only having a
height above PCB of only 1.5 mm.
Connections are not easy though, since this speaker is meant to have Connections are not easy though, since this speaker is meant to have
wires soldered to its pads, but we used 2x [castellated][2] wires soldered to its pads, but we used 2x
(half-round plated holes) pads with a placement just over the speaker [castellated:fontawesome-solid-external-link-alt:][2] (half-round
pads that enables manual soldering between the speaker and the PCB plated holes) pads with a placement just over the speaker pads that
with a solder blob. enables manual soldering between the speaker and the PCB with a solder
blob.
## Schematic ## Schematic
@ -46,10 +48,11 @@ contains an analog stereo audio codec (coder/decoder): we only have to
take one of its headphone output channel (left or right) and feed it take one of its headphone output channel (left or right) and feed it
to a mono audio amplifier. to a mono audio amplifier.
We chose the [Diodes Inc. PAM8301][3] chip because of its cheap price, We chose the [Diodes
good availability, its more than sufficient output power of 1.5W and Inc. PAM8301:fontawesome-solid-external-link-alt:][3] chip because of
its filterless operation, meaning that no bulky series capacitor is its cheap price, good availability, its more than sufficient output
required to drive the speaker. power of 1.5W and its filterless operation, meaning that no bulky
series capacitor is required to drive the speaker.
Here is the corresponding schematic: Here is the corresponding schematic:

View File

@ -11,26 +11,28 @@ As can be seen in the page on the [PMIC][1], the soft "ON/OFF" button
is directly connected to the power management chip, so we are left is directly connected to the power management chip, so we are left
with 4 + 4 + 2 = 12 buttons for game control. with 4 + 4 + 2 = 12 buttons for game control.
After testing tactile domes in our [FunKey Zero][2] prototype, we After testing tactile domes in our [**FunKey
decided to go back to integrated tactile switches, as their placement Zero**:fontawesome-solid-external-link-alt:][2] prototype, we decided
is much easier using a regular SMT pick & place machine like any other to go back to integrated tactile switches, as their placement is much
easier using a regular SMT pick & place machine like any other
components on the PCB, whereas the separate tactile domes required an components on the PCB, whereas the separate tactile domes required an
adhesive tape to be place manually with less accuracy. adhesive tape to be place manually with less accuracy.
![EVBPBB1AAB000](/assets/images/EVPBB1AAB000.png){: align=left } ![EVBPBB1AAB000](/assets/images/EVPBB1AAB000.png){: align=left }
The [Mitsumi BYS-055A1x12][3] is the same footprint (2.5mm x 1.6mm x The [Mitsumi BYS-055A1x12:fontawesome-solid-external-link-alt:][3] is
0.55mm) as the more expensive Panasonic EVBBBxAAB00 tactile switches, the same footprint (2.5mm x 1.6mm x 0.55mm) as the more expensive
with a 1.2N actuating force for the "**+**" and "**X**" pads, and a Panasonic EVBBBxAAB00 tactile switches, with a 1.2N actuating force
1.6N actuating force for the "Start", "Fn" and "ON/OFF" buttons. We for the "**+**" and "**X**" pads, and a 1.6N actuating force for the
found these actuating force the best match to provide a good feedback "Start", "Fn" and "ON/OFF" buttons. We found these actuating force the
to the user. best match to provide a good feedback to the user.
![EVP-AEBB2A-1](/assets/images/EVP-AEBB2A-1.jpg){: align=left } ![EVP-AEBB2A-1](/assets/images/EVP-AEBB2A-1.jpg){: align=left }
For the rear left and right shoulder buttons, we exeperimented several For the rear left and right shoulder buttons, we exeperimented several
models between PCBA rev. C, D and E, until we eventually decided for a models between PCBA rev. C, D and E, until we eventually decided for a
[replacement for the expensive Panasonic EVP-AEBB2A-1][4]: [replacement for the expensive Panasonic
EVP-AEBB2A-1:fontawesome-solid-external-link-alt:][4]:
This one as an actuating force of 1.6N. This one as an actuating force of 1.6N.
@ -57,10 +59,11 @@ PCB routing, at such a point that we decided to use a dedicated I2C
GPIO expander chip to relieve the burden from the main V3s CPU. GPIO expander chip to relieve the burden from the main V3s CPU.
We use a common chip for this purpose, that is well supported in the We use a common chip for this purpose, that is well supported in the
Linux kernel: the [NXP PCAL6416AHF.128][5]. It is marketed as a Linux kernel: the [NXP
"low-voltage translating 16-bit I2C-bus/SMBus I/O expander with PCAL6416AHF.128:fontawesome-solid-external-link-alt:][5]. It is
interrupt output, reset, and configuration registers" that just marketed as a "low-voltage translating 16-bit I2C-bus/SMBus I/O
matches exactly our needs. expander with interrupt output, reset, and configuration registers"
that just matches exactly our needs.
As a bonus, this chip features software-controlable internal As a bonus, this chip features software-controlable internal
pull-up/pull-down resistors, so we don't need to add external ones to pull-up/pull-down resistors, so we don't need to add external ones to

View File

@ -4,14 +4,16 @@ As discussed in the [Design Constraints section][1], a CPU with
external DRAM chips would take too much real-estate on the PCB, so we external DRAM chips would take too much real-estate on the PCB, so we
had to find a CPU with integrated DRAM. had to find a CPU with integrated DRAM.
There are [several options][2] for integrating RAM in a SoC: There are [several options:fontawesome-solid-external-link-alt:][2]
for integrating RAM in a SoC:
- use SRAM: not possible because of the small amount of memory - use SRAM: not possible because of the small amount of memory
available (64Mbit max.) available (64Mbit max.)
- embedded DRAM on the same chip: This is the solution used in the - embedded DRAM on the same chip: This is the solution used in the
[Apple M1 chip][3], but this chip is not available for retail and [Apple M1 chip:fontawesome-solid-external-link-alt:][3], but this
no other solutions seems readily available chip is not available for retail and no other solutions seems
readily available
- Stacked Chip-on-Chip (PoP): This is the solution used on some - Stacked Chip-on-Chip (PoP): This is the solution used on some
Raspberry Pi boards, but this solution is only available for custom Raspberry Pi boards, but this solution is only available for custom
@ -21,14 +23,17 @@ There are [several options][2] for integrating RAM in a SoC:
- DRAM die in SiP: with capacities ranging from 64Mbit to 1Gbit - DRAM die in SiP: with capacities ranging from 64Mbit to 1Gbit
We found only 2 manufacturers providing the last option: We found only 2 manufacturers providing the last option:
[Microchip][4] and [Allwinner Technology][5]. Microchip solutions are [Microchip:fontawesome-solid-external-link-alt:][4] and [Allwinner
too limited in term of CPU power for our needs (ARM926EJ-S or Cortex Technology:fontawesome-solid-external-link-alt:][5]. Microchip
A5), so we did not consider them. solutions are too limited in term of CPU power for our needs
(ARM926EJ-S or Cortex A5), so we did not consider them.
And with the exception of the mostly similar Allwinner S3 CPU which And with the exception of the mostly similar Allwinner S3 CPU which
features the same characteristics but with 128MB DDR3 DRAM in an features the same characteristics but with 128MB DDR3 DRAM in an
FBGA234 package, the [Allwinner V3s][6] is the CPU with integrated DRAM FBGA234 package, the [Allwinner
having the highest memory capacity (512Mbit / 64MB DDR2 DRAM): V3s:fontawesome-solid-external-link-alt:][6] is the CPU with
integrated DRAM having the highest memory capacity (512Mbit / 64MB
DDR2 DRAM):
![Allwinner V3s SoC](/assets/images/Allwinner_V3s.jpeg) ![Allwinner V3s SoC](/assets/images/Allwinner_V3s.jpeg)
@ -148,16 +153,19 @@ glitches.
The SD Card interface is almost a direct connection between the chip The SD Card interface is almost a direct connection between the chip
and the dedicated SD Card connector. Only a single series resistor and the dedicated SD Card connector. Only a single series resistor
**R8** is required on the high-speed clock line in order to [prevent **R8** is required on the high-speed clock line in order to [prevent
ringing][7]. ringing:fontawesome-solid-external-link-alt:][7].
## Crystals ## Crystals
The V3s chips requires 2 crystals: The V3s chips requires 2 crystals:
- one low-frequency [32.768 kHz crystal][8] **Y1** for the RTC clock - one low-frequency [32.768 kHz
crystal:fontawesome-solid-external-link-alt:][8] **Y1** for the RTC
clock
- one high-frequency [24 MHz crystal][9] **Y2** for deriving the 1.2 - one high-frequency [24 MHz
GHz clock crystal:fontawesome-solid-external-link-alt:][9] **Y2** for deriving
the 1.2 GHz clock
The 24 MHz crystal is used by an internal oscillator to lock the phase The 24 MHz crystal is used by an internal oscillator to lock the phase
of the 1.2 GHz oscillator using a PLL (Phase-Locked Loop). of the 1.2 GHz oscillator using a PLL (Phase-Locked Loop).
@ -175,19 +183,21 @@ The 32.768 kHz crystal features an additional high-value resistor
thus reduce further the RTC timer power consumption. thus reduce further the RTC timer power consumption.
For more details on crystal oscillator design, please check [this For more details on crystal oscillator design, please check [this
application note from STM][10]. application note from STM:fontawesome-solid-external-link-alt:][10].
## DRAM ## DRAM
The DRAM within the V3s chip is a [DDR2 one][11], meaning that its The DRAM within the V3s chip is a [DDR2
data lines are clocked using both edges of an up to 400 MHz clock one:fontawesome-solid-external-link-alt:][11], meaning that its data
signal. lines are clocked using both edges of an up to 400 MHz clock signal.
At these high frequencies, even short wires have a length that is of At these high frequencies, even short wires have a length that is of
the same order of magnitude as the signal's [wavelength][12] and thus the same order of magnitude as the signal's
each signal should be considered as a [transmission line][13], for [wavelength:fontawesome-solid-external-link-alt:][12] and thus each
which impedance must be matched to avoid signal reflections, requiring signal should be considered as a [transmission
termination resistors on the data lines DQx. line:fontawesome-solid-external-link-alt:][13], for which impedance
must be matched to avoid signal reflections, requiring termination
resistors on the data lines DQx.
DDR2 or DDR3 DRAMs feature merged drivers and dynamic on-chip DDR2 or DDR3 DRAMs feature merged drivers and dynamic on-chip
termination like this ("VDDQ/2" is labeled "SVREF" in our schematic): termination like this ("VDDQ/2" is labeled "SVREF" in our schematic):
@ -201,7 +211,8 @@ resistor **R11** connected internally like this:
![Pull-Up Calibration](/assets/images/Pull-Up_Calibration.png){.lightbox} ![Pull-Up Calibration](/assets/images/Pull-Up_Calibration.png){.lightbox}
More information on the DDR2 DRAM ZQ Calibration subject can be found More information on the DDR2 DRAM ZQ Calibration subject can be found
in this [Micron Application Note][14]. in this [Micron Application
Note:fontawesome-solid-external-link-alt:][14].
[1]: /developers/hardware/design/#design-constraints [1]: /developers/hardware/design/#design-constraints
[2]: https://www.electronicsweekly.com/news/products/memory/how-to-guide-for-on-chip-memory-2012-06/ [2]: https://www.electronicsweekly.com/news/products/memory/how-to-guide-for-on-chip-memory-2012-06/

View File

@ -23,7 +23,7 @@ something quite usual for a keychain...
We found only a unique plastic-molded model which almost meets our We found only a unique plastic-molded model which almost meets our
low-profile requirements of 1.5 mm (1.6 mm height!): the [Standex low-profile requirements of 1.5 mm (1.6 mm height!): the [Standex
Meder MK24][1]. Meder MK24:fontawesome-solid-external-link-alt:][1].
Here is the corresponding schematics, already covered in the PMIC Here is the corresponding schematics, already covered in the PMIC
discussion: discussion:

View File

@ -18,11 +18,12 @@ output voltage.
### Shunt Regulator ### Shunt Regulator
The simplest voltage regulator is the [shunt regulator][1], built The simplest voltage regulator is the [shunt
around a Zener diode which most interesting characteristic is to regulator:fontawesome-solid-external-link-alt:][1], built around a
maintain a constant voltage across itself when the current through it Zener diode which most interesting characteristic is to maintain a
is sufficient to take it into the Zener breakdown region. A simple constant voltage across itself when the current through it is
shunt regulator looks like this: sufficient to take it into the Zener breakdown region. A simple shunt
regulator looks like this:
![Zener Regulator](/assets/images/Zener_Regulator.gif) ![Zener Regulator](/assets/images/Zener_Regulator.gif)
@ -32,7 +33,8 @@ By adding a emitter-follower transistor to the simple shunt regulator,
the small base current of the transistor forms a very light load on the small base current of the transistor forms a very light load on
the Zener, thereby minimizing variation in Zener voltage due to the Zener, thereby minimizing variation in Zener voltage due to
variation in the load, resulting in a better regulation. Here is a variation in the load, resulting in a better regulation. Here is a
schematic for this [series regulator][2]: schematic for this [series
regulator:fontawesome-solid-external-link-alt:][2]:
![Series Regualtor](/assets/images/Series_Regulator.gif) ![Series Regualtor](/assets/images/Series_Regulator.gif)
@ -120,14 +122,14 @@ following:
![Buck Converter](/assets/images/Buck_Converter.gif) ![Buck Converter](/assets/images/Buck_Converter.gif)
The way this converter works is described in details The way this converter works is described in details
[here][3]. Basically, when the switch is closed, the inductor will [here:fontawesome-solid-external-link-alt:][3]. Basically, when the
produce an opposing voltage across its terminals in response to the switch is closed, the inductor will produce an opposing voltage across
changing current, reducing the output voltage, and meanwhile the its terminals in response to the changing current, reducing the output
inductor stores this energy in the form of a magnetic field. When the voltage, and meanwhile the inductor stores this energy in the form of
switch is opened, the current will decrease and will produce a voltage a magnetic field. When the switch is opened, the current will decrease
drop across the inductor, and now the inductor becomes a current and will produce a voltage drop across the inductor, and now the
source, where the stored energy in the inductor's magnetic field is inductor becomes a current source, where the stored energy in the
restored and fed to the load. inductor's magnetic field is restored and fed to the load.
!!! warning !!! warning
In this converter too, the output voltage is not isolated from the In this converter too, the output voltage is not isolated from the

View File

@ -102,7 +102,8 @@ capacitors:
One exception is the Allwinner V3s CPU HPR/HPL circuit which features One exception is the Allwinner V3s CPU HPR/HPL circuit which features
an RC-to-ground circuit between the amplifier and the preamplifier an RC-to-ground circuit between the amplifier and the preamplifier
input with the resistor **R27** and capacitors **C79** and **C81**, as input with the resistor **R27** and capacitors **C79** and **C81**, as
recommended in the [V3s hardware design guide][5]. recommended in the [V3s hardware design
guide:fontawesome-solid-external-link-alt:][5].
The only other remarkable point left in this schematic is the resistor The only other remarkable point left in this schematic is the resistor
divider **R25**/**R28** which provides a reference voltage at half the divider **R25**/**R28** which provides a reference voltage at half the

View File

@ -1,5 +1,5 @@
A separate [Sylergy SY8088][1] Buck DC/DC SMPS chip is used to provide A separate [Sylergy SY8088:fontawesome-solid-external-link-alt:][1]
the DDR2 +1V8 DDR2 DRAM power. Buck DC/DC SMPS chip is used to provide the DDR2 +1V8 DDR2 DRAM power.
This is because the AXP20x is originally the PMU (Power Management This is because the AXP20x is originally the PMU (Power Management
Unit) used by most Allwinner SoCs (A10, A13 and A20), which do not Unit) used by most Allwinner SoCs (A10, A13 and A20), which do not
@ -15,7 +15,7 @@ We thus have to design a separate SMPS (DC-DC) power supply for
providing the +1.8V 1A required for the DDR2 DRAM power supply. providing the +1.8V 1A required for the DDR2 DRAM power supply.
For this purpose, we followed closely the [Allwinner Reference For this purpose, we followed closely the [Allwinner Reference
Design][2]. Design:fontawesome-solid-external-link-alt:][2].
Here is the corresponding DRAM Power schematics: Here is the corresponding DRAM Power schematics:
@ -40,9 +40,6 @@ to its lowest possible value.
[1]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C79313_SY8088AAC_2017-03-29.PDF [1]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C79313_SY8088AAC_2017-03-29.PDF
[2]: https://github.com/Squonk42/V3s_Documentation/blob/master/V3S_CDR_STD_V1_0_20150514.pdf [2]: https://github.com/Squonk42/V3s_Documentation/blob/master/V3S_CDR_STD_V1_0_20150514.pdf
[3]: https://datasheet.lcsc.com/szlcsc/Silergy-Corp-SY8088AAC_C79313.pdf
[4]: https://datasheet.lcsc.com/szlcsc/1901241230_LOWPOWER-LP3220S-AB5F_C324565.pdf
[5]: https://www.diodes.com/assets/Datasheets/AP3418.pdf
--8<-- --8<--
includes/glossary.md includes/glossary.md

View File

@ -7,14 +7,16 @@ requirements to:
- SMPS for +1.8V / 1A for the DDR2 DRAM power supply - SMPS for +1.8V / 1A for the DDR2 DRAM power supply
- SMPS for +1.25V / 1.6 A for the core power supply - SMPS for +1.25V / 1.6 A for the core power supply
On the [LicheePi Zero board][1] used in our **[FunKey Zero][2]** On the [LicheePi Zero board:fontawesome-solid-external-link-alt:][1]
prototype, a triple SMPS [EA3036][3] is used for generating these used in our **[FunKey Zero:fontawesome-solid-external-link-alt:][2]**
+3.3V, +1.8V and +1.2V voltages, with an additional [XC6206][4] LDO prototype, a triple SMPS
for the +3.0V (the +3.3V Always On is connected directly to [EA3036:fontawesome-solid-external-link-alt:][3] is used for
+3.3V). Although compact (the EA3036 is a tiny 3 mm x 3 mm QFN20 generating these +3.3V, +1.8V and +1.2V voltages, with an additional
package), this solution is not ideal as it does not provide a battery [XC6206:fontawesome-solid-external-link-alt:][4] LDO for the +3.0V
charger and monitoring capability, which is a requirement for the (the +3.3V Always On is connected directly to +3.3V). Although compact
**FunKey S** device. (the EA3036 is a tiny 3 mm x 3 mm QFN20 package), this solution is not
ideal as it does not provide a battery charger and monitoring
capability, which is a requirement for the **FunKey S** device.
## PMICs ## PMICs
@ -22,7 +24,8 @@ As it is generally the case with such a complex SoC requiring multiple
voltages, high current and proper voltage sequencing, all major voltages, high current and proper voltage sequencing, all major
manufacturers provide dedicated companion chips called PMICs (Power manufacturers provide dedicated companion chips called PMICs (Power
Management Integrated Circuits), in charge of these tasks. Allwinner Management Integrated Circuits), in charge of these tasks. Allwinner
is not an exception through its sister company [X-Powers][5]. is not an exception through its sister company
[X-Powers:fontawesome-solid-external-link-alt:][5].
Their AXP20x products are highly-integrated PMICs that are optimized Their AXP20x products are highly-integrated PMICs that are optimized
for applications requiring single-cell Li-battery (Li-Ion/Polymer), for applications requiring single-cell Li-battery (Li-Ion/Polymer),
@ -71,7 +74,9 @@ The AXP20x features:
output to GPIO0) output to GPIO0)
Looking at their datasheets, it is difficult to tell the difference Looking at their datasheets, it is difficult to tell the difference
between the [AXP202][6], [AXP203][7] and [AXP209][8] (any hint between the [AXP202:fontawesome-solid-external-link-alt:][6],
[AXP203:fontawesome-solid-external-link-alt:][7] and
[AXP209:fontawesome-solid-external-link-alt:][8] (any hint
welcome!). In the **FunKey S** design, we use an AXP209 because it is welcome!). In the **FunKey S** design, we use an AXP209 because it is
the one that comes along with the V3s when you buy it on AliExpress. the one that comes along with the V3s when you buy it on AliExpress.
@ -83,7 +88,8 @@ the manufacturer, as the internals of the chips are seldom fully
disclosed, so you need to take their word on some of the external disclosed, so you need to take their word on some of the external
component values to use. component values to use.
The [Allwinner V3s Reference Design][9] contains on page 6 the The [Allwinner V3s Reference
Design:fontawesome-solid-external-link-alt:][9] contains on page 6 the
schematics for using an AXP203 to supply the power to a V3s-based schematics for using an AXP203 to supply the power to a V3s-based
dashboard camera design. It follows closely the application diagram dashboard camera design. It follows closely the application diagram
provided in the AXP20x datasheets: provided in the AXP20x datasheets:
@ -91,7 +97,7 @@ provided in the AXP20x datasheets:
![AXP20x Application Diagram](/assets/images/AXP20x_Application_Diagram.png){.lightbox} ![AXP20x Application Diagram](/assets/images/AXP20x_Application_Diagram.png){.lightbox}
More hints are provided in our self-translated [V3s Hardware Design More hints are provided in our self-translated [V3s Hardware Design
Guide][10] (page 7) too. Guide:fontawesome-solid-external-link-alt:][10] (page 7) too.
## PMIC Schematics ## PMIC Schematics
@ -167,10 +173,11 @@ operation:
### DC-DC1 PWM Battery Charger (North East side) ### DC-DC1 PWM Battery Charger (North East side)
The battery is connected to J5 (a [2-pin JST 1.0 mm pitch The battery is connected to J5 (a [2-pin JST 1.0 mm pitch
receptacle][11]) and uses **R21** as a precision current sense receptacle:fontawesome-solid-external-link-alt:][11]) and uses **R21**
resistor, with **C53**/**C56**/**C60** filter capacitors and **L5** (a as a precision current sense resistor, with **C53**/**C56**/**C60**
low-profile ferrite-core power inductor rated with a saturation filter capacitors and **L5** (a low-profile ferrite-core power
current of 1.2A and low < 0.1 resistance). inductor rated with a saturation current of 1.2A and low < 0.1
resistance).
!!! Warning !!! Warning
The battery is not protected on the board against reversing The battery is not protected on the board against reversing
@ -181,10 +188,11 @@ current of 1.2A and low < 0.1 Ω resistance).
temperature, as the chosen LiPo battery does not feature this temperature, as the chosen LiPo battery does not feature this
temperature sensor. temperature sensor.
A user-programmable (through the I2C interface) charge [LED][12] A user-programmable (through the I2C interface) charge
**D30** is provided, with its current-limiting resistor **R26**, as [LED:fontawesome-solid-external-link-alt:][12] **D30** is provided,
well as a TVS diode **d31** to prevent ESD, as the LED body will be with its current-limiting resistor **R26**, as well as a TVS diode
indirectly accessible to user. **d31** to prevent ESD, as the LED body will be indirectly accessible
to user.
### DC-DC2 +1.25V / 1.6A (West side) ### DC-DC2 +1.25V / 1.6A (West side)

View File

@ -2,7 +2,7 @@ Looking back at the section on the [CPU schematics][1], the **FunKey
S** device clearly needs a sophisticated power supply in order to S** device clearly needs a sophisticated power supply in order to
fulfill the CPU power requirements. They are recalled below, along fulfill the CPU power requirements. They are recalled below, along
with the maximum current requirements found in the [Allwinner V3s with the maximum current requirements found in the [Allwinner V3s
reference design][2] (page 3): reference design:fontawesome-solid-external-link-alt:][2] (page 3):
- +3.3V / 1.2A for the I/O power supply - +3.3V / 1.2A for the I/O power supply
- +3.3V_AO / 30 mA for the Always-On power supply (RTC timer) - +3.3V_AO / 30 mA for the Always-On power supply (RTC timer)

View File

@ -52,8 +52,9 @@ RGB565 (2 bytes / pixel), this requires a ~44 MHz SPI clock rate,
which is rather high. which is rather high.
Once again, we were fortunate as both the V3s CPU and the screen Once again, we were fortunate as both the V3s CPU and the screen
built-in controller (a Sitronix [ST7789V][1]) both support this high built-in controller (a Sitronix
clock speed (after checking with the manufacturer and despite the [ST7789V:fontawesome-solid-external-link-alt:][1]) both support this
high clock speed (after checking with the manufacturer and despite the
controller datasheet that specifies only a serial clock cycle (Write) controller datasheet that specifies only a serial clock cycle (Write)
of 66 ns or 15 MHz!). of 66 ns or 15 MHz!).
@ -65,18 +66,19 @@ current directly from a CPU GPIO and the backlight will require an
additional transistor to interface to the LCD backlight. additional transistor to interface to the LCD backlight.
Its flex cable requires a mating Hirose 0.4 mm pitch Its flex cable requires a mating Hirose 0.4 mm pitch
[DF37NB-24DS-0.4V][2] dual row SMT connector, out of which only one [DF37NB-24DS-0.4V:fontawesome-solid-external-link-alt:][2] dual row
single row is actually used. SMT connector, out of which only one single row is actually used.
## Customization ## Customization
Unfortunately, the flex cable for the stock LCD screen we found does Unfortunately, the flex cable for the stock LCD screen we found does
not match our particular **FunKey S** mechanical design. not match our particular **FunKey S** mechanical design.
For the prototypes, we designed custom flex extension cables for a For the prototypes, we designed custom flex extension cables for a ~
~ $100 cost, but we had to design [our own custom flex][3] and have $100 cost, but we had to design [our own custom
this standard screen assembly attached to it for mass production, with flex:fontawesome-solid-external-link-alt:][3] and have this standard
a one-time tooling fee of ~ $800. screen assembly attached to it for mass production, with a one-time
tooling fee of ~ $800.
## Schematic ## Schematic

View File

@ -14,16 +14,19 @@ the specifications.
## Specifications ## Specifications
The SD Card physical interface is provided in the "<i>SD specifications, The SD Card physical interface is provided in the "<i>SD
part 1, Physical Layer Specification version 2.00, May 9, 2006</i>", for specifications, part 1, Physical Layer Specification version 2.00, May
which a simplified version is available [here][1]. 9, 2006</i>", for which a simplified version is available
[here:fontawesome-solid-external-link-alt:][1].
The MMC phyiscal interface can be found in the "<i>Multi Media Card The MMC phyiscal interface can be found in the "<i>Multi Media Card
System Specification version 4.3, JESD84-A43, November 2007</i>", System Specification version 4.3, JESD84-A43, November 2007</i>",
available [here][2] (registration required). available [here:fontawesome-solid-external-link-alt:][2] (registration
required).
But a good summary of the requirements is given in the "[<i>AN10911 But a good summary of the requirements is given in the "[<i>AN10911
SD(HC)-memory card and MMC Interface conditioning</i>][3]" application SD(HC)-memory card and MMC Interface
conditioning</i>:fontawesome-solid-external-link-alt:][3]" application
note from NXP, from which this schematic is taken: note from NXP, from which this schematic is taken:
![SD MMC Interface](/assets/images/SD_MMC_Interface.png){.lightbox} ![SD MMC Interface](/assets/images/SD_MMC_Interface.png){.lightbox}
@ -85,9 +88,9 @@ The FunKey SD Card interface schematic is the following:
![TF-110](/assets/images/TF-110.png){: align=left } ![TF-110](/assets/images/TF-110.png){: align=left }
As can be expected, the main component is the [Micro SD (TF Card) As can be expected, the main component is the [Micro SD (TF Card)
Push/Pull connector][5] **J4**, which has been selected for its Push/Pull connector:fontawesome-solid-external-link-alt:][5] **J4**,
low-profile (1.3 mm height) characteristic and overall minimal which has been selected for its low-profile (1.3 mm height)
dimensions. characteristic and overall minimal dimensions.
!!! Tip !!! Tip

View File

@ -14,11 +14,12 @@ the cable wiring which role we must take.
![U02-BFD3111B0-009](/assets/images/U02-BFD3111B0-009.png){: align=left } ![U02-BFD3111B0-009](/assets/images/U02-BFD3111B0-009.png){: align=left }
The main part is of course the [Micro USB edge-mounted connector][1] The main part is of course the [Micro USB edge-mounted
**J2**, which we chose in order to "mask out" its already low-profile connector:fontawesome-solid-external-link-alt:][1] **J2**, which we
height into the PCB thickness. And with its "harpoon-like" chose in order to "mask out" its already low-profile height into the
through-hole legs, it should avoid tearing it off the board if the PCB thickness. And with its "harpoon-like" through-hole legs, it
user don't pull the chord straight. should avoid tearing it off the board if the user don't pull the chord
straight.
The USB schematic is the following: The USB schematic is the following:
@ -42,10 +43,12 @@ maximum bulk capacitance value to 10 µF in order to avoid power supply
excessive droops when plugin in a device with a discharged large bulk excessive droops when plugin in a device with a discharged large bulk
capacitor. capacitor.
**D15** is a [NXP PRTR5V0U2X,215][2] combined TVS protection diode for **D15** is a [NXP
the VBUS pin and a set of clamping diodes that will limit the voltage PRTR5V0U2X,215:fontawesome-solid-external-link-alt:][2] combined TVS
on D+ and D- pins to stay between GND and VBUS levels to in order to protection diode for the VBUS pin and a set of clamping diodes that
protect the V3s USB driver from under / over-voltages. will limit the voltage on D+ and D- pins to stay between GND and VBUS
levels to in order to protect the V3s USB driver from under /
over-voltages.
[1]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C40958_MICRO5P%E6%B2%89%E6%9D%BF%E5%BC%8F0.8%E5%9B%9B%E8%84%9A%E5%85%A8%E6%8F%92%E6%97%A0%E5%AF%BC%E4%BD%8D%E6%9C%89%E5%AD%94%E8%80%90%E9%AB%98%E6%B8%A9_2016-05-20.PDF [1]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C40958_MICRO5P%E6%B2%89%E6%9D%BF%E5%BC%8F0.8%E5%9B%9B%E8%84%9A%E5%85%A8%E6%8F%92%E6%97%A0%E5%AF%BC%E4%BD%8D%E6%9C%89%E5%AD%94%E8%80%90%E9%AB%98%E6%B8%A9_2016-05-20.PDF
[2]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C12333_PRTR5V0U2X%2C215_2017-10-31.PDF [2]: https://github.com/FunKey-Project/FunKey-S-Hardware/blob/master/Datasheets/C12333_PRTR5V0U2X%2C215_2017-10-31.PDF

View File

@ -10,17 +10,17 @@ your data.
## Download the latest FunKey-OS image file ## Download the latest FunKey-OS image file
Get the latest "***FunKey-rootfs-x.y.z.img***" SD card image file Get the latest "***FunKey-rootfs-x.y.z.img***" SD card image file
directly from [here][1] or from the bottom of the latest release page directly from [here:fontawesome-solid-external-link-alt:][1] or from
in the "assets" section: the bottom of the latest release page in the "assets" section:
[https://github.com/FunKey-Project/FunKey-OS/releases/latest][2]{target=_blank} [https://github.com/FunKey-Project/FunKey-OS/releases/latest:fontawesome-solid-external-link-alt:][2]{target=_blank}
![Github Release](/assets/images/github_sd_card_image.png){.lightbox} ![Github Release](/assets/images/github_sd_card_image.png){.lightbox}
## Flash the micro-SD card with balenaEtcher ## Flash the micro-SD card with balenaEtcher
- Download and install balenaEtcher for Windows/Mac OS/Linux from - Download and install balenaEtcher for Windows/Mac OS/Linux from
[balena.io][3]{:target="blank"} [balena.io:fontawesome-solid-external-link-alt:][3]{:target="blank"}
- Run balenaEtcher and click on "Flash from file" to select the - Run balenaEtcher and click on "Flash from file" to select the
FunKey-OS image file FunKey-OS image file

View File

@ -4,9 +4,13 @@ Yes legally! Despite the general opinion, it is perfectly possible to
purchase and play famous ROMs legally such as Sonic, Castlevania, purchase and play famous ROMs legally such as Sonic, Castlevania,
Megaman and more, read the note below for more details. Megaman and more, read the note below for more details.
**The FunKey Wiki** maintains [lists][1]{target=_blank} of legal **The FunKey Wiki** maintains
sources for ROMs, including [freeware ROMs][2]{target=_blank}, [lists:fontawesome-solid-external-link-alt:][1]{target=_blank} of
[commercial ROMs][3]{target=_blank}, and [utilities][4]{target=_blank}. legal sources for ROMs, including [freeware
ROMs:fontawesome-solid-external-link-alt:][2]{target=_blank},
[commercial
ROMs:fontawesome-solid-external-link-alt:][3]{target=_blank}, and
[utilities:fontawesome-solid-external-link-alt:][4]{target=_blank}.
!!! note "Note about ROM emulation" !!! note "Note about ROM emulation"

View File

@ -8,9 +8,11 @@ does not require installation to be able to run them.
In the current (2.0.0) release of the FunKey-OS, the **OPK** files In the current (2.0.0) release of the FunKey-OS, the **OPK** files
are only available for the gmenu2x launcher, and not in RetroFE. are only available for the gmenu2x launcher, and not in RetroFE.
[7-Zip][1] can be used to extract **OPK** files, and [Open Package [7-Zip:fontawesome-solid-external-link-alt:][1] can be used to extract
Creator (v1.1.2)][2] is a useful tool if you want to re-package an **OPK** files, and [Open Package Creator
**OPK** or customize icons, add additional games and much more. (v1.1.2):fontawesome-solid-external-link-alt:][2] is a useful tool if
you want to re-package an **OPK** or customize icons, add additional
games and much more.
Connect your **FunKey S** console to your computer and add **OPK** Connect your **FunKey S** console to your computer and add **OPK**
files as simply as you would do it with a simple USB memory stick: files as simply as you would do it with a simple USB memory stick:

View File

@ -1,8 +1,9 @@
# Palette description # Palette description
The default **FunKey S** Game Boy emulator: _[gnuboy][1]_ allows to The default **FunKey S** Game Boy emulator:
set the palette used for grayscale when running DMG (original mono _[gnuboy:fontawesome-solid-external-link-alt:][1]_ allows to set the
Gameboy) ROMs. palette used for grayscale when running DMG (original mono Gameboy)
ROMs.
There are four variables for this purpose, allowing the background, There are four variables for this purpose, allowing the background,
window, and both sprite palettes to be colored differently. Each one window, and both sprite palettes to be colored differently. Each one

View File

@ -2,10 +2,10 @@ A firmware upgrade can be performed simply over USB without opening
the **FunKey S** console. the **FunKey S** console.
Get the latest "**_FunKey-rootfs-x.y.z.fwu_**" firmware update file Get the latest "**_FunKey-rootfs-x.y.z.fwu_**" firmware update file
directly from [here][1] or from the bottom of the latest release page directly from [here:fontawesome-solid-external-link-alt:][1] or from
in the "assets" section: the bottom of the latest release page in the "assets" section:
https://github.com/FunKey-Project/FunKey-OS/releases/latest [https://github.com/FunKey-Project/FunKey-OS/releases/latest:fontawesome-solid-external-link-alt:][2]{target=_blank}
![Github Release](/assets/images/Github_Release.png){.lightbox} ![Github Release](/assets/images/Github_Release.png){.lightbox}
@ -23,6 +23,7 @@ https://github.com/FunKey-Project/FunKey-OS/releases/latest
| ![Updating](/assets/images/Updating.png){.lightbox} | The **FunKey S** will then reboot and perform the upgrade | | ![Updating](/assets/images/Updating.png){.lightbox} | The **FunKey S** will then reboot and perform the upgrade |
[1]: https://github.com/FunKey-Project/FunKey-OS/releases/download/FunKey-OS-2.0.0/FunKey-rootfs-2.0.0.fwu [1]: https://github.com/FunKey-Project/FunKey-OS/releases/download/FunKey-OS-2.0.0/FunKey-rootfs-2.0.0.fwu
[2]: https://github.com/FunKey-Project/FunKey-OS/releases/latest
--8<-- --8<--
includes/glossary.md includes/glossary.md

View File

@ -83,6 +83,7 @@ markdown_extensions:
- abbr - abbr
- attr_list - attr_list
- def_list - def_list
- fontawesome_markdown
- footnotes - footnotes
- meta - meta
- toc: - toc: