9158 Commits

Author SHA1 Message Date
Richard Blakesley
d131dd29fc jsfsInit(): wait a bit after enabling SD card power (if it was turned off) 2024-08-04 23:41:12 +02:00
Richard Blakesley
6ba4643be4 PIPBOY.py: set LED1 (red element of RGB) to open-drain 2024-08-04 22:47:39 +02:00
Richard Blakesley
d66b9890a7 jshardware.c: Don't turn off SD card power in jshSleep()
Reverts change in commit f03dd96a473cb3268d4c7e5daa5e435094d13f0c
2024-08-04 22:43:57 +02:00
Gordon Williams
62014a477f pipboy logo at boot 2024-08-01 16:54:37 +01:00
Gordon Williams
90831b9d0b Added Pip.blitImage for CRT effect on bitmaps 2024-07-31 16:45:38 +01:00
Gordon Williams
d95081b985 docs 2024-07-31 15:47:41 +01:00
Gordon Williams
8a1b534c58 in .off attempt to turn DAC/LCD off 2024-07-31 15:25:39 +01:00
Gordon Williams
88da70a2fa baud rate to 115200 2024-07-31 15:16:05 +01:00
Gordon Williams
273e2ee5d6 Tweak ST7796 code to make LCD start faster (was taking ~500ms) - this makes resume from sleep much snappier 2024-07-31 15:11:06 +01:00
Gordon Williams
890039435f Add Pip.off() for standby mode 2024-07-31 14:35:43 +01:00
Gordon Williams
c1c29b6521 hardcode delay multiplier to speed up boot 2024-07-31 14:35:32 +01:00
Richard Blakesley
079e686e72 Added more font sizes (28px and 96px) 2024-07-26 23:37:27 +02:00
Gordon Williams
ee0358abc2 fix flickering on video playback 2024-07-26 21:22:02 +01:00
Gordon Williams
f3ccf1fee5 add ESPR_SDIO_FAST_UNALIGNED - a bit of a nasty hack, but it drastically increases read speed for us, without having to mess around trying to always align the buffer reads 2024-07-26 20:49:25 +01:00
Richard Blakesley
2132b49a12 graphics.c: moved the splash screen text inwards a bit 2024-07-25 23:52:17 +01:00
Richard Blakesley
236b13a777 Stretched Monofonto fonts vertically to match the TV prop better
Also replaced Monofonto145 with Monofonto120 (which has 120px cap height with a tight bounding box)
2024-07-25 23:51:51 +01:00
Richard Blakesley
f48482e5c7 PIPBOY.py - disable the CRT scanline effect for now 2024-07-25 09:54:53 +01:00
Richard Blakesley
2d66fe129d PIPBOY.py - added BAT pins 2024-07-25 09:46:46 +01:00
Richard Blakesley
e5b9563a52 lcd_fsmc.c - fixed LCD_RAM for wrong RS pin 2024-07-25 09:46:32 +01:00
Richard Blakesley
e17fbe3c62 Add PIPBOY.py board file 2024-07-24 11:21:25 +02:00
Richard Blakesley
efd11ab627 lcd_fsmc.c: add ST7796 support
...but not sure if it's working properly yet.
2024-07-24 11:21:08 +02:00
Richard Blakesley
4385e9f684 jswrap_pipboy.c: added example JS code for RDA5807 FM radio IC at bottom of file 2024-07-24 01:37:12 +02:00
Richard Blakesley
f03dd96a47 Add optional power supply enable pin for SD card 2024-07-23 14:41:57 +02:00
Richard Blakesley
290627739e STM32.make: wait for any keypress (instead of password) before proceeding with st-flash
(Was this the only reason for the sudo...?)
2024-07-23 14:17:32 +02:00
Richard Blakesley
fbe8220825 Add stm32f405_af.csv 2024-07-23 14:15:57 +02:00
Richard Blakesley
5ad0e9bf05 jswrap_pipboy.c (ES8388 audio codec): add LIN2+RIN2 analogue input to the output mix 2024-07-23 14:13:53 +02:00
Richard Blakesley
0f40bf9505 jswrap_pipboy.c: add #ifdef USE_AUDIO_CODEC, which can be un-defined if the ES8388 audio codec isn't present
...e.g. on a vanilla STM32F4VE + TFT dev kit
2024-07-19 19:22:55 +02:00
Richard Blakesley
dd3476e309 lcd_fsmc.c: Use LCD RS and CS pin locations from board file instead of hard-coded
Also translated some comments into English
2024-07-18 14:50:56 +01:00
Richard Blakesley
a8cb0b1caa jswrap_graphics.c: remove "fallback" debugging output text 2024-07-17 12:06:49 +01:00
Richard Blakesley
fc1469d173 Added lcdFSMC_blit2Bit() for fast blitting of 2-bpp images 2024-07-16 20:25:43 +01:00
Richard Blakesley
18edd89bdb Initial hacky attempt at creating a CRT scanline effect (enabled when LCD_CRT_EFFECT is defined) 2024-07-16 19:07:01 +01:00
Richard Blakesley
424739e4d7 Added Monofonto font (in 18, 23 and 145 px sizes) 2024-07-16 18:04:25 +01:00
Gordon Williams
0e4dba0cf3 fix buttons and put LCD into lower power sleep 2024-07-12 15:08:59 +01:00
Gordon Williams
f75239ef97 add Pip.setLCDPower 2024-07-12 12:01:16 +01:00
Gordon Williams
a418c0fde4 add Pip.setVol/setDACMode
squish some warnings
2024-07-11 16:57:58 +01:00
Gordon Williams
c1b3328e42 WAV file playback
renamed events to streamStarted/streamStopped/etc
when AVI/WAV ends, keep playing remaining audio
2024-07-11 16:29:41 +01:00
Gordon Williams
c3852f051d audio buffer fill tweaks to ensure everything is filled correctly at startup 2024-07-11 15:07:34 +01:00
Gordon Williams
fc40a959ba refactor video->stream to make it more obvious 2024-07-11 14:44:07 +01:00
Gordon Williams
dbe69d0d1f refactoring I2S code - now we play from a ringbuffer and convert mono->stereo on demand via IRQ 2024-07-11 14:41:54 +01:00
Richard Blakesley
566c0536f6 jswrap_pipboy.c: Duplicate mono audio data into L/R stereo channels
...and added `#define NUM_AUDIO_BUFFERS 4` rather than having four separate named buffers.

