FreeCalypso > hg > freecalypso-schem2
view venus/src/periph/sim_socket_block.v @ 70:8bc2aa52fd23
manual RESET button new part: 260 g force, shorter actuator
One of the main envisioned use cases for FC Venus is field demonstration:
the board will be carried around, mounted on a sheet of acrylic or somesuch,
it will have a battery and an antenna connected, there will be a test SIM
with active service inserted, and the setup will be ready to demonstrate
as a working phone at a moment's notice. But when a demo is not actively
in progress, the fully assembled setup will be transported around in a big
and loose ESD bag, and it will need to be equivalent to a traditional phone
in its switched-off state: battery present, RTC keeping time, but not
switched on all the time.
Having a RESET button of the same keyswitch type as used for the regular
keypad and PWON would cause a problem for such field transport scenarios:
any spurious press of this button would cause a "misc boot" switch-on.
Short spurious presses of PWON are filtered out by the firmware (automatic
power-off if the button isn't held down long enough), but the same cannot
be done for super-low-level nTESTRESET. However, a button with significantly
greater operating force and a shorter actuator (not sticking out to the same
height as the regular keypad buttons) should be much safer.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 02 Dec 2021 22:40:39 +0000 |
parents | d33cb696b335 |
children |
line wrap: on
line source
/* * This module encapsulates the complete SIM socket block: * the actual socket, the bypass cap and our SIM_CD circuit. */ module sim_socket_block (GND, Vio, VSIM, SIM_CLK, SIM_RST, SIM_IO, SIM_CD); input GND, Vio, VSIM; input SIM_CLK, SIM_RST; inout SIM_IO; output SIM_CD; wire SIM_CD_inverted; sim_socket_wrap socket (.C1(VSIM), .C2(SIM_RST), .C3(SIM_CLK), .C5(GND), .C6(VSIM), .C7(SIM_IO), .SW1(GND), .SW2(SIM_CD_inverted) ); /* cap per Leonardo schematics */ capacitor C306 (VSIM, GND); /* pull-up on the switch line */ resistor switch_pullup (SIM_CD_inverted, Vio); /* inverting buffer for SIM_CD */ inv_buffer_74LVC1G04 inv (.GND(GND), .Vcc(Vio), .A(SIM_CD_inverted), .Y(SIM_CD) ); /* bypass cap for the inverting buffer IC */ capacitor inv_bypass (Vio, GND); endmodule