FreeCalypso > hg > freecalypso-schem2
view venus/src/top/board.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 | 4baae6215619 |
children | 541b55e6bf47 |
line wrap: on
line source
/* * This structural Verilog module is the top level for FC Venus board. * It interconnects the two principal domains: mobile and USB. */ module board (); wire GND, VBUS, VCHG; wire Host_TxD, Host_RxD, Host_RTS, Host_CTS; wire Host_DTR, Host_DCD, Host_RI, Host_TxD2, Host_RxD2; wire RPWON, nTESTRESET; /* mobile and USB domains */ mobile mob (.GND(GND), .VCHG(VCHG), .Host_TxD(Host_TxD), .Host_RxD(Host_RxD), .Host_RTS(Host_RTS), .Host_CTS(Host_CTS), .Host_DTR(Host_DTR), .Host_DCD(Host_DCD), .Host_RI(Host_RI), .Host_TxD2(Host_TxD2), .Host_RxD2(Host_RxD2), .RPWON(RPWON), .nTESTRESET(nTESTRESET) ); usb_domain usb (.GND(GND), .VBUS(VBUS), .Host_TxD(Host_TxD), .Host_RxD(Host_RxD), .Host_RTS(Host_RTS), .Host_CTS(Host_CTS), .Host_DTR(Host_DTR), .Host_DCD(Host_DCD), .Host_RI(Host_RI), .Host_TxD2(Host_TxD2), .Host_RxD2(Host_RxD2), .RPWON(RPWON), .nTESTRESET(nTESTRESET) ); /* charging control switch */ switch_2pin chg_switch (VBUS, VCHG); /* pull-down resistors before and after the switch */ resistor VBUS_pulldown (VBUS, GND); resistor VCHG_pulldown (VCHG, GND); endmodule