The stereo duplication fixes the 8kHz whine (when playing a test triangle wave) but there's some glitching when the "play" and "save" buffers coincide, especially with AVI files which have smaller audio buffer sizes.
2024-07-09 01:19:03 +02:00
Richard Blakesley
434f3f820e Pip.videoStart(): don't start playing from the same audio buffer that we're saving to; clear audio buffers when starting playback
The ES8388 codec output still has an 8KHz whine, though.
2024-07-08 17:13:43 +02:00
Gordon Williams
285bc17ebc fix 16kHz audio issue 2024-07-05 15:38:24 +01:00
Gordon Williams
0200f8be11 I2S output working in conjunction with I2C config (bottom of pipboy.c file) 2024-07-05 15:15:54 +01:00
Gordon Williams
0c3122012e Added avi audio decoding and DMA out of I2S (sends *something* out of the pins) 2024-07-05 15:15:54 +01:00
Richard Blakesley
a4fbee8a62 lcdFillRect_FSMC: fixed bug that was causing g.drawRect() to fail on display with landscape orientation
...but there's probably a better/cleaner way to handle the define
2024-07-04 15:25:47 +01:00
Richard Blakesley
b45aa8c6c0 Pip.videoStart: change x0,y0 options to just x,y 2024-07-04 14:54:48 +01:00
Richard Blakesley
51fd4146a7 STM32.make: use CHIP and BASEADDRESS variables when flashing with J-Link 2024-07-04 11:42:09 +01:00
Richard Blakesley
3f3247e861 Pip.videoStart: added x0 and y0 to "options" object, to allow positioning of smaller videos 2024-07-04 11:29:07 +01:00
Richard Blakesley
aad647c404 STM32.make - try flashing with J-Link if ST-Link is not available 2024-07-04 00:20:41 +01:00
Richard Blakesley
0a8e5e1ef2 Add "debug" option to Pip.videoStart() 2024-07-03 16:22:25 +01:00