This information helps very much in getting a picture for what you need and how you wish for it to work.
Overall: The project is not impossible; I do think it is sound.
As you write above, the SPI-TFT-display needs a level converter and since you know the component number, I’d expect that you know how to make the circuit too. 😉
The 18650 batteries might be a good choice, because they’re fairly capable and you can get them fairly easily too.
Let’s see the battery specs:
The battery is 3.6V, which means without a buck or boost converter, you’d need two in series to attain a voltage above 5.2V.
You could give it 3 batteries in series, then you’d reach 10.8V.
As each battery is approximately 3000mAh (some says 3150 mAh, some says 3400mAh and these numbers are usually for new batteries, so I’d expect them to lower over time, as we don’t have many ‘ideal’ batteries in this world).
Let’s imagine your board consumes 2A and it’s running on those 10.8V, then 3 batteries in series would at a glance last one hour.
Unfortunately, it’s not always like that in the real world, because at some point, the total voltage of the batteries will drop below 5.2V, and then it won’t drive the EspressoBIN from that point on.
Adding a buck converter might not be a good idea, because the EspressoBIN is filled with buck converters (and buck after buck may cause trouble unless done correctly).
If you want to squeeze the most out of each battery, you could use a boost converter (low voltage -> high voltage).
Some boost converters are *very* efficient. I’ve seen a boost converter operate on down to 1V.
Such efficient boost converters are usually running on very low input voltage, so you’d need to connect all your 18650 batteries in parallel if connecting to a boost converter – otherwise the boost converter would break due to overvoltage.
So here’s what I suggest:
Get some batteries and a few dummy-load power resistors, a buck converter and a boost converter.
Let’s assume using the boost converter to provide 5.2V. We’re expecting to draw 2A from that supply.
-So the resistance needed is 5.2V / 2A = 2.6 Ohm. That’s a 2.5 Ohm resistor + a 0.1 Ohm resistor (or better yet, two 1 Ohm + one 0.5 Ohm + one 0.1 Ohm; then you have good options for experimenting)
Having set up those, you can measure the time it takes before the voltage drop below 5.2V after the boost converter.
… Now do a similar setup with the buck converter. The buck converter needs a high voltage (I’ve found some that takes a maximum input voltage of 26V). Choose your voltage, connect the resistors and measure how long it takes to drain the batteries.
Remember: The smaller the difference between input voltage and output voltage, the more efficient your converter will be.
As for the buttons, to make a proper circuit, remember 100nF capacitors in parallel with each button, then connect to a – say – 1K resistor to the GPIO pin, because some GPIO pins are already in use by the EspressoBIN during startup; it’s likely a good idea to protect against accidentally shorting an output pin…
The 100nF capacitors are for getting rid of ‘bounces’ / ‘glitches’ at the moment you press / release a button.
As for the SPI, I have no experience programming SPI on Linux, so you’d have to find information on this; likely some Raspberry Pi forums have discussed this endlessly. 😉
An alternative to a display would be LEDs. The advantage is of course that they’re easy to use and consume little power, the disadvantages are that they’re quite unimpressive and boring to look at + the information they provide is limited. – But they could get the job done when you’re only making backups (eg three indicators “ready”, “busy”, “error”).
So now we’ve covered …
* Power supply: Batteries + buck or boost converter
* Buttons for a menu
* SPI-LCD Display (perhaps even a SPI-touch display, but personally I hate that because it never really works).
* LED options
* SATA power consumption and SATA options
* File copying
… I’d put a green light on all of those.
I have no experience with 3D printing, so I can’t comment on that one, but it seems you’ve got that covered already anyway.
The one thing we haven’t fully been able to cover, is whether or not the card reader will “just work” with the EspressoBIN linux.
I can tell you, though, that I have normal size SD/MMC card adapters that show up just like drives, so at least you should be able to get SD/MMC. I have no experience with CF-card adapters.
Kingston is a good quality company. I’d like to recommend you to get an adapter where the pins in the SD/MMC card socket does not bend when you insert a card. I once bought a very expensive SanDisk SD/MMC card adapter in a local store and the pins inside it bent when I inserted the SD-card. No way to recover. From that point on, I bought cheap-o-China $1 adapters, which have lasted many years each – some of them didn’t, though, I’ve thrown away a few, but it certainly still pays. Mine are not USB3.0 though. The point is: Use a magnifying glass and investigate the pin direction before you purchase (if that’s possible).
Technical specification tables can not be displayed on mobile. Please view on desktop